数据库主从配置入门级(Mysql5.6)

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/BuFanQi_Info/article/details/80800342

简介

在实际的生产环境中,对数据库的读和写都在同一个数据库服务器中,是不能满足实际需求的。无论是在安全性、高可用性还是高并发等各个方面都是完全不能满足实际需求的。因此,通过主从复制的方式来同步数据,再通过读写分离来提升数据库的并发负载能力。mysql主从复制是对数据库中的数据、语句做备份。
这里写图片描述
以上为资料借鉴引用。

配置准备

数据库版本:MySQL mysql-5.6.40
主机A:192.168.1.1 (Master)
主机B:192.168.1.2 (Slave)
安装主从数据库安装步骤请参阅Linux环境MySql安装博文

配置Master库

 #打开数据库配置文件
 vim /etc/my.cnf

在[mysqld]下方加入

server-id = 1                    #用于标识唯一的数据库
log-bin=master-bin
log-bin-index=master-bin.index
binlog-do-db=smart_db_study      #表示只对smart_db_study库进行同步
binlog-ignore-db=mysql           #同步时忽视mysq库

重启Master数据库

service mysqld restart

登录查看配置信息

#1.登录
mysql -u root -p
#1.查看
show master status;
+------------------+----------+--------------+----------------------------------+-------------------+
| File             | Position | Binlog_Do_DB | Binlog_Ignore_DB                 | Executed_Gtid_Set |
+------------------+----------+--------------+----------------------------------+-------------------+
| mysql-bin.000004 |    76033| smart_db_study| mysql |                   |
+------------------+----------+--------------+----------------------------------+-------------------+
1 row in set (0.00 sec)

这里的 File 、Position 是在配置Salve的时候要使用到的,Binlog_Do_DB表示要同步的数据库,Binlog_Ignore_DB 表示忽略的数据库,这些都是在my.cnf配置的时候进行指定的。
另外:如果执行这个步骤始终为Empty set(0.00 sec),那说明前面的my.cnf没配置对

配置Slave库

 #打开数据库配置文件
 vim /etc/my.cnf

在[mysqld]下方加入

server-id = 2                         #用于标识唯一的数据库
log-bin=slave-relay-bin
log-bin-index=slave-relay-bin.index

修改完/etc/my.cnf重启数据库

#登录从库
mysql -u*** -p***
#停止slave
start stop;
#指定Master库的信息
change master to master_host='XXX',master_user='XXX',master_password='XXX',master_port='XXX',master_log_file='mysql-bin.000004', master_log_pos=76348;
#启动slave
start slave;

这里写图片描述

备注master_log_pos需与Master的Position 选项对应

#查看配置信息
show slave status;
#配置信息如下
Waiting for master to send event    xxxx    xxx xxx 60  master-bin.000004   76033   izm5e1s4au8d2yksb08zr4z-relay-bin.000008    76197   master-bin.000004   Yes Yes                         0       0   76033   76552   None        0   No                      0   No  0       0           1   126e60f7-4aa0-11e8-8425-00163e088490    /usr/local/mysql/data/master.info   0       Slave has read all relay log; waiting for the slave I/O thread to update it 86400                               0

如果:Slave_IO_Running: Yes,Slave_SQL_Running: Yes则为配置成功

扫描二维码关注公众号,回复: 3840389 查看本文章

测试

#连接Master在smart_db_study对customer执行插入操作
INSERT INTO customer(name,contact) VALUE('zhanshan','test')

这里写图片描述

这里写图片描述

查看Slave的smart_db_study库customer数据
这里写图片描述

猜你喜欢

转载自blog.csdn.net/BuFanQi_Info/article/details/80800342
今日推荐