mysql主从和mysql主主和半同步复制
发表于:2025-12-01 作者:千家信息网编辑
千家信息网最后更新 2025年12月01日,一、准备(主从都需要配置): yum -y install mysql mysql-server #安装mysql yum -y install ntpdate
千家信息网最后更新 2025年12月01日mysql主从和mysql主主和半同步复制
一、准备(主从都需要配置): yum -y install mysql mysql-server #安装mysql yum -y install ntpdate #安装时间同步 echo '*/1 * * * * /usr/sbin/ntpdate ntp1.aliyun.com &>/dev/null' >>/var/spool/cron/root #配置网络时间同步 service mysqld start #启动服务 chkconfig --add mysqld #添加为系统服务 chkconfig mysqld on #开启默认运行级别 二、主服务器配置:主配置文件默认为:/etc/my.cnf [mysqld] datadir=/var/lib/mysql socket=/var/lib/mysql/mysql.sock user=mysql symbolic-links=0 log-bin=master-bin #开启二进制日志文件 server-id=1 #设置服务器id,保证全局唯一 sync-binlog=1 #全局唯一的server-id innodb-flush-logs-at-trx-commit=1 innodb-support-xa=1 service mysqld restart #重启动服务 mysql> show global variables like '%server%'; #数据库id mysql> show master logs; #查看数据库二进制日志 mysql> show master status; #查看主服务器状态,记住二进制日志名,配置从服务器会用 mysql> grant replication slave,replication client on *.* to 'copy'@'192.168.0.50' identified by '123.com'; #授权192.168.0.50主机上的copy用户对所有库有复制权限 mysql> select Host,User,Password from mysql.user; #查看用户 三、从服务器配置: [mysqld] datadir=/var/lib/mysql socket=/var/lib/mysql/mysql.sock user=mysql symbolic-links=0 relay-log=slave-log #启用中继日志 server-id=10 #服务器id,全局唯一 read-only=1 #将服务器设置为只读模式(对拥有root权限的用户无效) service mysqld restart #重启动服务 mysql> change master to master_host='192.168.0.10',master_user='copy', master_password='123.com',master_log_file='master-bin.000001',master_log_pos=590; master_host #主服务器地址 master_user #拥有复制权限的用户 master_password #密码 master_log_file #从哪个二进制日志开始复制 master_log_pos #从二进制日志的什么位置开始复制 mysql> start slave; #开启从服务器 mysql> show slave status\G; #查看从服务器状态 四、验证主从: 主服务器: mysql> create database db_test; #创建数据库 从服务器: mysql> show databases; #查看服务器是否同步 五、主主复制 服务器A: [mysqld] #添加内容 log-bin=master-bin #启用二进制日志 relay-log=slave-log #启用中继日志 server-id=1 #服务器id,全局唯一 auto-increment-offset=1 #自增列起始 auto-increment-increment=2 #自增列一次步进(例:1,3,5,7,9...) mysql> grant replication slave,replication client on *.* to 'copy'@'192.168.0.50' identified by '123.com'; mysql> change master to master_host='192.168.0.50',master_user='copy', master_password='123.com',master_log_file='master-bin.000001',master_log_pos=106; mysql> start slave; mysql> show slave status\G; 服务器B: [mysqld] #添加内容 log-bin=master-bin relay-log=slave-log server-id=10 auto-increment-offset=2 #自增列起始 auto-increment-increment=2 #自增列一次步进(例:2,4,6,8,10...) mysql> grant replication slave,replication client on *.* to 'copy'@'192.168.0.10' identified by '123.com'; mysql> change master to master_host='192.168.0.10',master_user='copy', master_password='123.com',master_log_file='master-bin.000003',master_log_pos=106; mysql> start slave; mysql> show slave status\G; 六、半同步复制 要想使用半同步复制,必须满足以下几个条件: 1. MySQL 5.5及以上版本 2. 变量have_dynamic_loading为YES 3. 异步复制已经存在 主: mysql> INSTALL PLUGIN rpl_semi_sync_master SONAME 'semisync_master.so'; #安装插件 mysql> show plugins; #查看插件是否安装成功 mysql> SET GLOBAL rpl_semi_sync_master_enabled = 1; #启用半同步 mysql> show status like 'Rpl_semi_sync_master_status'; #查看是否在运行 从: mysql> INSTALL PLUGIN rpl_semi_sync_slave SONAME 'semisync_slave.so'; #安装插件 mysql> show plugins; mysql> SET GLOBAL rpl_semi_sync_slave_enabled = 1; #启用半同步 mysql> STOP SLAVE #关闭复制线程 mysql> START SLAVE #开启复制线程 mysql> show status like 'Rpl_semi_sync_slave_status'; #查看是否在运行 mysql> show variables like '%Rpl%'; #查看和半同步相关的服务器变量 rpl_semi_sync_master_enabled #是否启用半同步 rpl_semi_sync_master_timeout #等待超时时间 rpl_semi_sync_master_wait_for_slave_count #需要等待多少个slave应答,才能返回给客户端 mysql> show status like '%Rpl_semi%'; #半同步状态 Rpl_semi_sync_master_clients #当前半同步复制从的个数 七、和复制相关的文件 从节点: master.info:用于保存slave连接至master时的相关信息(账号,密码,服务器地址,复制的二进制文件等) relay-log.info:保存当前slave节点上已经复制到的二进制文件位置,和relay-log的位置
服务
服务器
同步
日志
二进制
配置
文件
全局
用户
位置
插件
数据
数据库
时间
权限
状态
运行
主从
内容
变量
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
dhcp服务器的作用是
英特尔至强服务器
浙江源视网络技术有限公司
游戏常用数据库
免费的外网服务器
软件开发朋友圈销售文案
运行打开服务器
魔兽世界数据库手机版
方舟忘记服务器
如何查看当前数据库密码
学校网络安全责任书和承诺书
适合新手软件开发的笔记本
计算机网络技术职业技术
怎么查论文被数据库收录
软件开发文档修订记录
大话数据库
网络安全漫画手抄报图片
epic验证数据库
软件开发类合同技术协议样本
直销软件开发需要的技术
天天拍车软件开发方
软件开发 签合同要注意
4g网络技术是谁的
网络安全录取通知书
公共生物信息数据库
9 岁小孩学习网络安全
能源互联网 弘讯科技
升方网络技术有限公司怎么样
陕西网络安全服务公司
数据库的安全框架