MySQL에서 MSSQL2005로 마이그레이션 작업중입니다. MSSQL2000 같은 경우 DTS를 이용하면 쉽게 MySQL ODBC 드라이버를 이용해 변환이 가능합니다. 하지만 MSSQL2005의 경우 시스템DNS에 MySQL ODBC 드라이버를 설정해도 DTS에서 드라이버가 잡히지 않습니다. 혹시 위와 관련된 부분의 해결책이나 관련 정보가 있으시면 공유 좀 부탁드립니다. - '삽'을 많이 가지고 있는 미숙한 개발자 ^^;-
뭐 기존에도 OLEDB Provider가 나온이후 순수하게 ODBC DSN을 쓰는 경우는 없습니다.
즉 기존의 레거시 API를 직접 호출하지 않는 이상 말이지요.
그래서, 대충 인터널을 보면 ODBC DSN 을 쓴다는 것은 순수한 의미에서 ODBC 를 쓰는 것이 아니라
Microsoft OLE DB Provider for ODBC driver 를 거쳐서 ODBC 를 사용하는 것입니다.
SQL2005로 오면서 이부분이 아예 순수 닷넷 Wrapper까지 확장되었습니다.
저도 직접 사용해보지 않아서 동작여부에 대해서는 확인하지 않았지만
기존의 Microsoft OLE DB Provider for ODBC driver에 대한 대처를
'.Net Framework Data Provider for Odbc'이라는 것으로 대치된듯 합니다.
(충분히 테스트된 ODBC DSN이름을 여기에 적어주기만 하면 됩니다. 성능은 그다지 !#$%^#%&#&)
아마도 가급적 이기종 DB에 대해서 각 벤더에서 개발된 OLE DB Provider를 사용하기를
권장하도록 by Design적인 측면이 있는듯 한데요.
이거 레거시나 이기종 데이타베이스 연동할때 정말 까다롭고 스트레스 받는 일이더군요.
DTS에 비해 SSIS는 너무 엄격해서 모든 사항을 체크하지 않으면 좀처럼 원하는 목적을
이루기가 어렵더군요.
정안되면 MYSQL -> SQL2000 -> SQL2005 이런식의 노가대도 가능하겠지요. ^^;
김호범님 답변 감사드립니다. ^^
Microsoft OLE DB Provider for ODBC를 이용하는 방법도 시도해보긴 했었는데
MSSQL 2000과 같은 기능을 제공받지는 못하는것 같습니다. ㅠㅠ
결국 말씀하신데로
MySQL -> MSSQL 2000 -> MSSQL2005 방법을 쓰거나...
Bulk로.. 작업을 해야할것 같네요.
SSIS가 기존 DTS보다는 기능은 훨씬 더많습니다. 다만 앞에서도 말한것처럼 패키지 성공적으로 돌리는데까지 상당한 시간이 소요됩니다.