Хорошо, для начала, пожалуйста, не комментируйте переход с MySQL на SQL Server 2008 - я пытался сопротивляться этому решению - я знаю, что оно не идеально, но это реальность того, что я пытаюсь сделать. Я разбираюсь в MySQL и новичок в SQL Server 2008, поэтому, если у вас есть какие-либо конструктивные комментарии по какой-либо части процесса, дайте мне знать.
Вот что я сделал:
Размер пакета 200 был выбран произвольно - если он должен быть больше, меньше или у меня должен быть только один оператор GO в конце файла, дайте мне знать.
Общий размер файлов составляет около 1 ГБ.
В идеале я хотел бы иметь возможность выполнить импорт менее чем за час, чтобы веб-сервер, зависящий от базы данных, не отключался слишком долго.
Любые предложения о том, как я могу это ускорить, были бы замечательными!
В Management Studio, графическом интерфейсе для SQL Server, пробовали ли вы щелкнуть правой кнопкой мыши новую базу данных (или создать ее) и выбрать Импорт / Экспорт - Импорт? Это будет использовать часть SQL Server, называемую SSIS, которая является компетентным инструментом ETL (извлечение, преобразование, загрузка).
Вам понадобится установленный драйвер ODBC для mysql, но импорт данных должен быть относительно простым - вы сможете преобразовать данные, если вам это нужно, в процессе.
В качестве альтернативы пробовали ли вы инструмент Microsoft Migration для импорта данных из MySQL в SQL Server? Все поставщики предоставляют эти инструменты, чтобы помочь переключиться с одной БД на другую!
Загрузка данных в SQL Server, вероятно, будет происходить быстрее, если использовать: BULK INSERT http://msdn.microsoft.com/en-us/library/ms188365.aspx или BCP http://msdn.microsoft.com/en-us/library/ms162802.aspx
Файлы форматирования могут быть проблемой в зависимости от того, насколько близко ваши необработанные файлы соответствуют структуре таблицы. Иногда может быть проще BULK INSERT или BCP в промежуточную таблицу, а затем переместить данные в нужные места после их загрузки.