下文主要给大家带来使用InnoDB Cluster解决MySQL数据库高可用方案,希望这些内容能够带给大家实际用处,这也是我编辑使用InnoDB Cluster解决MySQL数据库高可用方案这篇文章的主要目的。好了,废话不多说,大家直接看下文吧。
创新互联-专业网站定制、快速模板网站建设、高性价比瑶海网站开发、企业建站全套包干低至880元,成熟完善的模板库,直接使用。一站式瑶海网站制作公司更省心,省钱,快速模板网站建设找我们,业务覆盖瑶海地区。费用合理售后完善,十多年实体公司更值得信赖。MySQL InnoDB Cluster为MySQL提供了一个完整的高可用解决方案。MySQL Shell包含AdminAPI,能够轻松地配置和管理至少三个MySQL云服务器实例组,以作为InnoDB集群。每个MySQL云服务器实例都运行MySQL Group Replication,它提供了在innodb集群中复制数据的机制,并内置故障转移。MySQL Router可以根据您部署的集群自动配置自己,将客户端应用程序透明地连接到云服务器实例。如果云服务器实例发生意外故障,群集将自动重新配置。在默认的单主模式下,InnoDB集群有一个读写云服务器实例——主云服务器。多个辅助云服务器实例是主云服务器的副本。如果主云服务器出现故障,辅助云服务器将自动提升为主云服务器的角色。MySQL Router检测到这一点,并将客户端应用程序转发到新的主云服务器。
[root@wallet01 ~]# mysql -uroot -p Enter password: mysql> grant all privileges on *.* to 'root'@'wallet01' identified by 'abcd@1234'; Query OK, 0 rows affected, 1 warning (0.05 sec) mysql> flush privileges; Query OK, 0 rows affected (0.06 sec) [root@wallet01 ~]# yum install -y mysql-shell [root@wallet01 ~]# mysqlsh --log-level=DEBUG3 MySQL Shell 8.0.18 Copyright (c) 2016, 2019, Oracle and/or its affiliates. All rights reserved. Oracle is a registered trademark of Oracle Corporation and/or its affiliates. Other names may be trademarks of their respective owners. Type '\help' or '\?' for help; '\quit' to exit. MySQL JS > shell.connect('root@wallet01:3306') Creating a session to 'root@wallet01:3306' Please provide the password for 'root@wallet01:3306': ********* Save password for 'root@wallet01:3306'? [Y]es/[N]o/Ne[v]er (default No): y Fetching schema names for autocompletion... Press ^C to stop. Your MySQL connection id is 290 Server version: 5.7.27-log MySQL Community Server (GPL) No default schema selected; type \use <schema> to set one. <ClassicSession:root@wallet01:3306> MySQL wallet01:3306 JS > var cluster = dba.createCluster('walletCluster', {adoptFromGR: true}) A new InnoDB cluster will be created based on the existing replication group on instance 'wallet01:3306'. Creating InnoDB cluster 'walletCluster' on 'wallet01:3306'... Adding Seed Instance... Adding Instance 'wallet03:3306'... Adding Instance 'wallet01:3306'... Adding Instance 'wallet02:3306'... Resetting distributed recovery credentials across the cluster... Cluster successfully created based on existing replication group. MySQL wallet01:3306 JS > cluster.status(); { "clusterName": "walletCluster", "defaultReplicaSet": { "name": "default", "primary": "wallet01:3306", "ssl": "DISABLED", "status": "OK", "statusText": "Cluster is ONLINE and can tolerate up to ONE failure.", "topology": { "wallet01:3306": { "address": "wallet01:3306", "mode": "R/W", "readReplicas": {}, "role": "HA", "status": "ONLINE" }, "wallet02:3306": { "address": "wallet02:3306", "mode": "R/O", "readReplicas": {}, "role": "HA", "status": "ONLINE" }, "wallet03:3306": { "address": "wallet03:3306", "mode": "R/O", "readReplicas": {}, "role": "HA", "status": "ONLINE" } }, "topologyMode": "Single-Primary" }, "groupInformationSourceMember": "wallet01:3306" } MySQL wallet01:3306 JS > \quit Bye![root@wallet01 ~]# yum install -y mysql-router [root@wallet01 ~]# mysqlrouter --bootstrap root@wallet01:3306 --user=mysqlrouter --name=router01 Please enter MySQL password for root: WARNING: The MySQL server does not have SSL configured and metadata used by the router may be transmitted unencrypted. # Reconfiguring system MySQL Router instance... - Checking for old Router accounts - No prior Router accounts found - Creating mysql account 'mysql_router1_a8933v9tcn8v'@'%' for cluster management - Storing account in keyring - Adjusting permissions of generated files - Creating configuration /etc/mysqlrouter/mysqlrouter.conf # MySQL Router 'router01' configured for the InnoDB cluster 'walletCluster' After this MySQL Router has been started with the generated configuration $ /etc/init.d/mysqlrouter restart or $ mysqlrouter -c /etc/mysqlrouter/mysqlrouter.conf the cluster 'walletCluster' can be reached by connecting to: ## MySQL Classic protocol - Read/Write Connections: localhost:6446 - Read/Only Connections: localhost:6447 ## MySQL X protocol - Read/Write Connections: localhost:64460 - Read/Only Connections: localhost:64470 Existing configuration backed up to '/etc/mysqlrouter/mysqlrouter.conf.bak' [root@wallet01 ~]# /etc/init.d/mysqlrouter start Starting mysqlrouter: [ OK ] [root@wallet01 ~]# /etc/init.d/mysqlrouter status mysqlrouter (pid 24451) is running... [root@wallet02 ~]# yum install -y mysql-router [root@wallet02 ~]# mysqlrouter --bootstrap root@wallet01:3306 --user=mysqlrouter --name=router02 [root@wallet02 ~]# /etc/init.d/mysqlrouter start Starting mysqlrouter: [ OK ] [root@wallet02 ~]# /etc/init.d/mysqlrouter status mysqlrouter (pid 6906) is running... [root@wallet03 ~]# yum install -y mysql-router [root@wallet03 ~]# mysqlrouter --bootstrap root@wallet01:3306 --user=mysqlrouter --name=router03 [root@wallet03 ~]# /etc/init.d/mysqlrouter start Starting mysqlrouter: [ OK ] [root@wallet03 ~]# /etc/init.d/mysqlrouter status mysqlrouter (pid 18081) is running...对于以上关于使用InnoDB Cluster解决MySQL数据库高可用方案,大家是不是觉得非常有帮助。如果需要了解更多内容,请继续关注我们的行业资讯,相信你会喜欢上这些内容的。
另外有需要云服务器可以了解下创新互联cdcxhl.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。
网页标题:使用InnoDBCluster解决MySQL数据库高可用方案-创新互联
文章地址:https://www.cdcxhl.com/article10/peogo.html
成都网站建设公司_创新互联,为您提供网站排名、营销型网站建设、面包屑导航、网站改版、网站设计、品牌网站建设
声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联