服务器架构mysql主从同步

在主服务器上创建mysql用户创建用户(使用root也可以,但是不建议) , 该用户必须有 REPLICATION SLAVE 权限
创建用户:CREATE USER 'test1'@'192.168.8.%' IDENTIFIED WITH mysql_native_password by '123456';
赋权:GRANT REPLICATION SLAVE ON *.* TO 'test1'@'192.168.8.%';
刷新权限:flush privileges;
在从服务器上测试使用主服务器刚刚创建的账号是否能够正常连接 例如
/usr/local/mysql/bin/mysql -utest1 -p123456 -h192.168.8.113

停止主、从服务器的mysql服务
例如 /etc/init.d/mysql stop

主服务器必须打开开二进制日志 例如 vi /etc/my.cnf  (根据实际路径)
主要是修改配置文件 , 一般在 linux 下安装的 mysql 配置文件是 my.cnf, 在
windwos 下是 my.ini,
修改主服务器配置文件
server-id=1
log-bin= 二进制文件的位置 # 主服务器需打开二进制日志 可以是默认值也 可以创建新目录并且赋予可写权限
例如log-bin=/usr/local/mysql/binlog/bin-log
默认日志文件在mysql安装目录下的var目录下

binlog-do-db=mydata # 需要同步的数据库  默认都同步
#binlog-ignore-db= # 需要忽略的数据库  默认不忽略任何数据库
启动mysql服务 /etc/init.d/mysql start
如果使用了默认的二进制日志配置 需要将原始日志文件删除后再启动mysql服务,启动后可以查看二进制日志目录下是否生成新文件,如果已经生成日志文件说明配置是正确的

配置从服务器
server-id = 2
#replicate-do-db=mydata   可选  默认同步所有的数据库
启动mysql服务  /etc/init.d/mysql start
进入mysql命令 行执行命令
change master to master_host=' 主 服务 器 地 址 ', master_user=' 用 户名 ',
master_password=' 密码 ',
master_port= 端口号 ,MASTER_CONNECT_RETRY=10;
例如 :
change master to master_host='192.168.43.93',master_user='long',master_password='root',master_port=3306,master_connect_retry=10;
再执行 start slave;
在从服务器输入命令
show slave status\G;
查看状态 :
Slave_IO_State: Waiting for master to send event
Master_Host: 192.168.16.6
Master_User: slave
Master_Port: 3306
Connect_Retry: 10
Master_Log_File: binlog.000002
Read_Master_Log_Pos: 903
Relay_Log_File: relaylog.000004
.........
在主服务器上建立数据库数据表后查看从服务器 , 看是否配置成功
撤销配置 :
进入命令行执行 stop slave; 再执行 reset slave; 即可 .

猜你喜欢

转载自blog.csdn.net/weixin_42242253/article/details/83992911