MysqlCluster学习笔记20171123_第1页
MysqlCluster学习笔记20171123_第2页
MysqlCluster学习笔记20171123_第3页
MysqlCluster学习笔记20171123_第4页
MysqlCluster学习笔记20171123_第5页
已阅读5页,还剩17页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、MySQL Cluster集群1 MySQL Cluster介绍MySQL Cluster 实际上是在无共享存储设备的情况下实现的一种完全分布式数据库系统,其主要通过 NDB Cluster(简称NDB)存储引擎来实现。MySQL Cluster 刚刚诞生的时候可以说是一个可以对数据进行持久化的内存数据库,所有数据和索引都必须装载在内存中才能够正常运行,但是最新的 MySQL Cluster 版本已经可以做到仅仅将所有索引装载在内存中即可,实际的数据可以不用全部装载到内存中。1.1 组件介绍1.1.1 SQL节点SQL层的SQL服务器节点(后面简称为SQL节点):也就是我们常说的MySQL S

2、erver。主要负责实现一个数据库在存储层之上的所有事情,比如连接管理,Query优化和响应 ,Cache管理等等,只有存储层的工作交给了NDB数据节点去处理了。也就是说,在纯粹的MySQL Cluster环境中的SQL节点,可以被认为是一个不需要提供任何存储引擎的MySQL服务器,因为他的存储引擎有Cluster 环境中的NDB 节点来担任。所以,SQL层各MySQL服务器的启动与普通的MySQL Server启动也有一定的区别,必须要添加ndbcluster参数选项才行。我们可以添加在f配置文件中,也可以通过启动命令行来指定。1.1.2 NDB数据节点Storage层的NDB数据节点:也就

3、是上面说的NDB Cluster。最初的NDB是一个内存式存储引擎,当然也会将数据持久化到存储设备上。但是最新的NDB Cluster存储引擎已经改进了这一点,可以选择数据是全部加载到内存中还是仅仅加载索引数据。NDB节点主要是实现底层数据存储功能,来保存Cluster的数据。每一个Cluster节点保存完整数据的一个fragment,也就是一个数据分片(或者一份完整的数据,视节点数目和配置而定),所以只要配置得当,MySQL Cluster在存储层不会出现单点的问题。一般来说,NDB节点被组织成一个一个的NDB Group,一个NDB Group实际上就是一组存有完全相同的物理数据的NDB节

4、点群。上面提到了NDB各个节点对数据的组织,可能每个节点都存有全部的数据也可能只保存一部分数据,主要是受节点数目和参数来控制的。首先在MySQL Cluster主配置文件(在管理节点上面,一般为config.ini)中,有一个非常重要的参数叫NoOfReplicas,这个参数指定了每一份数据被冗余存储在不同节点上面的份数,该参数一般至少应该被设置成2,也只需要设置成2就可以了。因为正常来说,两个互为冗余的节点同时出现故障的概率还是非常小的,当然如果机器和内存足够多的话,也可以继续增大来更进一步减小出现故障的概率。此外,一个节点上面是保存所有的数据还是一部分数据还受到存储节点数目的限制。NDB

5、存储引擎首先保证NoOfReplicas参数配置的要求来使用存储节点,对数据进行冗余,然后再根据节点数目将数据分段来继续使用多余的NDB节点。分段的数目为节点总数除以NoOfReplicas 所得。1.1.3 Manager节点负责管理各个节点的Manage节点主机;管理节点负责整个Cluster集群中各个节点的管理工作,包括集群的配置,启动关闭各节点,对各个节点进行常规维护,以及实施数据的备份恢复等。管理节点会获取整个Cluster环境中各节点的状态和错误信息,并且将各 Cluster 集群中各个节点的信息反馈给整个集群中其他的所有节点。由于管理节点上保存了整个Cluster 环境的配置,同

6、时担任了集群中各节点的基本沟通工作,所以他必须是最先被启动的节点。1.2 应用场景2 MySQL Cluster搭建2.1 安装包下载1、下载下载地址:2、下载下载地址:2.2 目录说明/data/software/ 软件存放目录/data/program/mysqlCluster/ 数据存放路径2.3 环境准备搭建 MySQL Cluster首先需要至少一个管理节点主机来实现管理功能,一个SQL节点主机来实现MySQL server功能和两个ndb节点主机实现NDB Cluster的功能。我在这里测试使用双SQL节点来搭建测试环境,具体信息如下:2.3.1 系统及网络准备所有节点均使用Cen

