#title SSIS의 DataReader원본을 사용하여 MySQL 접근(ODBC)시 성능 문제 발생 [[TableOfContents]] ==== 환경 ==== * MySQL 5.0 * SQL Server 2005 * MySQL ODBC 3.51 Driver ==== SSIS에서 문제 발생 ==== MySQL에 대해 ODBC연결 설정 후, 다음 그림과 같이 'DataReader원본'을 사용하여 편집시 삽입된 SQL문이 그대로 실행된다. 이것은 SQL에 따라서 성능 문제가 발생할 수 있는 잠재적인 문제점을 지닌다. 만약 해당 SQL문이 풀스캔을 할 경우라면 주의해야 한다. attachment:ssis_mysql01.jpg SQL Server를 ODBC로 연결하고 'DataReader원본'을 편집해 보았으나 이러한 문제가 발생하지는 않는다. 정리하면 SSIS에서 MySQL을 ODBC를 이용하여 'DataReader원본'을 편집시 다음과 같은 이벤트가 발생하면 삽입된 SQL문을 수행한다. * {{{[구성 요소 속성]탭 -> [연결 관리자]탭 클릭}}} * {{{[구성 요소 속성]탭 -> [열 맵핑]탭 클릭}}} * {{{[구성 요소 속성]탭 -> [입/출력 속성]탭 클릭}}} * {{{[확인] 눌러도 문제}}} * {{{'DataReader원본'을 편집하려고 더블클릭해도 문제}}} 다음은 위의 이벤트를 발생시킨 후 MySQL을 모니터링을 한 결과 이다. SQL문이 그대로 수행된다. attachment:ssis_mysql02.jpg ==== 해결 ==== 'DataReader원본'을 편집시 SqlCommand에 SQL문을 삽일 할 때에 다음 그림과 같이 반드시 'limit 1'을 붙여준다. 그런 후 메모장과 같은 텍스트 편집기로 .dtsx파일을 열고, SQL문에서 'limit 1'을 빼주고 배포한다. attachment:ssis_mysql03.jpg