mysql主备

mysql主备机器配置

主备
主:主机,备:备机。
主机的意思当然是以它为主了,读写都是主机上,而备机呢就是备用,默默的在背后吸收主机的数据,时刻待命着等待主机挂了之后取而代之(没这么坏哈哈)。因此在主机还活着的情况下,备机的唯一使命就是同步主机的数据,不对外提供服务。
在这里插入图片描述
首先准备两台数据库:
主数据库:192.168.180.101
从数据库:192.168.180.102

防火墙:
iptables -I INPUT 1 -p tcp -m state --state NEW -m tcp --dport 3306 -j ACCEPT
service iptables save

一,mysql主服务器配置

先注意服务命令:
service mysqld start #启动数据库
service mysql stop #停止数据库
service mysql restart #重启数据库

第一步:在主机数据库修改配置文件

vim /etc/my.cnf
#在[mysqld]中添加
#启用二进制日志
log-bin= mysql-bin-master
#本机数据库 ID 标示,主从配置中ID要唯一
server-id= 1
#可以被从服务器复制的库, 二进制需要同步的数据库名
binlog-do-db= test
#如果有多个数据库,需要重复配置,不能直接在后面用逗号增加,否则mysql 会把这里当成一个数据库
#binlog-do-db= test2
#binlog-do-db= test3
#注释掉 binlog_do_db 和 binlog_ignore_db ,则表示备份全部数据库
#不可以被从服务器复制的库
binlog-ignore-db= mysql
#保存退出

service mysql restart #重启从服务器

第二步,授权主从同步slave用户授权

登录mysql

#mysql5.7
GRANT REPLICATION SLAVE ON . TO ‘slave’@‘从服务器ip地址’ IDENTIFIED BY ‘密码’;

#mysql8.0
CREATE USER ‘slave’@‘从服务器ip地址’ IDENTIFIED BY ‘密码’;
GRANT REPLICATION SLAVE ON . TO ‘slave’@‘从服务器ip地址’;
show binlog events\G; #展示相关状态
在这里插入图片描述

二,mysql从服务器配置

如果主服务器已有文件可先手动导入从服务器
主服务器-> mysqldump -u root -p -B test > test.sql #导出test数据库脚本,记住导出的路径。
输入密码导出。
从服务器->登录mysql -> source 文件路径。

第一步,修改从服务器配置文件

vim /etc/my.cnf
#在[mysqld]中修改
server-id=2
#保存退出;
service mysql restart #重启从服务器

#登录从服务器mysql
stop slave; #停止slave
#授权:
#根据上面主服务器的show binlog events\G;的结果,进行从服务器的二进制数据库记录回归,达到同步的效果。
CHANGE MASTER TO MASTER_HOST=‘主服务器ip’, MASTER_USER=‘slave’, MASTER_PASSWORD=‘密码’,MASTER_LOG_FILE=‘mysql-bin-master.000001’, MASTER_LOG_POS=444;
start slave; #启动slave
show slave status\G; #查看状态
在这里插入图片描述
可以看到出现了两个为 YES,则主从配置成功了。
主服务器插入数据,测试从服务器数据库是否同步新增。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值