前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >MYSQL 8 innodb replicaset 怎么自动化部署,与手动切换 (不是innodb cluster)

MYSQL 8 innodb replicaset 怎么自动化部署,与手动切换 (不是innodb cluster)

作者头像
AustinDatabases
发布2021-10-26 16:48:06
1.1K0
发布2021-10-26 16:48:06
举报
文章被收录于专栏:AustinDatabasesAustinDatabases

MYSQL 截止目前高可用的方式主要有传统的复制方式,MGR 也叫innodb cluster , 以及今天要说的 innodb replicatset。

实际上replicatset 就是复制方式的自动化部署以及切换的一个mysql的叫法,如果你要使用首先要把你的MYSQL 提高到 8.019版本以上,同时在安装完mysql后,你还需要安装 mysql shell 否则这个工作就泡汤了。

虽然高版本的 MYSQL 8.026 在安装上有点小问题,相信大部分同学都能解决,这里就不废话,假设你已经安装了两台 myql 8.026 和 mysql -shell的基础上,咱们开始安装 innodb replicatset.

这里先感性在理性,我们先实际操作 这里先准备两台机器,并安装好mysqlshell 与 mysql 8.026

1 通过mysql shell 登陆到mysql中 dba.configureReplicaSetInstance()

在键入命令后,后会给出提示是否进行创建新的用户,这里选择2 创建新的负责replicate 的用户并且给出密码,

整体的过程,全部为自动化,仅仅给出提示让你选择,修改一些必要的复制需要的参数。

COMMIT_ORDER

WRITESET

enforce_gtid_consistency

OFF

ON

gtid_mode

OFF

ON

replica_parallel_type

DATABASE

LOGICAL_CLOCK

replica_preserve_commit_order

OFF

ON

server_id

1

<unique ID>

1 你的账号通过root 来进行远程访问(对 root 账号进行修改)

2 或产生一个新的账号,权限仅仅是为远程访问制作

3 系统中修改了那些值,相关的值已经列到了上面,主要涉及了几个值

1 commit_order

2 gtid_mode

3 replica_parallel_type

4 replica_preserve_commit_order

上面的值是原值,后面的值是修改的值,可以看出来这里将性能作为主要的优化点,如 replica_parallel_type 对影响值进行了修改,同时也对复制中必然要进行的修改进行了操作如server_id

并将配置存在 mysqld-auto.cnf 中持久化存储

做完这些MYSQL服务会从起,让配置参数生效

或者你可以在安装服务器时就 建立一个数据库用户,在此时就可以通过新建的用户来进行工作,下面就是直接使用之前建立的数据库账号进行工作

测试建立一个复制集,replicatset, 此时在两个服务器上都进行相同的操作,另外用户rpelicate 的用户名和密码必须一样

在主服务器上建立主复制节点

通过刚才建立的复制账号对系统进行操作

replica = dba.getReplicaSet()

replica.status()

然后在主节点通过命令直接加入另外一个节点作为从节点

根据系统的提示,选择 clone 的方式将主节点的数据推送到从节点

此间如果你DNS 不给力或者没有配置 HOSTS 则Clone 会失败

那我们再次查看系统的复制状态

在从库中直接 show slave 从库已经完成正在该工作状态

当然如果认为mysql shell 仅仅就是代替了手动操作MYSQL的服务器的主从搭建,可就不是了,这里提供了手动的服务器的主从切换。

replica.setPrimaryInstance('192.168.198.201:3306')

可以看到主从的切换已经完成了,非常方便

那么急于高版本的MYSQL 8 的主从复制建立以及切换都比较方便和智能,通过mysql router 可以进行完全替代原有 MYSQL 高可用的方式。

基于上面的简单操作 ,整体MYSQL 在基于PAXOS 协议上的MYSQL INNODB CLUSTER 以外给了另一个传统意义上的复制功能自动化的选择,简化了DBA 复杂的劳动。

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2021-10-15,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 AustinDatabases 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
访问管理
访问管理(Cloud Access Management,CAM)可以帮助您安全、便捷地管理对腾讯云服务和资源的访问。您可以使用CAM创建子用户、用户组和角色,并通过策略控制其访问范围。CAM支持用户和角色SSO能力,您可以根据具体管理场景针对性设置企业内用户和腾讯云的互通能力。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档