首页 > 数据库技术 > 详细

mysql的主从级联复制的配置

时间:2019-06-22 19:24:05      阅读:158      评论:0      收藏:0      [点我收藏+]

作者:邓聪聪

  在高级的应用环境中都需要用到高可用,这里配置的是mysql的主从级联复制

  试验环境:

  主节点 192.168.0.101/24

  辅助节点+辅助节点 192.168.0.102/24 ,192.168.0.103/24

  配置(CentOS Linux release 7.6.1810 (Core) ,mysql  Ver 15.1 Distrib 5.5.60-MariaDB, for Linux (x86_64) using readline 5.1)

master配置:

[mysqld]
server_id=1
log-bin=/data/mysql_bin
binlog_format=row
skip-name-resolve
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
# Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0
# Settings user and group are ignored when systemd is used.
# If you need to run mysqld under a different user or group,
# customize your systemd unit file for mariadb according to the
# instructions in http://fedoraproject.org/wiki/Systemd

[mysqld_safe]
log-error=/var/log/mariadb/mariadb.log
pid-file=/var/run/mariadb/mariadb.pid

#
# include all files from the config directory
#
!includedir /etc/my.cnf.d

[root@mysql-master mariadb]# 

//1;定义全局服务ID,注意,此ID必须保证唯一性,2;定义2进制日志文件的路径,确保该目录的所属权限,如果不是mysql无法启动mysql服务,3;我这里配置二进制日志文件基于行(3种模式,根据业务需求自行决定)保存,4;配置mysql不参与DNS解析

MariaDB [(none)]> grant replication slave on *.* to repliuser@% identified by 123456;//定义复制用户的权限

辅助节点:

[root@mysql-node1 ~]# cat /etc/my.cnf
[mysqld]
server_id=2
read_only=ON
log-bin=/data/mysql_bin
log_slave_updates
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
# Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0
# Settings user and group are ignored when systemd is used.
# If you need to run mysqld under a different user or group,
# customize your systemd unit file for mariadb according to the
# instructions in http://fedoraproject.org/wiki/Systemd

[mysqld_safe]
log-error=/var/log/mariadb/mariadb.log
pid-file=/var/run/mariadb/mariadb.pid

#
# include all files from the config directory
#
!includedir /etc/my.cnf.d

[root@mysql-node1 ~]# 

//1;同主节点配置,从节点配置数据库只读权限(root除外),并同步更新主节点的二进制日志文件

MariaDB [(none)]> CHANGE MASTER TO
    ->   MASTER_HOST=192.168.0.101,//同步的服务器
    ->   MASTER_USER=repliuser,//用户名
    ->   MASTER_PASSWORD=123456,//密码
    ->   MASTER_PORT=3306,//端口
    ->   MASTER_LOG_FILE=mysql_bin.000002,同步服务器上的二进制文件,选择需要同步的内容起点
    ->   MASTER_LOG_POS=245;//起点位置,245位一个新文件的初始位置
MariaDB [(none)]> start slave;//启动复制进程
MariaDB [(none)]> show slave status\G//查看进程状态

 

从节点:

[root@mysql-node2 ~]# cat /etc/my.cnf
[mysqld]
server_id=3
read_only=ON
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
# Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0
# Settings user and group are ignored when systemd is used.
# If you need to run mysqld under a different user or group,
# customize your systemd unit file for mariadb according to the
# instructions in http://fedoraproject.org/wiki/Systemd

[mysqld_safe]
log-error=/var/log/mariadb/mariadb.log
pid-file=/var/run/mariadb/mariadb.pid

#
# include all files from the config directory
#
!includedir /etc/my.cnf.d

[root@mysql-node2 ~]# 

// 只需要配置数据库的只读即可

MariaDB [(none)]> CHANGE MASTER TO
    ->   MASTER_HOST=192.168.0.102,//同步的服务器
    ->   MASTER_USER=repliuser,//用户名
    ->   MASTER_PASSWORD=123456,//密码
    ->   MASTER_PORT=3306,//端口
    ->   MASTER_LOG_FILE=mysql_bin.000002,同步服务器上的二进制文件,选择需要同步的内容起点
    ->   MASTER_LOG_POS=245;//起点位置,245位一个新文件的初始位置
MariaDB [(none)]> start slave;//启动复制进程
MariaDB [(none)]> show slave status\G//查看进程状态

 

mysql的主从级联复制的配置

原文:https://www.cnblogs.com/dengcongcong/p/11069985.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!