MySQL实现主从复制(Windows)的明细操作步骤

一、教学视频地址

视频地址:视频链接

二、设计思路

准备两个5.7版本的MySQL,一个用作主数据库,另一个用作从数据库。
把主数据库做为写入数据库,从数据库作为数据库。
在这里插入图片描述

三、具体步骤

1.先把你的mysql目录拷贝复制一份,复制出来的那份取名为mysql-slave。
在这里插入图片描述
2.先修改主数据库的my.ini文件,添加以下代码,主要是配置要同步的数据库和屏蔽要同步的数据库:

log-bin=mysql-bin
server-id	= 1
#设置需要同步的数据库
binlog-do-db=db_user
#屏蔽系统库同步
binlog-ignore-db=mysql
binlog-ignore-db=information_schema
binlog-ignore-db=performance_schema

在这里插入图片描述
3.然后将主数据库注册为系统服务。

mysqld install mysql-master --defaults-file="D:\xampp\mysql\bin\my.ini"

4.然后修改从数据库的my.ini文件,把启动端口和从数据库的路径进行修改:在这里插入图片描述
同时加上要同步的数据库表配置,记得server-id也要修改,改成和主数据库不一致就行:
在这里插入图片描述

server-id=2
#设置需要同步的数据库
replicate_wild_do_table=db_user.%
#屏蔽系统库同步
replicate_wild_ignore_table=mysql.%
replicate_wild_ignore_table=information_schema.%
replicate_wild_ignore_table=performance_schema.%

5.改完后同样把从数据库注册为系统服务。

mysqld install mysql-slave --defaults-file="D:\xampp\mysql-slave\bin\my.ini"

进入主从两数据库目录的data目录下,修改auto.cnf文件,把两个uuid改的不一样就行,这里,我是把最后一位的数字进行了修改。
在这里插入图片描述
然后重启主从数据库两个服务。
在这里插入图片描述
6.给主库赋予主从复制的权限:

GRANT REPLICATION SLAVE ON *.* TO 'root'@'%' IDENTIFIED BY 'root';

然后刷新权限

FLUSH PRIVILEGES;

在这里插入图片描述
然后查看主库的确认位点,下图中的File和Position要记住,后面从库配置时候要用到:

show master status;

在这里插入图片描述
7.打开从库的命令窗口,依次输入以下命令:
先停止同步:

STOP SLAVE;

然后配置从库指向到主库,使用上一步记录的文件名File以及位点Position:

CHANGE MASTER TO MASTER_LOG_FILE='mysql-bin.000002',MASTER_LOG_POS=1178,MASTER_HOST='localhost',MASTER_USER='root',MASTER_PASSWORD='',MASTER_PORT=
3306;

然后开启同步:

START SLAVE;

在这里插入图片描述

然后查看从库的同步状态:

show slave status;

Slave_IO_Runing和Slave_SQL_Runing都为Yes说明同步成功,如果不为Yes,请检查error_log。
在这里插入图片描述
PS:如果之前此从库已有主库指向 需要先执行以下命令清空:

STOP SLAVE IO_THREAD FOR CHANNEL '';
reset slave all;

8.这样就完成了MySQL数据库主从复制的配置了,当你在主库中对db_user数据库中的表修改数据时候,从库中db_user数据库对应表中的数据也会跟着变化了。

猜你喜欢

转载自blog.csdn.net/dgfdhgghd/article/details/128427294
今日推荐