Contents

[-]
1 환경
2 SSIS에서 문제 발생
3 해결


1 환경 #

  • MySQL 5.0
  • SQL Server 2005
  • MySQL ODBC 3.51 Driver

2 SSIS에서 문제 발생 #

MySQL에 대해 ODBC연결 설정 후, 다음 그림과 같이 'DataReader원본'을 사용하여 편집시 삽입된 SQL문이 그대로 실행된다. 이것은 SQL에 따라서 성능 문제가 발생할 수 있는 잠재적인 문제점을 지닌다. 만약 해당 SQL문이 풀스캔을 할 경우라면 주의해야 한다.

ssis_mysql01.jpg

SQL Server를 ODBC로 연결하고 'DataReader원본'을 편집해 보았으나 이러한 문제가 발생하지는 않는다. 정리하면 SSIS에서 MySQL을 ODBC를 이용하여 'DataReader원본'을 편집시 다음과 같은 이벤트가 발생하면 삽입된 SQL문을 수행한다.

  • [구성 요소 속성]탭 -> [연결 관리자]탭 클릭
  • [구성 요소 속성]탭 -> [열 맵핑]탭 클릭
  • [구성 요소 속성]탭 -> [입/출력 속성]탭 클릭
  • [확인] 눌러도 문제
  • 'DataReader원본'을 편집하려고 더블클릭해도 문제

다음은 위의 이벤트를 발생시킨 후 MySQL을 모니터링을 한 결과 이다. SQL문이 그대로 수행된다.

ssis_mysql02.jpg

3 해결 #

'DataReader원본'을 편집시 SqlCommand에 SQL문을 삽일 할 때에 다음 그림과 같이 반드시 'limit 1'을 붙여준다. 그런 후 메모장과 같은 텍스트 편집기로 .dtsx파일을 열고, SQL문에서 'limit 1'을 빼주고 배포한다.

ssis_mysql03.jpg
Retrieved from http://test.databaser.net/moniwiki/wiki.php/SSIS의DataReader원본을사용하여MySQL접근(ODBC)시성능문제발생
last modified 2018-04-13 23:12:53