mysql 5.7配置主从
主服务器IP:192.168.58.128从服务器IP:192.168.58.129192.168.58.128主操作:首先要保证主从两台数据库的版本,数据库表等一致, 本教程是基于5.7, 64位的mysql数据库, 系统是centos 5.7, 主从均为虚拟机主节点配置:编译/etc/my.cnf文件的[mysqld]下加入如下配置server_id = 1#主数据库端ID号...
主服务器IP:192.168.58.128
从服务器IP:192.168.58.129
192.168.58.128主操作:
首先要保证主从两台数据库的版本,数据库表等一致, 本教程是基于5.7, 64位的mysql数据库, 系统是centos 5.7, 主从均为虚拟机
主节点配置:
编译/etc/my.cnf文件的[mysqld]下加入如下配置
server_id = 1 #主数据库端ID号
log-bin = mysql-bin #开启二进制日志
binlog-do-db = mytest #需要复制的数据库名,如果复制多个数据库,重复设置这个选项即可
auto_increment_offset = 1 #这个参数一般用在主主同步中,用来错开自增值, 防止键值冲突
auto_increment_increment = 1 #这个参数一般用在主主同步中,用来错开自增值, 防止键值冲突
log_bin_trust_function_creators = 1 #将函数复制到slave
重启mysql
service mysqld restart
登陆mysql
mysql -uroot -p1234
配置从服务器登录的用户密码,权限等, slave 为登录用户名, 192.168.58.129 为从库的ip,slpass 为从服务器登录的密码,请根据自身的情况配置
grant replication slave,replication client on . to ‘slave’@‘192.168.58.129’ identified by ‘slpass’;
刷新权限
FLUSH PRIVILEGES;
查看主节点状态:
show master status\G;
从节点(192.168.58.129)配置:
编译/etc/my.cnf文件的[mysqld]下加入如下配置
server_id = 2 #从节点的ID号,不能和主节点的一样
relay_log = relay-log #开启中继日志
read_only = ON #只读开启,实现读写分离
重启从节点mysql并配置:
service mysqld restart
登陆从节点mysql
mysql -uroot -p1234
#设置复制的主节点数据库,pos位置()
CHANGE MASTER TO MASTER_HOST=‘192.168.58.128’,MASTER_USER=‘slave’,MASTER_PASSWORD=‘slpass’,MASTER_LOG_FILE=‘mysql-bin.000002’,MASTER_LOG_POS=2518;
上面语句参数说明:
- MASTER_HOST:主库ip,
- MASTER_USER:上面主库配置从服务器登录的用户密码时配置的用户名
- MASTER_PASSWORD: 上面主库配置从服务器登录的用户密码时配置的用户密码
- MASTER_LOG_FILE:主库的数据库日志文件, 参考上面show master status\G; 得出的File 字段的值,
- MASTER_LOG_POS:参考上面show master status\G; 得出的Position 字段的值
开启主从复制并查看状态:
- 登录mysql后执行:START SLAVE;
- 登陆mysql后执行:show slave status\G;
红圈里面的 Slave_IO_Running 和 Slave_SQL_Running 均为 Yes , 是已经配置成功的标识
更多推荐
所有评论(0)