当前位置:Gxlcms > mysql > MariaDB之各架构复制汇总

MariaDB之各架构复制汇总

时间:2021-07-01 10:21:17 帮助过:18人阅读

具体实验环境所需要的配置名称(alias)扮演角色IPMySQL版本系统平台A(node3)主服务器172.15.251.23MariaDB10CentOS6.564bitB(node4)从服务器,相对于A(级连复制

16,skip_slave_start 参数用于在主服务器中设置,主服务器启动时,是否对从服务器启动做启动检查

三,基本主从复制的具体实现(注:生产中,以下的配置是绝对不可能出现的,

主从复制配置概述:主服务器开启二进制日志功能,从服务器不用开启,但一定要开启中继日志功能,在主服务器上新建有复制权限的用户,在使用change master to 命令定义主服务器时,要注意其正在使用的二进制日志文件,及当前所修改的记录的位置

1,主从都为新建服务器(干净)

1)A主服务器文件my.cnf增加以下内容(思密达,配置的内容太少了吧,>_<,其实默认的参数还是很多的)

server-id= 10

log-bin=/mydata/binlogs/master-bin

##二进制日志文件存放目录及文件名称前缀,须先创建目录且属主属组为mysql

binlog_format=row ##其实这个参数也可以省略

在主服务器上新建admin用户具有复制权限

命令:grant replication slave,replication client on *.* to admin@'172.15.*.*' identified by 'admin'

2)B主服务器文件my.cnf增加以下内容(从服务器无须开启二进制日志)

server-id= 20

relay_log=/mydata/relaylogs/relay_logs

3)启动A主服务器并查看当前使用的日志文件及日志记录的位置,如下图

wKiom1NOMKfisOyfAAQG2z3jT-4696.jpg


4)启动B从服务器,使用命令change master to 设置与主服务器同步复制的相关信息,,如下图

wKiom1NOMgyCRwI4AAWKot62K5k575.jpg

5)在主服务器上新建库,表,并在从服务器上进行查看

wKioL1NOMl3TVXRjAAauYsF6ddA404.jpg

2,主服务器运行一段时间,增加一从服务器(主服务器有生产数据库,增加干净的从服务器)

模拟环境描述:

-----A服务器已经有school数据库,里面有表courses,stutents,teachers,数据库testschool中有表test,两库中的表都有数据记录

-----新增加的从服务器为新机器

1)对主服务器先进行数据库备份操作,并记录当前主服务器正在使用二进制日志文件及记录的位置

首先备份数据库:

mysqldump -uroot -p --databases school testschool --lock-tables --flush-logs --master-data=2 >school_testschool.sql

复制备份的库到从服务器上

scp school_testschool.sql 172.15.251.24:/tmp

wKioL1NONPyy8_aoAAGpKQ6SKAE753.jpg

3)查看主服务器上的日志文件及记录位置信息及在B从服务器上导入主服务器上的库的备份,并change master to

wKiom1NONvjycshEAAV4M6u7g3Y307.jpg

查看从服务器的工作状态正常

wKiom1NON2vxAU1nAAFmD4iiabk598.jpg

3,主从半同步具体配置实现

主从半同步复制概述:半同步技术由google研发并开源提供给mysql,支持版本为mysql5.5以后,是属于插式式安装方式,,工作特点:主从复制架构中,往往会有多台从服务器,如果多台从服务器同时发io线程同步二进制日志,事必会造成主服务器上更大的IO压力,而半同步复制机制是,主服务器只选择一台从服务器,保证完成同步复制后,其它的从服务器就不再考虑是否完成同步复制,多台从服务器避免了同时从服务器同时iothread,最终还是会同步完成复制

具体配置:

1)主从同步及chang master to部分请参照上面( 1,主从都为新建服务器(干净))

2)主从服务器相关同步插件安装

wKioL1NOUzqSfeSrAAe_dU0Torw702.jpg

3)半同步复制成功

wKioL1NOVAaSouQAAAjdIYPTHJI540.jpg

4,主-从级联复制架构具体配置实现

人气教程排行