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

Я только что закончил делать веб-сайт в Joomla! 1.6. Веб-сайты в Joomla! состойте из двух базовых деталей. Существуют файлы, которые используются сервером HTTP и существует база данных. Я имею доступ FTP к серверу и скопировал необходимые файлы, но я не знаю, как скопировать базу данных MySQL.

У меня есть доступ к терминальному приложению MySQL на удаленном компьютере и к MySQL на моем компьютере. На сервере уже существует имя пользователя, которое я могу использовать и существует пустая база данных, которую я должен использовать. Пользователь имеет полный контроль над базой данных.

У меня нет физического доступа к удаленному серверу.

Этот должен быть очень простым, но Google не со мной сегодня.

2
задан 22.03.2011, 22:46

3 ответа

Эта ссылка (взятый прямо из документов MySql...) показывает Вам, как использовать utils w/MySql для перемещения базы данных в другое местоположение. Я никогда не должен был лично делать, это, но подробные инструкции должно быть достаточно.

2
ответ дан 08.12.2019, 05:51

Я переместил довольно много сайтов Joomla вручную от серверов разработки до их окончательных хостов, но теперь использую Резервное копирование Akeeba, поскольку оно создает 'пакет' сайта, который может быть загружен на целевом сервере и затем 'выполнен' (от браузера) для восстановления сайта - оно цветет изумительное, свободное и совместимое с 1,6.

Стоящий чтения: http://www.akeebabackup.com/software/akeeba-backup.html

1
ответ дан 08.12.2019, 05:51

Существует два основных способа достигнуть этого.

1) Выведите базу данных к текстовому файлу и импортируйте в удаленном конце

2) Скопируйте файлы необработанных данных.

Опция каждый является обычно самым надежным, особенно если эти две системы отличаются.

Во-первых, создайте дамп базы данных:

$ mysqldump -u <username> -p<password> <databasename> | bzip2 >mydatabase.sql.bz2

Это выведет всю базу данных и сожмет ее в файл. Вы не должны делать сжатия, если Вы не хотите, но оно делает передачу файла через Интернет намного более быстрой. Очевидно, замените имя пользователя, пароль и databasename с Вашими фактическими деталями.

После того как Вы имеете файл mydatabase.sql.bz2, передаете его удаленному серверу с любыми инструментами, Вы обычно использовали бы (scp, например);

Каждый передал Вас, должен создать базу данных по удаленному серверу (или создайте его для Вас системные администраторы / панель управления):

mysql> create database <databasename>;
mysql> grant all privileges on <databasename>.* to <username>@localhost identified by '<password>'

Очевидно, замените детали своими собственными деталями.

Теперь восстановить базу данных:

$ bzcat mydatabase.sql.bz2 | mysql -u <username> -p<password> <databasename>

С нескольких моментов необходимо установить базу данных теперь в удаленном сервере.

2
ответ дан 08.12.2019, 05:51

Теги

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