Linux环境下,MySQL主从复制的配置过程

一、什么是主从复制

    主从复制,是用来建立一个和主数据库完全一样的数据库环境,称为从数据库主数据库一般是实时的业务数据库。

二、从数据库的作用和用途

    从数据库的作用和使用场合一般有几个:一是作为后备数据库,主数据库服务器故障后,可切换到从数据库继续工作;二是可在从数据库作备份、数据统计等工作,这样不影响主数据库的性能。

三、主从复制的原理

    主从复制一共有三个进程,从库生成两个线程,一个I/O线程,一个SQL线程。
        (1)i/o线程去请求主库 的binlog,并将得到的binlog日志写到relay log(中继日志) 文件中。
        (2)主库会生成一个 log dump 线程,用来给从库 i/o线程传binlog。
        (3)SQL 线程,会读取relay log文件中的日志,并解析成具体操作,来实现主从的操作一致,而最终数据一致。

四、环境准备

    一个Linux(Centos7.3)和Docker环境下分别需要准备各一个mysql数据库,我这里使用的都是mysql8.0进行演示,主从信息如下 :
        主数据库IP:58.87.75.119 (Linux环境)
        从数据库IP:10.187.43.240(Docker环境)

五、主数据库的配置

1.寻找MySQL的配置文件 my.cnf
# 寻找MySQL的配置文件 my.cnf
find / -name my.cnf

find / -name my.cnf

2.编辑MySQL的配置文件 my.cnf
# 编辑MySQL的配置文件 my.cnf
vi my.cnf

添加以下内容:

#开启二进制日志
log-bin=mysql-bin
#设置server-id
server-id=1 

vi my.cnf

3.重新启动mysql
# 重新启动mysql
service mysqld restart

service mysqld restart

3.查看状态
# 查看状态
SHOW MASTER STATUS;

SHOW MASTER STATUS

六、从数据库的配置

1.寻找MySQL的配置文件 my.cnf
# 寻找MySQL的配置文件 my.cnf
find / -name my.cnf

find / -name my.cnf

2.编辑MySQL的配置文件 my.cnf
# 编辑MySQL的配置文件 my.cnf
vi my.cnf

vi my.cnf

3.重启MySQL的Docker容器并进入MySQL内
# 重启MySQL的Docker容器
docker restart 容器id
# 进入MySQL内
docker exec -it 容器id mysql -uroot -p123456
4.添加与主数据库的绑定关系并启动同步进程
CHANGE MASTER TO
MASTER_HOST='58.87.75.119',
MASTER_USER='root',
MASTER_PASSWORD='123456',
MASTER_LOG_FILE='mysql-bin.000003',
MASTER_LOG_POS=120;
# 启动同步进程
start slave;
5.查看状态
# 查看状态
show slave status\G;

show slave status\G;
当Slave_IO_Running和Slave_SQL_Running都为YES的时候,表示主从复制配置成功了。

七、查看从数据库发起的连接

# 在主数据库上可以查看由从数据库I/O线程向主数据库发起的连接
show processlist\G;

在这里插入图片描述

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值