mysql主从复制实现方式

主节点配置
创建账号sql:
CREATE USER ‘slave’@‘192.168.81.%’ IDENTIFIED WITH mysql_native_password BY ‘slave’;
授权:
GRANT REPLICATION SLAVE ON . TO ‘slave’@‘192.168.81.%’;
启动进制日志功能:
show global variables like ‘%log_bin%’;(查看)
mysql> show global variables like ‘%log_bin%’;
±--------------------------------±--------------------------------------+
| Variable_name | Value |
±--------------------------------±--------------------------------------+
| log_bin | ON |
| log_bin_basename | /usr/local/mysql/data/mysql-bin |
| log_bin_index | /usr/local/mysql/data/mysql-bin.index |
| log_bin_trust_function_creators | OFF |
| log_bin_use_v1_row_events | OFF |
±--------------------------------±--------------------------------------+
配置增量备份:
vi /etc/my.cnf
在配置文件中添加:
[mysqld]
log-bin=mysql-bin
server-id=1
(配置过文件之后 进行重启服务器)
Slave(从)节点配置
要先明确配置的架构Master-slave:

  1. 配置主节点
    1.1 配置账号
    1.2 开启binlog日志
  2. 配置从节点
    2.1 配置同步日志
    2.2 指定主节点的ip, 端口, 用户…
    2.3 启动从节点
    修改配置文件:
    vi /etc/my.cnf
    在配置文件中添加
    server-id = 2 //这是服务id系统会自动命名的
    relay_log = /usr/local/mysql/data/mysql-relay-bin //指定 中继日志的位置和命名
    relay_log-index = /usr/local/mysql/data/mysql-relay-bin.index
    log_slave_updates = 1
    read_only = 1
    指定主节点的ip,端口,用户:
    change master to master_host=‘192.168.29.102’,master_port=3306,master_user=‘slave’,master_password=‘slav e’,master_log_file=‘mysqlbin.000002’,master_log_pos=155;
    master_log_pos:开始同步位置
    开始启动:
    start slave;
    对于我们来说其中的信息主要是关注
    Slave_IO_Running: Yes
    Slave_SQL_Running: Yes
    (如果都是yes说明主从复制配置成功

说明:
MySQL数据库复制操作大致可以分成三个步骤:
1. 主服务器将数据的改变记录到二进制日志(binary log)中。
2. 从服务器将主服务器的binary log events 复制到它的中继日志(relay log)中。
3. 从服务器重做中继日志中的事件,将数据的改变与从服务器保持同步。
首先,主服务器会记录二进制日志,每个事务更新数据完成之前,主服务器将这些操作的信息记录在二进 制日志里面在事件写入二进制日志完成后主服务器通知存储引擎提交事务。
准备: 了解binlog日志,MySQL用户-权限mysql服务器配置复制不难,但是因为场景不同可能会存在一定 的差异化,总的来说分为一下几步:
1. 在服务器上创建复制账号。
2. 通知备库连接到主库并从主库复制数据。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值