Марат-блог
Услуги по продвижению и разработке сайта
Отправить заявку
Заказать обратный звонок

Спасибо, Ваша заявка принята.

В ближайшее время менеджер свяжется с Вами.

Главная » Хостинг » Как перенести базу данных с одного сервера на другой
Как перенести базу данных с одного сервера на другой
Хостинг
2719
04 февраля 2014

Как перенести базу данных с одного сервера на другой

  1. Создание дампа базы.
  2. Перенос дампа на новый сервер.
  3. Создание “пустой” БД на новом сервере и восстановление дампа в неё.
  4. Настройка прав доступа к БД.

Перед началом работы с MySQL убедитесь, что на сервере запущен демон mysql.

Как сделать дамп базы данных

Для создания дампа БД можно воспользоваться следующей командой:

mysqldump -u root -p -f myolddb > /home/username/mydbdump.sql

Затем вводим пароль пользователя:

mypassword

Рассмотрим первую команду. Для создания дампа, мы:

  • воспользовались утилитой mysqldump от имени пользователя MySQL root (ключ –u) (не путать с суперпользователем сервера root);
  • задали проверку пароля (ключ –p);
  • “попросили” создавать дамп даже при возникновении ошибок MySQL (ключ –f);
  • указали имя БД (myolddb);
  • указали директорию, в которой должен быть сохранён дамп БД (/home/username/);
  • указали имя самого дампа (mydbdump.sql).

Перенос базы данных на новый сервер

Следующим шагом является перенос дампа на новый сервер. Для этого можно воспользоваться ftp-клиентом, подключиться к старому серверу, скачать дамп на домашний компьютер, и, подключившись к новому серверу, загрузить дамп на него. Другим способом переноса дампа, для которого не нужно выполнять промежуточное копирование на домашнем компьютере, является использование команды wget на новом сервере, с указанием ссылки на старый сервер например, http://oldserver.com/mydbdump.sql).

Однако для использования данной команды необходимо, чтобы на старом сервере был запущен веб-сервер, а файл дампа помещён в корневую директорию хоста oldserver.com (например, /var/www/html).

После того как дамп перенесён, его нужно восстановить на новом сервере. Для начала необходимо войти в MySQL и создать “пустую” БД.

mysql –u root –p
mypassword
CREATE DATABASE mynewdb;
quit

Восстановление дампа базы данных

Далее восстанавливаем дамп в только что созданную БД.

mysql -u root -p -f mynewdb < /home/username/mydbdump.sql
mypassword

Настройка прав доступа к БД

Наконец, необходимо настроить права доступа к БД, а именно определить, какой пользователь будет иметь доступ к данной БД. Предположим, Вы устанавливаете Wordpress и хотите, чтобы доступ к БД имел пользователь под именем wordpress. В таком случае, нужно войти в MySQL как root при помощи команды:

mysql –u root –p
и выполнить следующие команды:

GRANT ALL ON mynewdb.* to wordpress@localhost identified by 'wordpresspassword';
FLUSH PRIVILEGES;
quit
Данная команда не только настраивает права доступа к БД, но также создаёт пользователя БД (например, wordpress) и устанавливает для него пароль (wordpresspassword).

Вы можете проверить корректность создания пользователя:

mysql –u wordpress –p
wordpresspassword
SHOW DATABASES;

При успешной настройке прав доступа Вы увидите следующий текст: