Перенесення бази даних MySQL можна розділити на 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;
При успішному налаштуванні прав доступу ви побачите такий текст: