MySQL 创建集群

发布于 2023-02-13 13:05:22 字数 2852 浏览 48 评论 0

首先使用域名的方式登录数据库实例,使用 localhost 方式登录会提示权限问题!

使用 dba.createCluster(name) 命令可以创建集群并返回集群对象cluster,使用status()命令查看集群状态,可以看到已经有一台机器在集群中了。

使用 cluster.addInstance(instance) 命令添加更多数据库实例到集群中。这里参数使用域名方式,需要至少3个数据库实例才能确保容许一个实例故障。

到这里集群已经形成,但是这里的集群元数据没有持久化到配置文件中,重启实例后,将不会自动加入集群。需要连接并登陆每个数据库实例并在本机执行 dba.configureLocalInstance() 命令持久化配置信息。这样可以确保实例意外离开集群,重启实例后能够重新自动加入集群中。

持久化实例1的配置,同样的方式持久化实例2和实例3。注意持久化只读实例的配置会提示暂时禁用只读开关 super_read_only,请选择y执行。

可以查看实例的配置文件 my.cnf,已经自动加入了集群相关的配置,实例 1 的如下:

[mysqld]
# server configuration
datadir=/home/mysql/data/s1
basedir=/home/mysql/mysql-5.7/
report_host=ic-1
port=24801
socket=/home/mysql/data/s1/mysql.sock
log_slave_updates = ON
server_id = 1214009101
relay_log_info_repository = TABLE
master_info_repository = TABLE
transaction_write_set_extraction = XXHASH64
binlog_format = ROW
disabled_storage_engines = MyISAM,BLACKHOLE,FEDERATED,CSV,ARCHIVE
report_port = 24801
binlog_checksum = NONE
enforce_gtid_consistency = ON
log_bin
gtid_mode = ON
group_replication_allow_local_disjoint_gtids_join = OFF
group_replication_allow_local_lower_version_join = OFF
group_replication_auto_increment_increment = 7
group_replication_bootstrap_group = OFF
group_replication_components_stop_timeout = 31536000
group_replication_compression_threshold = 1000000
group_replication_enforce_update_everywhere_checks = OFF
group_replication_flow_control_applier_threshold = 25000
group_replication_flow_control_certifier_threshold = 25000
group_replication_flow_control_mode = QUOTA
group_replication_force_members
group_replication_group_name = 6d3c634e-01a7-11e8-9c80-000c296f3284
group_replication_group_seeds
group_replication_gtid_assignment_block_size = 1000000
group_replication_ip_whitelist = AUTOMATIC
group_replication_local_address = ic-1:34801
group_replication_member_weight = 50
group_replication_poll_spin_loops = 0
group_replication_recovery_complete_at = TRANSACTIONS_APPLIED
group_replication_recovery_reconnect_interval = 60
group_replication_recovery_retry_count = 10
group_replication_recovery_ssl_ca
group_replication_recovery_ssl_capath
group_replication_recovery_ssl_cert
group_replication_recovery_ssl_cipher
group_replication_recovery_ssl_crl
group_replication_recovery_ssl_crlpath
group_replication_recovery_ssl_key
group_replication_recovery_ssl_verify_server_cert = OFF
group_replication_recovery_use_ssl = OFF
group_replication_single_primary_mode = ON
group_replication_ssl_mode = DISABLED
group_replication_start_on_boot = ON
group_replication_transaction_size_limit = 0
group_replication_unreachable_majority_timeout = 0
auto_increment_increment = 1
auto_increment_offset = 2

集群结构变化后,务必连接到每个数据库实例持久化配置,比如新增了数据库节点等。好了,集群搭建 OK,下面介绍使用 mysqlRouter 实现高可用。

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据

关于作者

紧拥背影

暂无简介

0 文章
0 评论
23 人气
更多

推荐作者

隔纱相望

文章 0 评论 0

昵称有卵用

文章 0 评论 0

梨涡

文章 0 评论 0

蓝咒

文章 0 评论 0

白芷

文章 0 评论 0

樱娆

文章 0 评论 0

    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文