主从复制mysql

windows服务器下mysql数据库主从复制案例

前提:;mysql版本最好一直

主数据库:MySQL版本5.7.29,IP为172.18.109.119

从数据库:MySQL版本5.7.29,IP为172.18.109.122

主服务器配置

第一步:关闭mysql服务

在mysql安装目录下打开windows命令窗口 快捷键 :到指定目录按shift+鼠标右键,点解powerShell窗口

执行 net stop mysql

第二步:修改mysql.ini文件

修改mysql.ini 文件

# 主从复制
#设置server-id
server_id=1
 #开启二进制文件 
log-bin=mysql-bin
#同步的数据库,除此之外别的不同步(和下面binlog-ignore-db二选一)
binlog_do_db=testdb
第三步:重启mysql服务

执行 net start mysql

第四步:创建用于同步的用户账号

(1)以管理员身份打开cmd窗口后,运行mysql -uroot -p,输入密码(为空则直接回车),登陆。
(2)先后执行下面3条命令创立用户(用户名MySlave,密码123456),并刷新权限

	注: 新增用户时mysql默认的密码强度:开始设置的密码必须符合长度,且必须含有数字,小写或大写字母,特殊字符。

​ 修改方式 :mysql> set global validate_password_policy=0;

CREATE USER 'MySlave'@'172.18.109.122' IDENTIFIED BY '123456';
GRANT REPLICATION SLAVE ON *.* TO 'MySlave'@'172.18.109.122';
FLUSH PRIVILEGES;

MySlave为用户名
172.18.109.122:备用服务器ip地址
123456:用户密码
第五步:查看Master状态,记录二进制文件名和位置

在这里插入图片描述

二进制文件为mysql-bin.000002,位置为1630

从服务器数据库配置

1、创建一个新的测试数据库,名称为testdb。
2、验证同步账号能否登陆

打开Navicat for MySQL,新建链接,IP填写172.18.109.119(主服务器ip),用户名MySlave,密码123456,点击“连接测试”验证是否能连接。

3、打开my.ini,增加配置
server-id=2 #设置server-id
log-bin=mysql-bin #开启二进制文件
4、重启MySQL服务
5、cmd命令行登陆MySQL数据库,执行下面命令进行手动同步
mysql > CHANGE MASTER TO MASTER_HOST='172.18.109.119',MASTER_PORT=3306,MASTER_USER='MySlave',MASTER_PASSWORD='123456',MASTER_LOG_FILE='mysql-bin.000002',MASTER_LOG_POS=1630;

MASTER_HOST:主服务器ip

MASTER_PORT:mysql占用的端口号

6、启动salve同步进程
mysql > start slave;
7、查看slave状态

执行命令:show slave status\G;
Slave_IO_Running: Yes,Slave_SQL_Running: Yes时说明两个线程已启动,主从复制配置成功。

在这里插入图片描述

8、测试

在主数据库新建一个表,刷新从数据库,可以看到这个表。

备注:

在进行数据库主从复制前,主数据库中已有表和数据,则这部分数据不会同步,需要手动导出,并在从数据库中导入。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值