1、主从服务器分别作以下操作:
1.1、版本一致
1.2、初始化表,并在后台启动mysql
1.3、修改root的密码
2、修改主服务器master:
#vi /etc/my.cnf
[mysqld]
log-bin=mysql-bin //[必须]启用二进制日志
server-id=1 //[必须]服务器唯一ID,默认是1,一般取IP最后一段
3、修改从服务器slave:
#vi /etc/my.cnf
[mysqld]
log-bin=mysql-bin //[不是必须]启用二进制日志
server-id=2 //[必须]服务器唯一ID,默认是1,一般取IP最后一段
4、重启两台mysql服务服务器:
Server mysqld restart
5、在主服务器上建立帐户并授权:
grant replication slaveon *.* to 'backup'@'%' identified by 'space';
在主服务器上创建提供给与从服务器进行数据访问读取的用户账户,账户名称backup,密码space; %支持从服务器为任意服务器,如果是单台服务器建议直接使用IP地址;
6、登录主服务器的mysql,查询master的状态
使用 show master status命令查看master主服务器状态;
注:执行完此步骤后不要再操作主服务器MYSQL,防止主服务器状态值变化;
7、配置从服务器:
主从服务器拓扑:
主服务器IP 192.168.10.6
从服务器IP 192.168.10.10
change master to
->master_host='192.168.10.6',master_user='backup',master_password='space969226301',
->master_log_file='mysql-bin.000001',master_log_pos=120;
//注意不要断开,120数字前后无单引号。 mysql-bin.000001 和120 数字都是在mysql主服务器上使用show master status命令查看的;
Master_Host:192.168.10.6 //主服务器地址
Master_User: backup //授权从服务器读取主服务器时的帐户名,尽量避免使用root
Master_Port: 3306 //数据库端口,部分版本没有此行,不加改参数默认3306
Master_password=’space’ //授权数据同步的账号身份密码;
Master_log_file=‘ mysql-bin.000001’ //指定主服务器的状态文件
master_log_pos=120; //指定主服务器的状态文件位置
//启动从服务器复制功能 stop slave为停止服务器复制功能;
在从服务器上查看数据同步状态;使用命令show slave status\G 命令检查从服务器复制功能状态:
注:Slave_IO及Slave_SQL进程必须正常运行,即YES状态,否则都是错误的状态(如:其中一个NO均属错误)。
8. 测试mysql主从数据同步效果:
查看主数据库数据库信息,与从数据做对比;
从数据信息与主mysql一致;
create database hi_db; //在主服务器上创建hi_db数据库
use hi_db //切换到hi_db数据库操作模式下;
create table hi_tb(id int(3),namechar(10));
//在hi_db数据下 新建hi_tb,并建id和name字段
insert into hi_tb values(001,'bobu'); //插入数据
show databases; //查看mysql下数据库
在从服务器上验证数据同步效果;