主从复制实战

MySQL主从模式是指数据可以从一个MySQL数据库服务器主节点复制到一个或多个从节点。MySQL 默认采用异步复制方式,这样从节点不用一直访问主服务器来更新自己的数据,从节点可以复制主数据库中的所有数据库,或者特定的数据库,或者特定的表。

mysql主从复制用途:

  • 实时灾备,用于故障切换(高可用)
  • 读写分离,提供查询服务(读扩展)
  • 数据备份,避免影响业务(高可用)

主从部署必要条件:

  • 从库服务器能连通主库
  • 主库开启binlog日志(设置log-bin参数)
  • 主从server-id不同

操作步骤:
1.安装2台mysql服务器,master(192.168.10.1)和slave(192.168.10.2).
2.主库开启bin-log
在my.cnf中的[mysqld]下添加

log_bin=mysql-bin #log文件名 
server-id=1  
sync-binlog=1
binlog-ignore-db=performance_schema #要忽略的库
binlog-do-db=user #指定要同步的库
重启mysql

3.主库给从库授权
mysql -uroot -p 进入命令行

执行
grant replication slave on *.* to 'root'@'%' identified by 'root';
grant all privileges on *.* to 'root'@'%' identified by 'root';
flush privileges; //刷新
show master status;//查看主库状态,能看到对应的binlog文件
|         File     |Postion|Binlog_Do_DB|Binlog_Ignore_DB  |Executed_Gtid_Set|
| mysql-bin.000002 |  869  |            |performance_schema|                 |

4.从库配置
从库主要是接收主库binlog日志,因此这里无需开启从库的binlog日志功能.
在my.cnf中的[mysqld]下添加

server-id=2
relay_log=mysql-relay-bin
read_only=1 #只读
重启mysql

5.指定主库地址
从库中 mysql -uroot -p 进入命令行

执行
change master to master_host='192.168.10.1',master_port=3306,master_user='root',master_password='123456',master_log_file='mysql_bin.000002',master_log_pos=869;
start slave;
show slave status \G; #能查到信息,不为Empty即可

master_log_file,master_log_pos参数在第三步最后查看主库状态时得知

验证方法:在主库中建库建表,插入行数据,在子库中能查询到
[参考]http://xinyeshuaiqi.cn/2019/11/06/mysql-master-slave/

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值