Mysql互为主从 环境: 系统环境:centos6.5_x64 Mysql-A:172.18.49.10 Mysql-B:172.18.49.2 Mysql安装已经完成。 两台mysql上时间同步:

ntpdate pool.ntp.org

在A上操作:

vi /etc/my.cnf

添加: log-bin=mysql-bin //开启二进制日志 server-id=1 //mysql的id relay_log=relaylogs

service mysqld restart

登录mysql,新建同步用户:

mysql -uroot –p

mysql> grant all on . to 'tongbu'@'172.18.49.%' identified by '123456'; mysql> flush privileges; 初始化bin-log日志 mysql> reset master; 查看最新bin-log日志: mysql> show master status;

图中的mysql-bin.000001就是最新的日志文件名称,Position是bin日志结束的位置,这两个值会在主机B中使用。 主机A配置完毕,切记为了保持主从的一致性,先不要操作主机A mysql数据库,待主机B配置完成且设置同步后才可以进行操作。 主机B配置: 修改配置文件:

vi /etc/my.cnf

log-bin=mysql-bin server-id=2 relay_log=relaylogs

service mysqld restart

增加同步用户:

mysql -uroot –p

mysql> grant all on . to 'tongbu'@'172.18.49.%' identified by '123456'; mysql> flush privileges; 初始化bin-log日志: mysql> reset master; 查看bin-log日志: mysql> show master status;

主机B配置完成,现在进行同步配置 同步配置: 在主机A上操作: mysql> change master to master_host='172.18.49.2',master_user='tongbu',master_password='123456',master_log_file='mysql-bin.000001',master_log_pos=120; 这里的master_host是指主机B的ip地址,master_uesr是执行同步操作的用户名,master_password是执行同步的用户密码,master_log_file是主机B的bin-log日志,master_log_pos是从bin-log日志开始同步的位置。 开启同步: mysql> start slave; 查看同步设置是否成功:

在主机B 上操作: mysql> change master to master_host='172.18.49.10',master_user='tongbu',master_password='123456',master_log_file='mysql-bin.000001',master_log_pos=120; mysql> start slave; mysql> show slave status\G;

则操作完成。 最后查看字符集!!!!! show variables like'%char%';

同步测试: 在A主机或者B主机上做都可以。 在A上新建一个数据库 mysql> create database test2; 在B上可以查看到,之后再B上给数据库中插入信息,则在A上也可以查看的到: mysql> create table users(id int(16),name char(16),sex varchar(64)); 成功!!!