Миграция сервера MySQL от одного поля до другого

Попробуйте разместить теги нижнего колонтитула после основных тегов.

8
задан JasonSmith 29 March 2009 в 17:53
поделиться

8 ответов

Можно просто скопировать целую / папку данных.

Взгляните на MySQL High Performance - передача больших файлов

12
ответ дан 5 December 2019 в 06:10
поделиться

Использование может использовать ssh для прямой передачи по каналу данных по Интернету. Сначала настроенные ключи SSH для входа в систему пароля меньше. Затем, попробуйте что-то вроде этого:

$ mysqldump -u db_user -p some_database | gzip | ssh someuser@newserver 'gzip -d | mysql -u db_user --password=db_pass some_database'

Примечания:

  • Основная идея состоит в том, что Вы просто выводите стандартный вывод прямо в команду с другой стороны, для которой SSH идеально подходит.
  • Если Вам не нужно шифрование затем, можно использовать netcat, но это, вероятно, не стоит того
  • Данные кода на SQL пробегаются через сжатый провод!
  • Очевидно, изменение db_user пользовательскому пользователю и some_database к Вашей базе данных. someuser (Linux) пользователь системы, не пользователь MySQL.
  • Необходимо будет также использовать --password длинный путь, потому что, имея mysql подсказку Вы будете большим количеством головной боли.
6
ответ дан 5 December 2019 в 06:10
поделиться

Вы могли установить ведомую репликацию MySQL и позволить MySQL скопировать данные и затем сделать ведомое устройство новым ведущим устройством

4
ответ дан 5 December 2019 в 06:10
поделиться

400M действительно не большая база данных; передача его к другой машине только займет несколько минут более чем сеть на 100 Мбит. Если Вы не имеете 100M сети между Вашими машинами, Вы находитесь в большой проблеме!

Если они выполняют ту же самую версию MySQL и имеют идентичный (или достаточно подобный) my.cnf, и Вы просто хотите копию всех данных, безопасно скопировать весь каталог данных сервера через (в то время как оба экземпляра останавливаются, очевидно). Необходимо будет удалить каталог данных целевой машины сначала, конечно, но Вы, вероятно, не заботитесь об этом.

Резервное копирование/восстановление обычно замедляется восстановлением, имеющим необходимость восстановить структуру таблицы, а не копию файла. Путем копирования файлов данных непосредственно, Вы избегаете этого (подвергающийся вышеизложенным ограничениям).

2
ответ дан 5 December 2019 в 06:10
поделиться

Если Вы перемещаете сервер:

Файлы дампа могут быть очень большими, таким образом, лучше сжать его прежде, чем отправить или использовать-C флаг scp. Наша методология передачи файлов должна создать полный дамп, в котором сбрасываются возрастающие журналы (использование - master-data=2 - журналы сброса, проверьте, что Вы не смешиваете ведомых хостов, если у Вас есть они). Затем мы копируем дамп и играем его. Впоследствии мы сбрасываем журналы снова (mysqladmin журналы сброса), берем недавний возрастающий журнал (который не должен быть очень большим), и играйте только его. Продолжайте делать его, пока последний возрастающий журнал не является очень маленьким так, чтобы можно было остановить базу данных по исходной машине, скопировать последний возрастающий журнал и затем играть его - должно потребоваться только несколько минут.

Если Вы просто хотите скопировать данные от одного сервера до другого:

mysqldump -C --host=oldhost --user=xxx --database=yyy -p | mysql -C --host=newhost --user=aaa -p

Необходимо будет установить пользователей дб правильно и обеспечить доступ к внешним хостам.

2
ответ дан 5 December 2019 в 06:10
поделиться

попытайтесь импортировать дамп на новом сервере с помощью mysql консоль, не auxiliar программное обеспечение

1
ответ дан 5 December 2019 в 06:10
поделиться

Если Вы только копируете все базы данных сервера, копируете все /data каталог.

Если Вы просто копируете одну или несколько баз данных и добавляете их к существующему mysql серверу:

  1. создайте пустую базу данных в новом сервере, настройте полномочия для пользователей и т.д.
  2. скопируйте папку для базы данных в /data/databasename к новому серверу /data/databasename
0
ответ дан 5 December 2019 в 06:10
поделиться

У меня нет опыта с выполнением этого с mysql, но мне кажется, что узкое место передает фактические данные?

4oo МБ не так очень. Но если дамп-> SCP является медленным, я не думаю, соединяясь с сервером дб от удалить поля, был бы немного быстрее?

Я предложил бы вывести, сжаться, затем копируя по сети или горя к диску и вручную передав данные. Сжатие такого дампа, скорее всего, даст Вам довольно хороший уровень сжатия с тех пор, скорее всего, существует много repeptetive данных.

0
ответ дан 5 December 2019 в 06:10
поделиться
Другие вопросы по тегам:

Похожие вопросы: