Самый быстрый способ передачи данных из MySQL DB 1 в MySQl DB 2 - PullRequest
1 голос
/ 29 января 2009

У меня есть новая база данных, похожая на старую, но с большим количеством столбцов и таблиц. Таким образом, данные из старой таблицы по-прежнему пригодны для использования и требуют передачи.

Старая база данных находится на сервере, отличном от нового. Я хочу перенести данные из одной базы данных в другую.

У меня есть navicat, но кажется, что хост всегда используется для передачи данных. Также загрузка файла sql с последующим выполнением, которое также занимает слишком много времени (выполняется около 4 операций вставки в секунду).

Загруженный файл SQL составляет около 40 МБ (с полными инструкциями вставки). Последний, вероятно, будет от 60 до 80 МБ.

Как лучше всего передать эти данные? (процесс, который мне нужно будет повторить несколько раз для тестирования)

Ответы [ 4 ]

4 голосов
/ 29 января 2009

Выполнение mysqldump на исходном компьютере и затем добавление его с другой стороны, даже для файла 40-100 МБ, вполне оправдано. Сделайте это из командной строки.

(source machine)
mysqldump -u user -p password database > database.sql

.. передать файл на компьютер получателя ...

(recipient machine)
mysql -u user -p password database < database.sql
0 голосов
/ 04 сентября 2009

Коди, спасибо за руководство. По какой-то причине у меня это не сработало, но ниже на моем redhat linux сервере:

(получатель) mysql -u [имя пользователя] -p -h база данных localhost

(исходная машина) Я просто использовал php myadmin

Есть ли команда, которая может быть запущена для извлечения БД с другого сервера, например: mysqldump -u [имя пользователя] -p -h [адрес хоста] [имя_базы]> [имя файла] .sql Спасибо

0 голосов
/ 29 января 2009

(выполняется около 4 вставок в секунду)

Звучит так, будто с вашей базой данных что-то не так ... Вы уверены, что все в порядке?

0 голосов
/ 29 января 2009

Не можете ли вы сначала передать только часть данных для тестирования? Затем, позже, перенесите все это, когда будете удовлетворены результатами испытаний?

...