Перенос сайта Joomla на другой сервер
Нередко возникает ситуация когда необходимо перенести сайт на другой хостинг. При этом можно использовать инструменты панели управления и/или дополнительные программы вроде EMS SQL Manager. Однако при наличии доступа по ssh к локальному и удаленному серверу, все можно сделать штатными средствами OS. Перенос осуществляется в три этапа:
Копировать будет утилитой scp, которая входит в состав пакета openssh-clients, поэтому сначала необходимо на обоих серверах установить данный пакет:
# yum install openssh-clients
Создание базы данных и пользователя MySQ
Необходимо подключиться к консоли mysql:
# mysql -p
и выполнить следующие запросы:
- Создаем базу данных:
CREATE DATABASE имя_базы;
- Создаем пользователя MySQL:
CREATE USER 'имя_пользователя'@'localhost' IDENTIFIED BY 'пароль';
- Назначаем ему права:
GRANT ALL PRIVILEGES ON имя_базы.* TO 'имя_пользователя'@'localhost';
Копирование MySQL
- Выгружаем базу данных в файл:
# mysqldump --databases --create-options --comments -Q -uroot -p 'имя_базы' > /db.sql
- Копируем на удаленный сервер:
# scp /db.sql root@удаленный_сервер:/
- Восстанавливаем базу на удаленном сервере:
# mysql -uroot -hlocalhost -p < /db.sql
Копируем каталог с файлами
- Архивируем каталог с файлами:
# zip -r /archive.zip /var/www/site
- Копируем архив на удаленный сервер:
# scp /archive.zip root@удаленный_сервер:/
- Восстанавливаем каталог на удаленном сервере во временную папку:
# unzip /archive.zip -d /tmp
- Копируем распакованные файлы из папки /tmp в папку сайта, и раздаем права:
# chown -R apache:apache /var/www/site/*