文章目录
- 一、教学视频地址
- 二、设计思路
- 三、具体步骤
一、教学视频地址
视频地址:视频链接
二、设计思路
准备两个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数据库对应表中的数据也会跟着变化了。