7、tOS7.0操作系统,采用Mini最简化安装。系统镜像:CentOS-7-x86_64-DVD-1503-01.isoMySQL节点1 1 sql01MySQL节点2 1 sql02ndb节点1 1 ndb01ndb节点2 1 ndb02管理节点 1 mgr2.3.2 修改主机名称#vim /etc/HOSTNAMEmgr#vim /etc/hosts127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4:1 localhost localhost.localdomain localhost6 l

8、ocalhost6.localdomain610.0.33.11 mgr10.0.33.137 ndb0210.0.33.130 ndb0110.0.33.217 sql0110.0.33.219 sql022.3.3 关闭SElinux和防火墙1、关闭系统防火墙#systemctl stop firewalld.service 关闭防火墙#systemctl disable firewalld.service 禁用防火墙2、关闭SElinux#sed -i 's/SELINUX=.*/SELINUX=disabled/g' /etc/selinux/config#setenf

9、orce 0 立即生效2.3.4 安装编译代码需要的包#yum -y install make git gcc-c+ bison-devel ncurses-devel perl per-devel ncurses-devel bison cmake java-1.8.0-openjdk 2.3.5 mysql旧版本清除首先使用如下命令来清理之前操作系统自带的mysql安装: # yum -y remove mysql 然后使用如下命令: # rpm -qa | grep mysql* 对于找到的剩余mysql包,请按照如下的命令格式予以删除: # rpm -e -nodeps my

10、sql-libs-5.1.61-4.el6.x86_64 # rpm -e -nodeps2.4 创建数据存放目录# mkdir -p /data/program/mysqlCluster/bin,ndbdata,tmp2.5 新建mysql用户及用户组# groupadd mysql# useradd -g mysql -s /usr/sbin/nologin mysql# chown -R mysql:mysql /data/program/mysqlCluster2.6 解压缩安装包# cd /data/software# tar xzvf# tar xzvf# cd mysql-clu

11、ster-gpl-7.5.82.7 编译将以下全部拷贝到窗口执行。注意,特别强调,下面编译参数的"="之间不能有空格。#cmake -DCMAKE_INSTALL_PREFIX=/data/program/mysqlCluster -DMYSQL_UNIX_ADDR=/data/program/mysqlCluster/tmp/mysql-cluster.sock -DMYSQL_DATADIR=/data/program/mysqlCluster/ndbdata-DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_

12、ci -DWITH_EXTRA_CHARSETS:STRING=utf8,gbk -DEXTRA_CHARSETS=all -DWITH_EMBEDDED_SERVER=0 -DWITH_MYISAM_STORAGE_ENGINE=1 -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_MEMORY_STORAGE_ENGINE=1 -DWITH_BLACKHOLE_STORAGE_ENGINE=1 -DWITH_FEDERATED_STORAGE_ENGINE=1 -DWITH_PARTITION_STORAGE_ENGINE=1 -DWITH_NDBCLUSTE

13、R_STORAGE_ENGINE=1 -DMYSQL_TCP_PORT=3306 -DENABLED_LOCAL_INFILE=1 -DMYSQL_USER=mysql -DWITH_DEBUG=0 -DWITH_NDB_JAVA=OFF-DDOWNLOAD_BOOST=1 -DWITH_BOOST=/data/software -DENABLE_DOWNLOADS=1若此步发生错误,干掉当前目录下的CMakeCache.txt,重新再执行一次。rootmgr mysql-cluster-gpl-7.5.8 # rm -rf CMakeCache.txt安装成功!# make &&am

14、p; make install过程会持续大概40分钟。2.8 配置环境变量#vi /etc/profile#在文件中添加以下内容export PATH=$PATH:/data/program/mysqlCluster/bin# source /etc/profile2.9 安装My Cluster#cd /data/program/mysqlCluster/bin/#mysqld -collation-server=utf8_general_ci -character-set-server=utf8 -user=mysql -basedir=/data/program/mysqlCluster

15、 -datadir=/data/program/mysqlCluster/ndbdata -secure-file-priv=/data/program/mysqlCluster/test/ -initialize#将标红色的密码记下来,下面有用。密码为:g_kKsm6j=ggj注意:需要先确保 datadir 目标目录下是空的,避免误操作破坏已有数据。如果想强制初始化,那么直接删除data目录就可以了。至此,准备的虚拟机模板已搞定!模板名称为:(MySQL Cluster template)。下一步将通过此模板创建两个MySQL节点,两个NDB节点。并将这些节点修改ip地址和主机名称。2.1

16、0 管理节点配置2.10.1 创建配置文件目录及文件 # mkdir /data/program/mysqlCluster/etc# vi /data/program/mysqlCluster/etc/config.ini#config.ini配置文件如下所示ndb_mgmd defaultdatadir=/data/program/mysqlCluster/ndbdatandbd defaultNoOfReplicas = 2DataMemory = 200MIndexMemory = 20Mdatadir=/data/program/mysqlCluster/ndbdatandb

17、_mgmdNodeId = 1HostNamedatadir=/data/program/mysqlCluster/ndbdatandbdNodeId = 11HostNamedatadir=/data/program/mysqlCluster/ndbdatandbdNodeId=12HostNamedatadir=/data/program/mysqlCluster/ndbdatamysqldNodeId = 21HostNamemysqldNodeId=22HostNamemysqldmysqldmysqld2.10.2 启动管理节点首次加载/data/program/mysqlClust

18、er/etc/config.ini文件有改变,其它时候不要加,除非是在备份、恢复或配置变化后重启时,其他时候不要加,不然数据就清空了。正常启动方式:# ndb_mgmd -f /data/program/mysqlCluster/etc/config.ini -initial如果有改动要加上:# rm -rf /data/program/mysqlCluster/mysql# ndb_mgmd -f /data/program/mysqlCluster/etc/config.ini2.10.3 查看集群状态# ndb_mgm- NDB Cluster - Management Client -

19、ndb_mgm> showConnected to Management Server at: localhost:1186Cluster Configuration-ndbd(NDB)2 node(s)id=11 (not connected, accepting connect from 10.0.33.130)id=12 (not connected, accepting connect from 10.0.33.137)ndb_mgmd(MGM)1 node(s)id=110.0.33.11 (mysql-5.7.20 ndb-7.5.8)mysqld(API)5 node(s)

20、id=21 (not connected, accepting connect from 10.0.33.217)id=22 (not connected, accepting connect from 10.0.33.219)id=23 (not connected, accepting connect from any host)id=24 (not connected, accepting connect from any host)id=25 (not connected, accepting connect from any host)关闭管理节点:ndb_mgm> shutd

21、own2.11 NDB节点配置2.11.1 编辑f编辑/etc/f,在最后添加如下。#vi f ndbclusterndb-connectstring=10.mysql_clusterndb-connectstring=10.2.11.2 启动数据节点只是在第一次启动或在备份恢复或配置变化后重启ndbd时,才加initial参数!#ndbd initial2017-11-02 22:58:00 ndbd INFO - Angel connected to '10.0.33.11:1186'2017-11-02 22:58:00 ndbd INFO - Angel allocat

22、ed nodeid: 11正常启动方式:#ndbd2.11.3 查看 ndbd 启动状态# ps -ef | grep ndbdroot 3209 1 0 07:35 ? 00:00:00 ndbd -initialroot 3210 3209 13 07:35 ? 00:00:02 ndbd -initialroot 3253 2936 0 07:36 pts/0 00:00:00 grep -color=auto ndbd2.12 MySQL节点配置2.12.1 设置mysqld的开机启动:# cd# cp mysql.server /etc/init.d/mysql# chmod 755

23、 /etc/init.d/mysql # chkconfig mysql on2.12.2 编辑f编辑/etc/f,添加如下内容:mysqldbasedir =/data/program/mysqlClusterdatadir =/data/program/mysqlCluster/ndbdatasocket=/data/program/mysqlCluster/tmp/mysql-cluster.sockndbclusterndb-connectstring = sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLESclientdefault-

24、character-set = utf8mysqldcharacter_set_server=utf8mysql_clusterndb-connectstring = 2.12.3 启动mysql# service mysql start #启动Starting MySQL. SUCCESS!# service mysql stop #停止# service mysql restart #重启2.12.4 重置root帐户的密码将所有MySQL节点重新设置账户密码,将前面步骤“安装My cluster”随机生成的密码输入。# mysql -u root -pmysql> SET PASS

25、WORD = PASSWORD('123456');将外部访问root 的密码设置为123456mysql> GRANT ALL PRIVILEGES ON *.* TO 'root''%' IDENTIFIED BY '123456' WITH GRANT OPTION;2.12.5 集群状态查看节点全部启动成功后,在管理节点使用ndb_mgm工具的show命令查看集群状态:ndb_mgm工具是ndb_mgmd(MySQL Cluster Server)的客户端管理工具,通过该工具可以方便的检查Cluster的状态,启动备

26、份,关闭等功能。更详细的方法可以通过ndb_mgm -help命令来进行查看。从上面显示的状态可以看出如下信息。(1)集群目前的管理服务器端口是1186。Connected to Management Server at: localhost:1186(2)集群的数据节点(NDB)有2个。(3)集群的管理节点有一个。(4)SQL节点有5个,目前处于连接状态的有2个。到这里MySQL Cluster就已经搭建完成了。3 高可用测试成功启动后,下面来测试一下Cluster的功能。如果要使用cluster,则表的引擎必须为NDB,其他类型存储引擎的数据不会保存到数据节点中。对于cluster的一个重

27、要功能就是防止单点故障。我们下面对这些问题分别来进行测试。3.1 NDB存储引擎测试(1)在任意一个SQL节点(我这里选择)的test库中创建测试表t1,设置存储引擎为NDB,并插入两条测试数据:mysql> create table t1 ( -> id int, -> name varchar(20) -> ) -> engine=ndb -> ;Query OK, 0 rows affected (0.44 sec)mysql> insert into t1 select 1,'yayun'Query OK, 1 row affe

28、cted (0.11 sec)Records: 1 Duplicates: 0 Warnings: 0mysql> insert into t1 select 1,'atlas'Query OK, 1 row affected (0.03 sec)Records: 1 Duplicates: 0 Warnings: 0(2)在另外一SQL节点()查询test库中t1表,结果如下:mysql> select * from test.t1;+-+-个-+| id | name |+-+-+| 1 | atlas | 1 | yayun |+-+-+2 rows in s

29、et (0.08 sec)显然,两个SQL节点查询的数据时一致的。(3)在SQL节点上把测试表t1引擎改为MyISAM,再次插入测试数据:mysql> alter table t1 engine=myisam;Query OK, 2 rows affected (0.50 sec)Records: 2 Duplicates: 0 Warnings: 0mysql> insert into t1 select 2,'good boy'Query OK, 1 row affected (0.00 sec)Records: 1 Duplicates: 0 Warnings

30、: 0(4)在SQL节点上再次查询表t1,结果如下:mysql> select * from t1;ERROR 1146 (42S02): Table 'test.t1' doesn't existmysql> show tables;Empty set (0.04 sec)直接报错,说表不存在了。(老版本是报ERROR 1412:Table definition ha  changed,please retry transaction)。(5)我们再次改回NDB引擎。mysql> alter table t1 engine=ndb;Quer

31、y OK, 3 rows affected (0.25 sec)Records: 3 Duplicates: 0 Warnings: 0(6)再次进行查询如下:mysql> select * from t1;+-+-+| id | name |+-+-+| 1 | atlas | 2 | good boy | 1 | yayun |+-+-+3 rows in set (0.02 sec)发现表t1的数据再次同步到了数据节点。所有SQL节点又都可以正常查询数据。3.2 单点故障测试对于任意一种节点,都存在单点故障的可能性。在cluster的设置过程中,应该尽量对每一类节点设置冗余,以防止

32、单点故障发生时造成的应用中断。对于管理节点,一般不需要特殊的配置,只需要将管理工具和配置文件防止多台服务器上即可。下面我们测试一下SQL节点和NDB(数据节点)的单点故障。3.2.1 SQL节点单点故障对于上面的测试环境中,我们设置了两个SQL节点,应用从两个节点对数据访问都可以得到一致的结果。如果有一个节点故障,系统会正常运行吗?我们测试便知。(1)将SQL节点上的MySQL服务停止:root # /etc/init.d/mysqld stopShutting down MySQL. OK root # (2)查看cluster状态:ndb_mgm> showCluster Confi

33、guration-ndbd(NDB) 2 node(s)id=2 (mysql-5.5.19 ndb-7.2.4, Nodegroup: 0, Master)id=3 (mysql-5.5.19 ndb-7.2.4, Nodegroup: 1)ndb_mgmd(MGM) 1 node(s)id=1 (mysql-5.5.19 ndb-7.2.4)mysqld(API) 3 node(s)id=4 (mysql-5.5.19 ndb-7.2.4)id=5 (not connected, accepting connect from )id=6 (not connected, accepting

34、connect from any host)可以发现SQL节点已经断开,但是另外一个SQL节点仍然处于正常状态。(3)从SQL节点上查看表t1,结果如下:mysql> select * from t1;+-+-+| id | name |+-+-+| 2 | good boy | 1 | yayun | 1 | atlas |+-+-+3 rows in set (0.01 sec)显然,SQL节点的单点故障并没有引起数据查询的故障。对于应用来说,需要改变的就是将以前对故障节点的访问改为对非故障节点的访问(SQL节点前面可以挂LVS,然后做各种检测)3.2.2 NDB节点的单点故障在这个

35、测试环境中,数据节点也是两个,那么他们对数据的存储是互相镜像还是一份数据分成几块存储呢?这个答案关键在于配置文件中NDBD DEFAULT组中的NoOfReplicas参数,如果这个参数等于1,表示只有一份数据,但是分成N块分别存储在N个数据节点上,如果该值等于2,则表示数据被分成N/2,每块数据都有两个备份,这样即使有任意一个节点发生故障,只要它的备份节点正常,数据就可以正常查询。在下面的例子中,先将两个数据节点之一停止,访问表t1,看能否正常访问;然后将NoOfReplicas配置改为2,这时,数据节点实际上已经互为镜像,保存了两份。这时再停止任意一个数据节点,看是否能访问表t1。(1)将

36、数据节点上的NDB进程停止:root # ps -ef | grep ndbdroot 2266 1 0 21:51 ? 00:00:00 ndbd -initialroot 2267 2266 1 21:51 ? 00:01:03 ndbd -initialroot 2368 1300 0 23:06 pts/0 00:00:00 grep ndbdroot # pkill -9 ndbdroot # ps -ef | grep ndbdroot 2371 1300 0 23:07 pts/0 00:00:00 grep ndbd(2)在任意节点,这里是查看表t1的数据:mysql>

37、select * from t1;ERROR 1296 (HY000): Got error 157 'Unknown error code' from NDBCLUSTERmysql> 显然无法访问表t1的数据了。(3)将配置文件中的NoOfReplicas改为2,按照前面的步骤重新启动集群:# grep 'NoOfReplicas' /data/program/mysql-cluster/etc/config.ini NoOfReplicas=2 #每个数据节点的镜像数量最后发现无法启动数据节点,查看错误日志如下:Time: Tuesday 15 Ap

38、ril 2014 - 23:22:51Status: Permanent error, external action neededMessage: Invalid configuration received from Management Server (Configuration error)Error: 2350Error data: Illegal configuration change. Initial start needs to be performed when changing no of replicas (1 != 2)Error object: DBDIH (Lin

39、e: 4820) 0x00000002Program: ndbd看来NoOfReplicas参数无法临时更改,我们开始就需要设置好,不要到后面才想到更改,那时就悲剧了。如果重新ndbd -initial,将会丢失所有数据,记住这个坑,下次就不会踩进去了。一切正常。我们现在停止NDB节点,看是否还能访问数据:ndb_mgm> showCluster Configuration-ndbd(NDB) 2 node(s)id=2 (not connected, accepting connect from )id=3 (mysql-5.5.19 ndb-7.2.4, Nodegroup: 0,

40、Master)ndb_mgmd(MGM) 1 node(s)id=1 (mysql-5.5.19 ndb-7.2.4)mysqld(API) 3 node(s)id=4 (mysql-5.5.19 ndb-7.2.4)id=5 (mysql-5.5.19 ndb-7.2.4)id=6 (not connected, accepting connect from any host)看见只有一个NDB节点在运行。访问任意SQL节点查询数据,我这里用,查询结果如下:mysql> select * from t1;+-+| name |+-+| atlas | yayun |+-+2 rows

41、in set (0.01 sec)显然挂掉一个NDB节点不影响我们正常的数据查询,数据节点的冗余同样防止了单点故障。4 动态增加数据节点4.1 更新管理节点config.ini文件# vim /data/program/mysqlCluster/etc/config.ini添加ndb节点ndbdNodeId=13HostName=datadir=/data/program/mysqlCluster/ndbdatandbdNodeId=14HostName=20datadir=/data/program/mysqlCluster/ndbdata由于4.2 重新启动管理节点服务4.2.1 停止管理

42、节点ndb_mgm> 1 stopNode 1 has shutdown.Disconnecting to allow Management Server to shutdown4.2.2 重新加载配置文件# ndb_mgmd -f /data/program/mysqlCluster/etc/config.ini -reload# ndb_mgmndb_mgm> showConnected to Management Server at: localhost:1186Cluster Configuration-ndbd(NDB)4 node(s)id=1110.0.33.130

43、(mysql-5.7.20 ndb-7.5.8, Nodegroup: 0)id=1210.0.33.137 (mysql-5.7.20 ndb-7.5.8, Nodegroup: 0, *)id=13 (not connected, accepting connect from 10.0.33.219)id=20)ndb_mgmd(MGM)1 node(s)id=110.0.33.11 (mysql-5.7.20 ndb-7.5.8)mysqld(API)1 node(s)id=2110.0.33.217 (mysql-5.7.20 ndb-7.5.8)4.2.3 重启NDB数据节点对已经存

44、在的数据节点执行环状重启。ndb_mgm> 1 RESTARTNode 1: Node shutdown initiatedNode 1: Node shutdown completed, restarting, no start.Node 1 is being restartedndb_mgm> Node 1: Start initiated (version 7.1.20)Node 1: Started (version 7.1.20)ndb_mgm> 2 RESTARTNode 2: Node shutdown initiatedNode 2: Node shutdow

45、n completed, restarting, no start.Node 2 is being restartedndb_mgm> Node 2: Start initiated (version 7.1.20)ndb_mgm> Node 2: Started (version 7.1.20)注意:一定要等到管理端报告ndb节点已经启动后再重启下一个ndb节点。4.2.4 重启SQL节点对mysql节点执行环状重启。# service mysqld restart4.2.5 初始化新NDB数据节点对新NDB数据节点进行初始化启动。# ndbd -c -initial# ndbd

46、 -c 20 initial注意:这里不需要一个数据节点启动后在启动另一个,可以同时启动。4.2.6 为新数据节点分配新的组ndb_mgm> CREATE NODEGROUP 3,4Nodegroup 1 createdndb_mgm> SHOWConnected to Management Server at: localhost:1186Cluster Configuration-ndbd(NDB)4 node(s)id=1110.0.33.130 (mysql-5.7.20 ndb-7.5.8, Nodegroup: 0)id=1210.0.33.137 (mysql-5.7

47、.20 ndb-7.5.8, Nodegroup: 0, *)id=13  10.0.33.219  (5.1.61-ndb-7.1.20, Nodegroup: 1)id=14  10.0.33.220  (5.1.61-ndb-7.1.20, Nodegroup: 1)ndb_mgmd(MGM)1 node(s)id=110.0.33.11 (mysql-5.7.20 ndb-7.5.8)mysqld(API)1 node(s)id=2110.0.33.217 (mysql-5.7.20 ndb-7.5.8)4.2.7 重新分配集群数据当新加入数据节

48、点时,已经存在的数据或者索引不会被自动分配到新的节点上,如下所示:ndb_mgm> ALL REPORT MEMORYNode 1: Data usage is 5%(177 32K pages of total 3200)Node 1: Index usage is 0%(108 8K pages of total 12832)Node 2: Data usage is 5%(177 32K pages of total 3200)Node 2: Index usage is 0%(108 8K pages of total 12832)Node 3: Data usage is 0%

49、(0 32K pages of total 3200)Node 3: Index usage is 0%(0 8K pages of total 12832) Node 4: Data usage is 0%(0 32K pages of total 3200)Node 4: Index usage is 0%(0 8K pages of total 12832)在SQL节点上执行对所有的ndbcluster引擎的表,分发数据命令:mysql>Alter online table 表reorganize partition; 例如: mysql> alter online table 'test.t1' reorganize partition;ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'online table 'test.t1' reorganize partition&

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论