MySQL的一主多从实际操作步骤

虚拟机操作实验,在实际的生产环境中不能随便重启数据库

主操作:
1.在数据库里配置同步数据库
create database db1;
use db1;
create table t1(id int,name varchar(20));
2.退出数据库进入到my.cnf配置文件中加入四条语句
log-bin=mysql-master 启用二进制日志
server-id=1 本机数据库ID  #要唯一
binlog-do-db=db1 可以被从服务器复制的库,需要同步的数据库名
binlog-ignore-db=mysql 不可以被从服务器复制的库

UUID也要更改 在mysql文件data目录下  也要唯一
3.重启数据库
systemctl restart mysql
4.授权连接用户
create user slave@'%' identified with mysql_native_password by '1';
grant replication slave on *.* to slave@'%';
5.查看主服务器状态
show master status;
记住日志名与数字

从操作:
1.进入数据库测试授权用户可不可以登录
mysql -uslave -p1 -h 10.0.0.4
2.再进入到root用户中,在数据库中必须要和主服务器里的数据库一致 (可以导出主服务器数据传到从服务器上,测试创建即可)
create database db1;
use db1;
create table t1(id int,name varchar(20));
3.进入到my.cnf中添加
server-id=2 每个数据库中的server-id值要不一样
4.重启数据库服务
systemctl restart mysql;
5.先使用命令看从机是否在运行
show slave status\G;

如果在运行就停止运行
stop slave;

然后指定用户
change master to 
master_host='10.0.0.4',主服务器IP
master_user='slave',主服务器创建复制的用户
master_password='123456',主服务器创建复制的用户
master_port=3306,端口号
master_log_file='mysql-master-bin.000001', 在查看主服务器状态的第一列日志文件名
master_log_pos=450; 在查看主服务器状态的第二列数字

启动从机
start slave;

查看同步状态
show slave status\G;

测试
在主服务器中数据库中的表实现增删改 看看从服务器有没有更新

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值