MySQL 主从复制 Replication
1.3.1. Master Slave
1.3.1.1. Master
过程 1.1. Master 设置步骤
-
配置 my.cnf 文件
确保主服务器主机上my.cnf文件的[mysqld]部分包括一个log-bin选项。该部分还应有一个server-id=Master_id选项
# vim /etc/mysql/my.cnf server-id = 1 log_bin = /var/log/mysql/mysql-bin.log expire_logs_days = 10 max_binlog_size = 100M binlog_do_db = test binlog_ignore_db = mysql
bind-address默认是127.0.0.1你必须更改它,否则Slave将无法链接到 Master
#bind-address = 127.0.0.1 bind-address = 0.0.0.0
重启服务器
neo@netkiller:~$ sudo /etc/init.d/mysql reload * Reloading MySQL database server mysqld [ OK ]
建议使用reload,如果不起作用再用restart
mysql> SHOW GLOBAL VARIABLES like 'server_id'; +---------------+-------+ | Variable_name | Value | +---------------+-------+ | server_id | 1 | +---------------+-------+ 1 row in set (0.00 sec)
-
登录slave服务器,测试主库3306工作情况,如果看到下面相关信息表示工作正常。
# telnet 192.168.1.246 3306 Trying 192.168.1.246... Connected to 192.168.1.246. Escape character is '^]'. I 5.1.61-0ubuntu0.11.10.1-log1W<gs/*'#}p<u[J=5//:
-
创建账户并授予REPLICATION SLAVE权限
mysql> GRANT REPLICATION SLAVE,REPLICATION CLIENT ON *.* TO 'replication'@'%.mydomain.com' IDENTIFIED BY 'slavepass'; mysql> FLUSH PRIVILEGES;
创建监控账号monitor(可选项),monitor 使用SHOW MASTER STATUS和SHOW SLAVE STATUS命令但没有