mysql 主从配置

mysql 主从配置

主机

cat /etc/my.cnf

mysqld

1. 唯一标识(主库必须设为1,从库不能重复)

server-id = 1

2. 开启二进制日志(主从复制核心,记录所有数据变更)

log-bin = mysql-bin

3. binlog格式(推荐ROW,精准复制行级变更)

binlog_format = ROW

4. 同步时忽略mysql系统库(可选,减少binlog体积)

binlog-ignore-db = mysql

5. 基础配置(确保正常运行)

datadir = /var/lib/mysql

socket = /var/lib/mysql/mysql.sock

user = mysql

mysqld_safe

log-error = /var/log/mysqld.log

pid-file = /var/lib/mysql/19c01.pid

client

socket = /var/lib/mysql/mysql.sock

从机

mysqld

1. 唯一标识(必须≠主库的1,设为2)

server-id = 2

2. 开启中继日志(从库复制核心,接收主库binlog)

relay-log = mysql-relay-bin

3. 禁用从库的binlog(从库仅同步,不生成自己的binlog,可选)

log-bin = OFF

4. 从库只读(防止误写入,super权限用户仍可写)

read_only = 1

5. 基础配置

datadir = /var/lib/mysql

socket = /var/lib/mysql/mysql.sock

user = mysql

mysqld_safe

log-error = /var/log/mysqld.log

pid-file = /var/lib/mysql/19c02.pid

client

socket = /var/lib/mysql/mysql.sock

登录主机:

创建复制用户(允许从库19c02访问,替换为19c02的IP)

CREATE USER 'repl'@'192.168.158.132' IDENTIFIED BY 'root';

授予复制权限(仅允许复制,无其他权限)

GRANT REPLICATION SLAVE ON *.* TO 'repl'@'192.168.158.132';

刷新权限

FLUSH PRIVILEGES;

查看主库状态(关键!记录File和Position值,决定下面MASTER_LOG_POS的值; )

SHOW MASTER STATUS;

登录从机

停止原有复制(首次配置可忽略,防止报错)

STOP SLAVE;

配置主库连接信息(替换<>内的内容)

CHANGE MASTER TO

MASTER_HOST='192.168.158.131',

MASTER_USER='repl',

MASTER_PASSWORD='root',

MASTER_LOG_FILE='mysql-bin.000001',

MASTER_LOG_POS=660;

启动从库复制进程

START SLAVE;

查看从库复制状态(核心!验证同步是否正常)

SHOW SLAVE STATUS\G;

相关推荐
李兆龙的博客7 小时前
问津集 #26:Lakebase——Postgres 的版本化页面存储、数据库分支与计算弹性
数据库
倔强的石头_9 小时前
聊聊金仓KFS:一款把数据同步软件做扎实的产品
数据库
闲云野鹤在人间9 小时前
MySQL|从理论、安装、备份到主从复制、MHA高可用详解
linux·运维·数据库·mysql·云计算
禾小西9 小时前
Redis:从两大维度和三大主线建立知识体系
数据库·redis·缓存
禾小西10 小时前
Redis 数据结构:快速的 Redis 有哪些慢操作?
数据结构·数据库·redis
数据库小学妹10 小时前
数据共享交换平台选型:交换方式对比与避坑指南
数据库·信创·数据同步·数据交换平台·政务数据共享·数据共享交换平台·数据库底座
loong_XL12 小时前
决策模型做内容安全检测:从踩坑到上线
数据库·安全·jev·决策模型
这个DBA有点耶12 小时前
数据库双轨并行实战:全量并行策略、增量延迟控制、双向回切与一致性校验
数据库·架构·dba
adinnet202612 小时前
保单、赔付与渠道问数:保险经营数据如何实现按需查询
大数据·数据库·人工智能
云贝贝贝13 小时前
PostgreSQL 分区表:从设计到运维,大表不再卡
运维·数据库·postgresql