环境centos7.6
mysql5.7
两台服务器首先同时安装mysql5.7
1.两台服务器做时间同步
yum -y install ntp ntpdate
ntpdate cn.pool.ntp.org
hwclock --systohc
2.关闭防火墙,关闭SELinux(两个服务器都关)
systemctl stop firewalld
systemctl disable firewalld
setenforce 0
3.主库配置
配置文件
vim /etc/my.cnf
[mysqld]
server_id=27
log-bin=mysql-bin
log-bin-index=master-bin.index
重启服务:
systemctl stop mysql
systemctl start mysql
创建一个用于让从数据库连接的用户
mysql -uroot -ppassword(password就是数据库的密码,但是一般为了安全是mysql -uroot -p回车后再输入密码)
create user ‘copy’@‘192.168.2.%’ identified with mysql_native_password by ‘ABC123@com’;
grant replication slave on . to ‘copy’@‘192.168.2.%’;
注:第一个copy是创建的用户名字,192.168.2.%是该用户可以被192.168.2下的所有网段使用,ABC123@com是密码
刷新授权表信息
flush privileges;
获取主节点当前binary log文件名和位置(position)
show master status;
会有File和Position信息
4.从数据库
在从库上:
修改配置文件,必须指定中继日志的名称
[mysqld]
server_id=66
relay-log=relay-log
relay-log-index=relay-log.index
在从(Slave)节点上设置主节点参数
CHANGE MASTER TO
MASTER_HOST='192.168.2.138,(主数据库ip)
MASTER_USER=‘copy’,(前面设置好的用户名字)
MASTER_PASSWORD=‘ABC123@com’,(密码)
MASTER_LOG_FILE=‘mysql-bin.000001’,(前面的File信息)
MASTER_LOG_POS=825; (前面的Position信息)
查看同步状态,此时发现没开
show slave status\G
开启主从同步
start slave;
再次查看主从同步状态
mysql> show slave status\G
当
Slave_IO_Running: Yes
Slave_SQL_Running: Yes
时,则配置成功
接下来可以进行测试