понедельник, 22 ноября 2010 г.

немного про репликацию mysql

Понадобилось внести в набор master-slave еще одну базу.
Бинлог ведется по всем базам.
mysql> show master status;
+------------------+----------+--------------+------------------+
| File | Position | Binlog_Do_DB | Binlog_Ignore_DB |
+------------------+----------+--------------+------------------+
| mysql-bin.000416 | 6253340 | | |
+------------------+----------+--------------+------------------+
1 row in set (0.00 sec)

Пробуем..
master:
create database db character set cp1251;

slave:
vi my.cnf
вносим базу в список replicate-do-db=
перезапускаем слейв (стоит скип-старт). Базы нет. Да и не должно.
slave start;
базы нет. Но в show slave status она есть.
Попробуем создать.
create database db character set cp1251;
use db;
база есть.
show tables пока пуст, но и на мастере нету ничего. А теперь проверим "живую" заливку.

master:
mysql -u root -p db
slave:
show tables - заливка прошла!
Теперь осталось залить пользователей, потому что слейв не слушает базу mysql.

master и slave:

grant all privileges on db.* to 'db'@'localhost' identified by 'pass';
flush privileges;

В принципе все.

Комментариев нет:

Отправить комментарий