分布式数据库主从配置(MySQL)
注意:默认已经安装了mysql,安装教程详见我的另一篇博客–springboot项目部署到阿里云服务器(centos7)_Java_李子陵的博客-CSDN博客_springboot部署到阿里云
我的主数据库和从数据库分别放在一个云服务器上,如果只有一个云服务器大家可以再电脑本机安装一个MySQL,需要注意的是
Windows系统下需要修改的配置文件为my.in
1.主数据库配置
-
修改my.cnf文件
vim /etc/my.cnf
-
添加如下内容
server-id=1 #服务器ID,任意一个整数 log-bin=mysql-bin #开启日志记录 binlog-do-db=db_test #只同步配置到这个数据库,如果复制多个数据库,重复设置这个选项即可
-
如图所示
-
-
重启MySQL
systemctl restart mysqld
-
登录MySQL,测试配置是否成功
-
登录MySQL
mysql -uroot -p
-
创建对应的数据库(与配置文件中的保持一致:bindlog-do-db=db_test)
create database db_test
-
检查主库状态,如下图所示,则配置成功
show master status
-
2.从数据库配置
-
修改my.cnf文件
vim /etc/my.cnf
-
添加如下内容
server-id=2 #服务器ID,任意一个整数,和主库不同即可
-
如图所示
-
重启MySQL
systemctl restart mysqld
-
登录MySQL,测试配置是否成功
-
登录MySQL
mysql -uroot -p
-
创建对应的数据库(与主数据库配置文件中的保持一致:bindlog-do-db=db_test)
create database db_test
-
依次执行如下命令
stop slave
注意:具体内容需要自己填
change master to master_host='主数据库服务器IP', master_user='主数据库用户名', master_password='主数据库密码', master_log_file='mysql-bin.000005', #与图2 File值保持一致 master_log_pos=322; #与图2 Position值保持一致
start slave
show slave status
- 如果出现两个Yes则配置成功(如下图所示)
-
-
检测结果
在主数据库的db_test数据库任意创建一个数据库表,再添加几条测试数据,会发现从数据库会自动创建相应的数据库表和数据