У меня есть файл резервной копии базы данных MySQL (Mysql версии 5.1) и я хочу восстановить его в Sqlserver 2008. Как мне его восстановить?
решение1
Вы не можете автоматически восстановить резервную копию MySQL в SQLServer 2008. Вы можете написать скрипт преобразования, чтобы преобразовать данные, или использовать такой инструмент, как Microsoft DTS (сейчас называемый SQL Server Integration Services).
решение2
Если у вас все еще есть доступ к базе данных MySQL, вы сможете извлечь данные из MySQL в формат, пригодный для использования в MS SQL, с помощью команды mysqldump и--совместимый=mssqlпереключатель командной строки. Хотя иногда вам приходится редактировать файл дампа вручную, если он выдает ошибки при импорте в SQL Server.
Если у вас есть доступ только к файлу резервной копии, та же тактика может сработать, если вы импортируете его в новый экземпляр MySQL, а затем скопируете его в новый файл резервной копии.
решение3
Используйте генератор скриптов SQL в вашей базе данных MYSQL и запустите файл скрипта в вашей базе данных MSSQL. Пока у вас нет перекрывающихся различных типов, все должно быть хорошо.
Для создания скрипта создания базы данных:
- Откройте окно браузера запросов MySQL.
- Откройте новую вкладку «Скрипт» (Ctrl + Shift + T)
- Перетащите нужные таблицы на вкладку скрипта.
- Вы должны увидеть сгенерированный скрипт CREATE TABLE.
Затем вам нужно экспортировать данные в CSV, чтобы вы могли их импортировать.
Кроме того, у Redgate есть ранняя версия SQL Compare для MYSQL, с которой вы можете поэкспериментировать и посмотреть, поможет ли она сгенерировать скрипты между двумя типами (понятия не имею, так как еще не пробовал):