mysql主重复制

2017-04-14  本文已影响0人  bchz

1、主从服务器分别作以下操作

版本一致

初始化表,并在后台启动mysql

修改root的密码

2、修改主服务器master:

#vi /etc/my.cnf

[mysqld]

log-bin=mysql-bin   //[必须]启用二进制日志

server-id=222      //[必须]服务器唯一ID,默认是1,一般取IP最后一段

3、修改从服务器slave:

#vi /etc/my.cnf

[mysqld]

log-bin=mysql-bin   //[不是必须]启用二进制日志

server-id=226      //[必须]服务器唯一ID,默认是1,一般取IP最后一段

4、重启两台服务器的mysql

/etc/init.d/mysql restart

5、在主服务器上建立帐户并授权slave:

#/usr/local/mysql/bin/mysql -uroot -pmttang

mysql>GRANT REPLICATION SLAVE ON *.* to 'mysync'@'%' identifiedby 'q123456'; //一般不用root帐号,“%”表示所有客户端都可能连,只要帐号,密码正确,此处可用具体客户端IP代替,如192.168.145.226,加强安全。

6、登录主服务器的mysql,查询master的状态

mysql>show master status;

|File                          |Position   | Binlog_Do_DB | Binlog_Ignore_DB |

============================================

 mysql-bin.000004       308

1 row in set (0.00 sec)

注:执行完此步骤后不要再操作主服务器MYSQL,防止主服务器状态值变化

7、配置从服务器Slave:

mysql>change master tomaster_host='192.168.145.222',master_user='mysync',master_password='q123456',

master_log_file='mysql-bin.000004',master_log_pos=308;   //注意不要断开,308数字前后无单引号。

Mysql>start slave;    //启动从服务器复制功能

8、检查从服务器复制功能状态:

mysql> show slave status\G;

Slave_IO_State: Waiting formaster to send event

Master_Host:192.168.2.222  //主服务器地址

Master_User: mysync   //授权帐户名,尽量避免使用root

Master_Port: 3306   //数据库端口,部分版本没有此行

Connect_Retry: 60

Master_Log_File:mysql-bin.000004

Read_Master_Log_Pos: 600    //#同步读取二进制日志的位置,大于等于Exec_Master_Log_Pos

Relay_Log_File:ddte-relay-bin.000003

Relay_Log_Pos: 251

Relay_Master_Log_File:mysql-bin.000004

Slave_IO_Running: Yes   //此状态必须YES

Slave_SQL_Running: Yes    //此状态必须YES

Slave_IO及Slave_SQL进程为YES成功,NO为失败

主从服务器配置完成。

9、主从复制测试:

主服务器Mysql,建立数据库,并在这个库中建表插入一条数据:

从服务器如果有主服务器建的数据库,并且这个库中也有刚刚插入的数据就成功了

上一篇 下一篇

猜你喜欢

热点阅读