当前位置:网站首页>MySQL主从
MySQL主从
2022-07-28 05:28:00 【【异度空间】】
MySQL主从
准备环境
- 主机
| 主机名 | IP地址1(外网) | IP地址2(内网) | 系统 | 其他 |
|---|---|---|---|---|
| master | 192.168.72.130 | 202.207.240.130 | CentOS7.5.1804 | MEM:2G ;CPU:2P/2C;DISK:15G |
| slaver | 192.168.72.131 | 202.207.240.131 | CentOS7.5.1804 | MEM:2G ;CPU:2P/2C;DISK:15G |
安装好mysql数据库服务
参考:https://blog.csdn.net/weixin_51720652/article/details/125998267
配置域名解析
主从复制原理
#####主从复制原理#####
1、在 master上开启 bin-log日志功能,记录更新、插入、删除的语句。
2、必须开启三个线程,主上开启io线程,从上开启io线程和sql线程。
3、slave的io线程去连接master,master通过io线程检查有slave过来的请求,请求日志、 postsion位置。
4、master将这些相应的日志返回给slave,slave自己去下载到本地的realy_log里面, 写入一个master-info日志记录同步的点。
5、slave的sql线程检查到realy-log日志有更新,然后在本地去exec执行。
6、主从同步是属于异步方式。
######################
master服务器配置
修改配置文件/etc/my.cnf
[mysqld] basedir = /application/mysql datadir = /application/mysql/data socket = /tmp/mysql.sock server_id = 1 log-bin = mysql-bin auto_increment_offset = 1 auto_increment_increment = 2 log_bin_trust_function_creators = 1 port = 3306 log_error = /application/mysql/data/error_mysql.err [mysql] socket = /tmp/mysql.sock prompt = wjz [\d]>
| 参数 | 功能 |
|---|---|
| server_id = 1 | 主数据库端ID号(master和slave主机id必须不一样) |
| log-bin = mysql-bin | 开启log-bin日志 |
| binlog-ignore-db = mysql | 不需要复制的数据库名 |
| binlog-do-db = master_slaver | 需要复制的数据库名,如果多个可重复设置,不设置默认复制所有的数据库 |
| auto_increment_offset = 1 | 该参数一般用在主主同步中,用来错开自增值,防止键值冲突 |
| auto_increment_increment = 2 | 这个参数一般用在主主同步中,用来错开自增值,防止键值冲突 |
| log_bin_trust_function_creators = 1 | 将函数复制到slaver |
重启数据库服务
登录mysql数据库,配置slaver服务器的用户名、密码、权限等
grant replication slave on *.* to 'slaver'@'%' identified by '111111'; flush privileges;查看master状态
show master status\G;
slaver服务器配置
修改配置文件/etc/my.cnf
[mysqld] basedir = /application/mysql datadir = /application/mysql/data socket = /tmp/mysql.sock server_id = 2 relay_log=relay-log read_only=ON port = 3306 log_error = /application/mysql/data/error_mysql.err [mysql] socket = /tmp/mysql.sock prompt = wjz [\d]>
参数说明:
| 参数 | 功能 |
|---|---|
| server_id = 2 | |
| relay_log=relay-log | 开启relay_log日志主服务器的bin-log日志会同步到该位置 |
| read_only=ON | 开启服务器只读 |
| replicate-do-db=master_slaver | slaver节点要复制的master节点中的数据库名称 |
- 重启数据库服务
- 设置要复制master的数据库,pos位置
change master to \
master_host='192.168.72.130',master_user='slaver',master_password='111111',\
master_log_file='mysql-bin.000002',master_log_pos=2081;
参数说明:
| 选项 | 含义 |
|---|---|
| master_host=‘192.168.72.130’ | master的IP地址 |
| master_user=‘slaver’ | master设置给slave的登录用户 |
| master_password=‘111111’ | master设置给slave的登录用户的密码 |
| master_log_file=‘mysql-bin.000002’ | master的二进制日志文件名称(参考show master status\G;) |
| master_log_pos=1095 | master的pos参数值(参考show master status\G;) |
登录slave的mysql,开启主从复制,并查看slave状态
start slave; show slave status\G;
边栏推荐
- [C language] string library function introduction and simulation
- @Postconstruct annotations and useful examples
- Graphic pipeline foundation (part outside)
- 水瓶效果制作
- What is the most practical gift for Tanabata? A gift that will never go wrong is worth buying
- [C language] dynamic memory management
- rancher部署实战
- AQS之CyclicBarrier源码解析
- [C language] custom structure type
- PKU-2524-Ubiquitous Religions(并查集模板)
猜你喜欢
![[pta-- use queues to solve the problem of monkeys choosing kings]](/img/54/94359fb3557ac07f7786ecf61a5409.png)
[pta-- use queues to solve the problem of monkeys choosing kings]

Battle plague Cup -- strange shape
![[c language] - step by step to achieve minesweeping games](/img/ee/49ddfcd948ccd5c8c9dec3c48c6112.png)
[c language] - step by step to achieve minesweeping games

MySQL index optimization

Redis cache design and performance optimization
![[pta---- output full arrangement]](/img/66/d1699cd55fa5ff4a55e3e150d02c1b.png)
[pta---- output full arrangement]

Yapi vulnerability hanging horse program chongfu.sh processing

What kind of air conduction Bluetooth headset with good configuration is recommended

Prometheus monitoring Nacos

How to simulate the implementation of strcpy library functions
随机推荐
软件开发中常见模型
Array solution script
Which is the best and most cost-effective air conduction headset recommended
项目编译NoSuch***Error问题
[c language] - step by step to achieve minesweeping games
Analysis of cyclicbarrier source code of AQS
mongo ssl 配置实战
HDU-5783 Divide the Sequence(贪心水题)
@PostConstruct注解及用处示例
软件测试(概念篇)
单元测试框架Jest搭配TypeScript的安装与配置
[realize the simple version of minesweeping games]
Mongo SSL configuration practice
Dynamic programming -- simple question type of climbing stairs
@Postconstruct annotations and useful examples
Fermat's theorem
Graphic pipeline foundation (part outside)
Leetcode brush question diary sword finger offer II 055. binary search tree iterator
HDU-2036-改革春风吹满地(多边形面积模板)
从普通查询商品到高并发查询商品的优化思路