mysql授权replication_MySQL Replication (MySQL的主从复制)

本文详细介绍了MySQL主从复制的配置过程,包括主服务器开启二进制日志、设置复制用户权限、从服务器配置及启动复制。主从复制用于冗余、负载均衡和安全备份,涉及异步、半同步等多种复制模式。通过实际操作,演示了在CentOS7系统中配置主从服务器的步骤,确保时间同步,并展示了如何授权、启动复制以及监控复制状态。
摘要由CSDN通过智能技术生成

MySQL Replication(MySQL的主从复制)

主从数据库的工作模型:工作要点:1、主服务器要开启二进制日志 2、从服务器要有一个用户账户,这个账户要有权限到主服务器上请求二进制事件,请求完后保存到本地。 3、从服务器上要有一个线程,从中继日志中不断的读事件,在本地replay。

Master/Slave

Master: write/read

Slaves: read

为什么?

冗余:promte(提升为主),异地灾备

人工

工具程序:MHA

负载均衡:转移一部分“读”请求;

支援安全的备份操作;

测试;

...

主/从架构:

异步复制:

半同步复制:

一主多从;

一从一主;

级联复制;

循环复制;

双主复制;

一从多主:

每个主服务器提供不同的数据库;

配置:

时间同步;

复制的开始位置:

从0开始;

从备份中恢复到从节点后启动的复制;

主从服务器mysqld程序版本不一致?

主服务器:

配置文件my.cnf

server_id=#

log_bin=log-bin

启动服务:

mysql> GRANT REPLICATION SLAVE,REPLICATION CLIENT ON *.* TO 'USERNAME'@'HOST' IDENTIFIED BY 'YOUR_PASSWORD';

mysql> FLUSH PRIVILEGES;

从服务器:

配置文件my.cnf

server_id=#

relay_log=relay-log

启动服务:

mysql> CHANGE MASTER TO MASTER_HOST='HOST',MASTER_USER='USERNAME',MASTER_PASSWORD='YOUR_PASSWORD',MASTER_LOG_FILE='BINLOG',MASTER_LOG_POS=#;

mysql> START SLAVE [IO_THREAD|SQL_THREAD];

mysql> SHOW SLAVE STATUS;

课外作业:基于SSL的复制的实现;

配置主从数据库实例

1、加入使用centos7(2)和centos7(3)这两台虚拟机当做节点,(2)做主,(3)做从。第一步先同步时间

两台主机分别执行ntpdate 10.1.0.1

3c8ce6380daa33c267ccb0e2e66a02de.png

配置/etc/chrony.conf文件

3c8ce6380daa33c267ccb0e2e66a02de.png

时间节点已经同步

2、在节点1(centos7(2)),配置/etc/my.cnf

log-bin=master-log 启动二进制日志 server-id=1 设置id

3c8ce6380daa33c267ccb0e2e66a02de.png

启动mysql服务

systemctl start mariadb.service

验证二进制日志文件

3c8ce6380daa33c267ccb0e2e66a02de.png

主节点连入数据库,执行show master status,查看是从哪个文件,哪个位置开始。即便从0开始,待会复制时也要指明从哪个文件哪个位置开始。

3c8ce6380daa33c267ccb0e2e66a02de.png

3、在节点2(centos7(3)),配置从节点,vim /etc/my.cnf

3c8ce6380daa33c267ccb0e2e66a02de.png

启动mysql服务

systemctl start mariadb.service

查看日志文件

3c8ce6380daa33c267ccb0e2e66a02de.png

4、主服务器上,授权一个拥有连接复制权限的账号

3c8ce6380daa33c267ccb0e2e66a02de.png

然后FLUSH PRIVILEGES

主从上面只需要业务同步就可以,不需要授权同步

3c8ce6380daa33c267ccb0e2e66a02de.png

这时,主服务器授权已经完成,从服务器就可以连上了

3c8ce6380daa33c267ccb0e2e66a02de.png

查看从服务器使用与否

show slave status

这里还没有启动复制功能,启动复制功能start slave

3c8ce6380daa33c267ccb0e2e66a02de.png

3c8ce6380daa33c267ccb0e2e66a02de.png

查看,已经复制过来了

3c8ce6380daa33c267ccb0e2e66a02de.png

在主节点上做一些创建类的操作,创建一个mydb2数据库,通常从节点上可以查看到这个数据库

3c8ce6380daa33c267ccb0e2e66a02de.png

3c8ce6380daa33c267ccb0e2e66a02de.png

注意:复制是单向的,从服务器上创建数据库,主服务器无法显示

让从服务器只能读,不能写,设置成只读

3c8ce6380daa33c267ccb0e2e66a02de.png

再也不释放锁,谁也写不进来

3c8ce6380daa33c267ccb0e2e66a02de.png

这样的话从线程也写不了了。所有只能寄托从服务器不要误操作。

原创文章,作者:15152188070,如若转载,请注明出处:http://www.178linux.com/60261

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值