我是靠谱客的博主 标致马里奥,最近开发中收集的这篇文章主要介绍MySQL InnoDB Cluster搭建集群搭建,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

官方文档地址:https://dev.mysql.com/doc/refman/5.7/en/mysql-innodb-cluster-userguide.html

MySQL InnoDB Cluster是一套完整的、高可用的Mysql解决方案。一组MySQL服务器可以配置为一个MySQL集群。在默认的单主节点模式下,集群服务器具有一个读写主节点和多个只读辅节点。辅助服务器是主服务器的副本。客户端应用程序通过MySQL Router连接到主服务程序。如果主服务连接失败,则次要的节点自动提升为主节点,MySQL Router请求到新的主节点。InnoDB Cluster不提供NDB Cluster支持。


一个高可用的数据库解决方案,可以使用下面的MySQL集群技术:

      MySQL Shell 1.0.9或更高的版本

MySQL Router 2.1.3或更高的版本

MySQL Server 5.7.17或更高的版本

这些技术如何协同工作如下图所示:

 

MySQL安装

MySQL下载地址https://dev.mysql.com/downloads/

rpm安装包安装需要PythonPerl环境:

mysql-community-client-5.7.18-1.fc26.x86_64.rpm

mysql-community-common-5.7.18-1.fc26.x86_64.rpm

mysql-community-devel-5.7.18-1.fc26.x86_64.rpm

mysql-community-libs-5.7.18-1.fc26.x86_64.rpm

mysql-community-libs-compat-5.7.18-1.fc26.x86_64.rpm

mysql-community-server-5.7.18-1.fc26.x86_64.rpm

yum 方式安装:

yum install mysql-community-server

具体安装不解释,官方安装文档地址:https://dev.mysql.com/doc/refman/5.7/en/installing.html


安装mysql-shell和mysql-router

MySQL下载地址中下载。对应安装包:

mysql-shell-1.0.9-1.fc26.x86_64.rpm

mysql-router-2.1.3-1.fc26.x86_64.rpm

本次搭建只使用一台服务器,所有的东西都安装在一台服务器上,本次使用的系统为fedora 26。安装完成 MySQL Server 、 MySQL  Router 、 MySQL Shell 就可以开始了。windows安装后配置环境变量就可以了。

集群搭建

启动MySQL shell

#mysqlsh


MySQL shell 提供了两种脚本语言: JavaScript 和 Python 。在本指南中 MySQL shell 主要用于 JavaScript 模式 。MySQL Shell 启动时默认处于 JavaScript 模式。可以使用以下命令js、py、sql,切换到 JavaScript 、 python 和 SQL 模式。
执行命令创建多个服务器实例
          mysql-js> dba.deploySandboxInstance(3310)
mysql-js> dba.deploySandboxInstance(3320)
mysql-js> dba.deploySandboxInstance(3330)

每创建一个实例需要创建对应实例的密码,实例文件路径$HOME/mysqlsandboxes/port

连接到3310服务器实例创建集群,以3310实例作为主节点
mysql-js> connect root@localhost:3310//连接到3310实例
mysql-js>var cluster = dba.createCluster('testCluster')//创建集群

添加实例到集群中,添加实例需要输入对应的密码
mysql-js> cluster.addInstance('root@localhost:3320')
  mysql-js> cluster.addInstance('root@localhost:3330')

引导MySQL Router配置元数据服务器, 下面使用所有默认设置:
#mysqlrouter --bootstrap root@localhost:3310 --user=mysqlrouter



MySQL Router配置信息:

读写连接:localhost:6446

只读连接:localhost:6447


启动MySQL Router:
#mysqlrouter &

连接测试:

mysql-shell连接:#mysqlsh --uri root@localhost:6446

mysql连接:#mysql -u root -h 127.0.0.1 -P 6446 -p


MySQL InnoDB Cluster搭建完成。


NDB和InnoDB存储引擎之间的差异

InnoDB(MySQL 5.7)特性:

InnoDB版本InnoDB 5.7.20

NDB Cluster版本不支持

最大存储长度64TB

事物所有标准事物类型

多版本并发控制支持

数据压缩支持

大行支VARBINARY、VARCHAR、BLOB

同步支持半同步、异步

块读取支持

块写入需要使用水平分区

高可用性

 

NDB 7.5/7.6特性:

InnoDB版本InnoDB 5.7.20

NDB Cluster版本 NDB 7.5.8/7.6.4

最大存储长度128TB

事物读提交

多版本并发控制不支持

数据压缩支持不支持

大行支持BLOB、 TEXT

同步支持半自动同步

块读取支持

块写入支持

高可用性非常高


具体差异参考官方文档:https://dev.mysql.com/doc/refman/5.7/en/mysql-cluster-compared.html


最后

以上就是标致马里奥为你收集整理的MySQL InnoDB Cluster搭建集群搭建的全部内容,希望文章能够帮你解决MySQL InnoDB Cluster搭建集群搭建所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(42)

评论列表共有 0 条评论

立即
投稿
返回
顶部