master slave replication

master slave replication master slave replication
И так у нас есть 2 сервера: В идеале на обеих серверах у вас уже должен быть настроен веб-сервер (nginx + apache к примеру), mysql, phpmyadmin У меня все это есть, я для теста перенес на 2 эти сервера свой сайт, создал одинаковые БД, одинаковые пользователи БД и пароли. Теперь переходим к настройке master slave репликации:

на сервере master

Заходим в конфиг mysql:
Добавляем следующие строки: Создадим папочку для лог-файлика Mysql. Перегружаем mysql-server на master: Потом заходим под рутом в консоль mysql и выполняем действия из листинга ниже: Тут важно запомнить/сохранить/скопировать имя bin-файла и позицию, в моем случае:
— файл mysql-bin.000002
— позиция 334
На слейве эти данные необходимо ввести чтобы mysql знал откуда начинать репликацию.
Создаем дамп базы которую хотим реплицировать:
Опять идем в админку mysql и разблокируем таблицы базы: Копируем SQL дамп на slave Теперь заходим на сервер slave

на сервере slave

Обязательное требование к mysql — версия не ниже чем на сервере master. Правим конфиг mysqld Создадим папочку для лог-файлика Mysql. Перегружаем mysql-server на slave-сервере чтобы применить изменения в конфиге: Идем в админку mysql: Там просто создадим пустую базу данных, с таким же именем как на master (я уже создал БД раньше, просто не заливал дамп), тут показываю как создать БД новую на всякий случай: Заливаем dump базы admin_db скопированной с master-сервера Опять идем в админку mysql и выполняем следующее: Теперь смотрим статус, особое внимание уделяем Slave_IO_Running и Slave_SQL_Running, оба в нормальном рабочем состоянии должны быть Yes: Теперь делаем следующее если у вас есть фаервол и он мешает подключению: На слейве:

На мастере:

Вот и все, теперь все должно работать.
More