mysql 双活_Mysql双活方案
#### 说明
Mysql主主互备即为两个mysql的互为备份机
##### Windows下安装步骤(Linux下步骤类似,基本就是装上mysql,然后修改配置来完成主从的设置)
- step1、下载mysql的zip包(目前测试版本为5.7.28不带debug的包)并解压两次,文件夹改名为master和slave,要安装两台机器或者一台机器用不同的端口装两个实例
- step2、在mster和slave文件夹下新建数据库配置文件my.ini(linux则直接在安装完成后修改my.conf配置文件),配置说明见文末,具体特殊参数设置请自行查询调整设置。
- step3、以管理员身份运行cmd,并cd到master和slave下的bin目录下(windows下切盘只需输入"盘符:"即可)
- step4、都执行安装前初始化命令完成初始化操作 mysqld --initialize --user=mysql --console 执行完成可以看到输出中生成了一个零时密码root@localhost:后端的一串字符,记录下来
- step5、执行服务安装命令 mysqld --install 服务名称(master和slave) --defaults-file="my.ini的全路径" 可看到提示服务安装完成
- step6、启动服务 net start master|slave(刚刚定义的服务名称)
- step7、登录mysql mysql -uroot -p [-P] [-h]密码为安装时生成的零时密码,登录完成后修改mysql密码,set password=password("密码")
- step8、登录数据库后执行show master status;记住File和Position的值
- step9、登录从库(两台互为从库),设置各自的主库 change master to master_host='主库的IP',master_port=主库的端口,master_user='登录主库用户名',master_password='登录主库的密码',master_log_file='主库中的File值',master_log_pos=主库中的Position值;
- step10、启动slave 从库中执行start slave; 可以新建库和表来测试是否已经自动完成同步
##### 备注
参考文档:https://www.cnblogs.com/yeya/p/11878009.html?utm_source=gold_browser_extension
***
#### master1
```
[client]
# 端口号,默认是3306,同一机器下不同的mysql实例端口号不能相同,不同机器可以直接不写即使用3306是端口
port=3307
default-character-set=utf8
[mysqld]
#主库配置(主库配置和备份配置主主时都需要配置,主备时对应配置一项即可)
server_id=1 ###主备的server_id需不同
log_bin=master-bin ###主主备份时必填,slave通过此文件进行同步
log_bin-index=master-bin.index
####master写入二进制配置
###binlog-do-db=test 指定需要写入二进制文件的库
binlog-ignore-db=mysql,information_schema,performance_schema ###指定不写入二进制文件中进行同步的库
auto-increment-increment=2 ###id自增步长
auto-increment-offset=1 ###id自增起始ID
####备份配置
relay-log-index=slave-relay-bin.index
relay-log=slave-relay-bin ###必填,备份时根据的二进制
log-slave-updates=ON ### 主主时需设置为ON
####slave同步配置
###replicate-do-db=test 指定需要同步的库
replicate-ignore-db=mysql,information_schema,performance_schema ### 备份过滤不同步的库
# 设置为自己MYSQL的安装目录
basedir=E:/software/mysql/master
# 设置为MYSQL的数据目录,data文件夹由mysql自动生成
datadir=E:/software/mysql/master/data
port=3307
character_set_server=utf8
sql_mode=NO_ENGINE_SUBSTITUTION,NO_AUTO_CREATE_USER ###sql查询时的参数,也可安装后重新设置
# 开启查询缓存
explicit_defaults_for_timestamp=true
```
***
#### master2
```
[client]
# 端口号,默认是3306,同一个环境下不同的mysql实例端口号不能相同
port=3308
default-character-set=utf8
[mysqld]
#主库配置
server_id=2
log_bin=master-bin
log_bin-index=master-bin.index
####master写入二进制配置
###binlog-do-db=test 指定需要写入二进制文件的库
binlog-ignore-db=mysql,information_schema,performance_schema
auto-increment-increment=2
auto-increment-offset=2
####slave同步配置
###replicate-do-db=test 指定需要同步的库
replicate-ignore-db=mysql,information_schema,performance_schema
###从库配置
relay-log-index=slave-relay-bin.index
relay-log=slave-relay-bin
log-slave-updates=ON
# 设置为自己MYSQL的安装目录
basedir=E:/software/mysql/slave
# 设置为MYSQL的数据目录,data文件夹由mysql自动生成
datadir=E:/software/mysql/slave/data
port=3308
character_set_server=utf8
sql_mode=NO_ENGINE_SUBSTITUTION,NO_AUTO_CREATE_USER
# 开启查询缓存
explicit_defaults_for_timestamp=true
```
#### windows下双活方案
- 场景:两台WindowsServer上分别安装了两个mysql数据库(主主互备)
- 说明:在其中一台机器上安装mysql-router,配置destinations(mysql server列表)为两台WindowsServer主机,模式为read-write,即可做到访问mysql-router主机路由到两个mysql上,原则上访问的为第一台mysql,当第一台挂掉可自动切换到第二台上,从而实现双活
- 安装说明:
- step1:当在两台数据库服务器上安装时直接下载windows版本(https://cdn.mysql.com//Downloads/MySQL-Router/mysql-router-8.0.18-winx64.zip),解压到指定安装目录(建议在非C盘下)
- step2:拷贝文末内容(mysqlrouter.conf)到解压目录下,生成配置文件mysqlrouter.conf,根据实际情况调整配置具体路径和数据库服务器的IP及端口
- step3:将mysql-router的bin目录加到系统环境变量或者cmd下切换到mysql-router的bin目录下,然后执行命令“mysqlrouter -c mysqlrouter.conf文件的路径”,即可启动mysql-router
- step4:应用服务(configmap.yaml)的mysql配置只需配置为mysql-router的所在机器的IP及设定的端口即可
- 备注说明:mysql-router的具体安装地址建议直接安装在应用服务器上,可以保证数据库服务器中任意一台挂掉不影响服务
```shell mysqlrouter.conf
[DEFAULT]
# 日志路径
logging_folder=E:\software\mysql-router\log
# 插件路径
plugin_folder=E:\software\mysql-router\lib
# 配置路径
config_folder=E:\software\mysql-router
# 运行时状态路径
#runtime_folder=E:\software\mysql-router\run
# 数据文件路径
data_folder=E:\software\mysql-router\data
[logger]
# 日志级别
level=INFO
# 以下选项可用于路由标识的策略部分
[routing:test]
# Router地址
bind_address=0.0.0.0:3309
# Router端口
#bind_port=3309
# 读写模式
mode=read-write
# 目标服务器
destinations=127.0.0.1:3307,127.0.0.1:3308
```
mysql 双活_Mysql双活方案相关推荐
- mysql keepalived双主双活_mysql高可用架构方案之中的一个(keepalived+主主双活)
Mysql双主双活+keepalived实现高可用 文件夹 1.前言... 4 2.方案... 4 2.1.环境及软件... 4 2.2.IP规划... 4 2.3.架构图... 4 3.安装设置MY ...
- 基于阿里云的双活灾备方案的设计
基于阿里云的双活灾备方案的设计 说起容灾备份方案,一般说来有下面这个发展方向: 下面简单介绍下各个方案的内容: 冷备:离线手工对数据进行容灾备份,当发生故障时,手工切换到备用环境 热备:实时对主 ...
- GBase 8a 高可用集群同城双活灾备方案
GBase 8a数据库集群支持主备模式的同城双活灾备方案,其原理为主集群承担应用,对数据进行批量操作(包括数据加载和数据加工),在主集群加工完数据之后,每天特定时间点将数据增量同步到同城双活的备集群当 ...
- 高可用mysql笔记_MySQL笔记-高可用方案
MySQL笔记-高可用方案 一.概述 MYSQL高可用方案有多种,本次针对其中部分方案进行实践.包括主从,双主,myql+keepalived, mysql+mycat+keepalived. 纸上得 ...
- mysql 内存大_MySQL数据库之MySQL大内存配置方案
本文主要向大家介绍了MySQL数据库之MySQL大内存配置方案 ,通过具体的内容向大家展现,希望对大家学习MySQL数据库有所帮助. MySql noinstall-5.1.xx-win32 配置(原 ...
- mysql 分区表_分享一份生产环境mysql数据库分区表改造方案
概述 简单分享下最近做的一个mysql数据库分区表改造方案,仅供参考. 思路:(假设在2020.7.21进行表分区改造) 没时间,就不画图说明了 1.创建与原始表一样结构的新表,新分区 2.往新表插入 ...
- 史上最全MySQL 大表优化方案(长文)
转载自 史上最全MySQL 大表优化方案(长文) 当MySQL单表记录数过大时,增删改查性能都会急剧下降,可以参考以下步骤来优化: 一.单表优化 除非单表数据未来会一直不断上涨,否则不要一开始就考虑 ...
- MySQL 大表优化方案(1)
转载自 干货!!!MySQL 大表优化方案(1) 当MySQL单表记录数过大时,增删改查性能都会急剧下降,可以参考以下步骤来优化: 单表优化 除非单表数据未来会一直不断上涨,否则不要一开始就考虑拆分 ...
- MySQL迁移到ClickHouse方案
MySQL迁移到ClickHouse方案 这篇文章主要介绍了mysql迁移到clickhouse的几种方法,本文给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下.数据迁移需要从mys ...
- 10分钟搭建MySQL Binlog分析+可视化方案
日志服务最近在原有 30+ 种数据采集渠道 基础上,新增 MySQL Binlog.MySQL select 等数据库方案,仍然主打快捷.实时.稳定.所见即所得的特点. 以下我们以用户登录数据库作为案 ...
最新文章
- 鸿蒙法则的能力,真正厉害的人,都懂得这五个做事法则,如能悟透,成功不难...
- 03.LoT.UI 前后台通用框架分解系列之——多样的表格
- 人生时间计算器_工具拯救效率,高效拯救人生!70个全国工程人实用小工具+算量表格...
- python-websocket-server hacking
- d778: NOIP2009 2.Hankson的趣味题
- html基础之 input:type
- 灵敏度和稳定性能兼具 新气体传感器技术适用于工业应用
- 模块已加载,但找不到入口点DLLRegisterServer
- synchronized-锁总结
- c语言continuo语句例子,现在进行时语法资源Present Continuous Tense(附资源)
- ioi 赛制_钟子谦IOI2019参赛总结
- 【python】math函数库介绍及其例题
- 空格的两个ascii值
- 悲观锁和乐观锁的区别,怎么实现
- 用python批量修改后缀名
- 鸿蒙os官网2.0,鸿蒙 OS 2.0正式发布,看看用户体验评价,内附可升级型号名单!...
- Docker超详细版教程通俗易懂 -之- 进阶篇
- Kibana【从无到有从有到无】【搜索引擎】【K4】可视化
- java实现自动售货机
- openGauss+KeepAlived(故障转移)