![](https://img-blog.csdnimg.cn/20190918140053667.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
MySQL Cluster
MySQL Cluster
gongmimi
这个作者很懒,什么都没留下…
展开
-
MySQL Cluster Manager
1 摘 要 根据行业调查显示,人员编制和停机时间只占数据库所有权总成本的50%不到。与此同时,IT预算和员工水平下降或持平,而高可用网站和融合通信服务需求持续增长,这就给IT部门带来巨大压力。 机构要求IT更多关注战略创新,并减少IT环境的日常管理工作。IT部门需要通过快速部署新服务或重新配置现有的应用,来灵活满足市场的需求。 与此同时SLAs(服务等级协议)变得更苛刻。服务中断转载 2013-01-18 09:07:04 · 2518 阅读 · 0 评论 -
mysqldump: Got error: 1296: Got error 157 'Unknown error code' from NDBCLUSTER when using LOCK TABLE
[root@localhost mysql]# /usr/bin/perror --ndb 157 Illegal ndb error code: 157 MySQL error code 157: Could not connect to storage engine 如果要在任一个SQL节点上对NDB引擎的表做备份,那么这个SQL节点必须是在集群环境中才可以备原创 2012-11-06 14:48:37 · 3300 阅读 · 0 评论 -
NoOfFragmentLogFiles
data node参数 NoOfFragmentLogFiles 默认值为16,范围为3-4G,单位为:integer。 This parameter sets the number of REDO log files for the node, and thus the amount of space allocated to REDO logging. Because the RED原创 2012-11-06 14:10:14 · 941 阅读 · 0 评论 -
mysql-cluster导入数据备份时出现:MySQL server has gone away
我们在做数据备份时,如果一个表中的数据很大,通常会把这个表的数据写成一个很大的insert into语句,导致插入语句超过数据库缓冲区的大小,解决办法通常是加大缓冲区的容量,当然也可以拆分insert into语句,参考工具是SplitInsert; 加大缓冲区容量的办法: 修改my.cnf配置文件: [mysqld] max_allowed_packet原创 2012-11-07 10:20:26 · 901 阅读 · 0 评论 -
TimeBetweenLocalCheckpoints (redo undo)
Date Node参数 TimeBetweenLocalCheckpoints,默认值为 2000,范围是:20-32000 When a transaction is committed, it is committed in main memory in all nodes on which the data is mirrored. However, transaction lo原创 2012-11-06 13:55:29 · 1143 阅读 · 0 评论 -
.sql数据备份大文件分割与合并
对于几个G大的数据备份文件,如果我们在数据导入过程中遇到好多问题,又想避免插入重复记录,则需要把文件切割开来,并提取出数据库表结构。 通过利用软件:“SQLDumpSplitter.exe” 将我们导出的数据备份文件切割,我们可以自定义每个文件的大小,这个软件有一个好处是不会把每条记录分开,保证了每条记录的完整性,但是如果一个表中插入的数据较多,那么会把插入操作分成好几个,放在不同的小文原创 2012-11-06 13:17:28 · 5848 阅读 · 1 评论 -
data node 参数 MaxNoOfLocalOperations
当修改过 MaxNoOfConcurrentOperations 之后,应该同时修改 MaxNoOfLocalOperations, 默认值为:MaxNoOfLocalOperations = 1.1*MaxNoOfConcurrentOperations;原创 2012-11-05 16:42:21 · 1532 阅读 · 0 评论 -
一次性执行多条SQL语句
本地: windows 192.168.55.133 远程1:192.168.55.9 远程2:192.168.55.10 利用phpmyadmin来赂远程SQL Server导入大量数据时,会很慢,基于卡死。因为,它是通过Web方式来上传的,导入之前它会首先将要导入的.sql文件先上传到服务器然后再执行导入命令。我们都知道,原创 2012-10-27 09:47:01 · 11063 阅读 · 0 评论 -
在cluster中的SQL节点上安装php-mysql会有冲突提示(问题已经解决)
在mysql-cluster中,如果想把某个SQL节点升级为Web服务器,那么我们需要在该节点上安装php以及php对mysql的扩展模块,但是会出现冲突。 安装php的命令为:# php53 默认情况下会安装依赖包:php53-cli、php53-common 安装mysql扩展的命令为:# php53-mysql 此时会出现冲突,如果采用强制安装的形式是否会影响使用并没原创 2012-11-14 14:12:20 · 1222 阅读 · 0 评论 -
MySQL Cluster 7.3(不断更新中)
在Cluster7.2中是不支持外键的,而Cluster7.3中将支持外键,通过外键可以简化数据模型和应用逻辑等操作; 请参考:MySQL Cluster 7.3原创 2012-11-27 14:23:16 · 858 阅读 · 0 评论 -
CentOS5 (32bit)下,在 MySQL-Cluster 的 sql node 上安装 PHP5.4.9 时如何添加 mysql 以及 mysqli 扩展
Cluster中已经在SQL节点成功安装: 1. MySQL-Cluster-client-gpl-7.2.8-1.rhel5.i386.rpm 2. MySQL-Cluster-server-gpl-7.2.8-1.rhel5.i386.rpm 如果要在该节点上扩展为Web服务器,需要给PHP添加mysql以及mysqli扩展,很多情况下,为了方便通过命令:in原创 2012-11-26 13:53:49 · 1448 阅读 · 0 评论 -
mysql cluster复制出现LOST_EVENTS的解决办法
错误描述:错误Last_Error: The incident LOST_EVENTS occured on themaster的解决办法;mysql cluster的复制既支持cluster之间的复制,也可以支持cluster向innodb等其他存储引擎的复制,如果只是单节点的复制就经常会出现 Last_Error: The incident LOST_EVENTS occured on转载 2013-01-15 09:36:39 · 1808 阅读 · 0 评论 -
从 mysql-cluster-gpl-7.2.8.tar.gz 来安装 mysql5.5.27 (正在更新)
#! /bin/sh# install mysql 5.5.27 through mysql-cluster-gpl-7.2.8.tar.gz# add pathmkdir -p /var/lib/mysql# add data pathmkdir -p /var/lib/data/mysql# groupadd mysql# useradd -g mysql mysq原创 2012-12-11 16:53:36 · 1332 阅读 · 0 评论 -
NDB存储引擎
为什么我们会选择NDB引擎呢? 我想可能有这么两点需求: 1.我们需要高可用,传说中的FIVE NINE 2.我们需要高性能,多SQL节点提供更好的并发服务 由此出发,看起来NDB引擎都能满足。可是为啥真正使用CLUSTER之后,发现,其实并不是像想象中的那么美好?我们从MYSQL CLUSTER的架构上来看看。 MySQL Clus转载 2012-12-07 09:21:11 · 2890 阅读 · 0 评论 -
NDB存储引擎
2003年,MySQL AB公司从Sony Ericsson公司收购了NDB 集群引擎。NDB存储引擎是一个集群存储引擎,类似于Oracle的RAC集群;不过,与Oracle RAC share everything结构不同的是,其结构是share nothing的集群架构,因此能提供更高级别的高可用性。NDB的特点是数据全部放在内存中(从5.1版本开始,可以将非索引数据放在磁盘上),因此主键查找转载 2012-12-07 09:11:07 · 2616 阅读 · 0 评论 -
Linux下通过 top 分析 ndbd 进程
一: 192.168.55.10 (data node + sql node) [root@localhost ~]# ps -A | grep ndbd 3470 ? 00:00:04 ndbd 3471 ? 07:44:00 ndbd top - 18:04:16 up 7 days, 19:35, 1原创 2012-12-06 11:00:12 · 1807 阅读 · 2 评论 -
mysql-cluster注意事项(不断更新中)
1. 建议每个表包含有primary key,但是如果表没有主键,这张表还是可以被共享; 2. 只支持NDB存储引擎,导入的表如果想要共享,必须为该存储引擎,其它引擎的表不会共享; 3. 只支持固定长度的记录; 4. 不支持foreign key,以及constraint,但是Cluster7.3中将加入外键支持; 5. data node原创 2012-11-05 15:36:39 · 1063 阅读 · 0 评论 -
Windows下mysql客户端访问Linux下mysql-cluster的SQL节点服务器
在Windows下面,如果大家都安装了WAMP包,那么mysql服务器也安装了,同时mysql客户端也安装了,并不把客户端和服务器分开来安装。如果我们要通过Windows下的客户端来访问Linux下集群环境中的SQL节点服务器,需要注意些什么呢? 集群环境部署: 55.133 mgm node CentOS5 55.10 data no原创 2012-11-13 16:00:50 · 1734 阅读 · 0 评论 -
通过源码包php-5.4.9.tar.gz编译安装PHP之后,如何加载动态模块,不需要重新配置PHP
首先确认:我们在安装PHP时,指定了它的安装目录:--prefix=/var/lib/php5;而目录 /home/guanli/php-5.4.9 是我们解压.tar.gz 之后的路径,也就是源代码路径。 例如 安装 bcmath 模块 # cd /home/guanli/php-5.4.9/ext # cd openssl #mv vonfig0.原创 2012-11-30 10:57:41 · 3230 阅读 · 0 评论 -
两种SQL节点启动命令无法启动
1. 通过命令 # mysqld_safe --ndb_nodeid=4 --initial --user=mysql & 启动不了SQL节点 解决办法:通过增加路径参数 --datadir 来重新初始化数据库 # mysql_install_db --user=mysql --datadir=/var/lib/mysql 2. 通过命令 # mysqld_saf原创 2012-10-26 16:21:36 · 1611 阅读 · 0 评论 -
MySQL-Cluster7.2.8中的角色分配
由于其它地方要用到IP地址,所以这里把角色分配列出来。 192.168.55.133 mgm node (nodeid = 1) 192.168.55.10 data node (nodeid = 2) + sql node (nodeid = 4) 192.168.55.9 data node (nodeid = 3) + sql nod原创 2012-10-26 15:13:29 · 651 阅读 · 0 评论 -
批量修改表引擎
mysql_convert_table_format 它是用Perl写的,在使用之前需要安装DBI和DBD::mysql Perl模块。它也位于/usr/bin目录下面。 当然如果没有安装这些,我们可以通过列编辑或直接替换也可以修改表的引擎为NDB。原创 2012-10-27 08:51:08 · 563 阅读 · 0 评论 -
ndb mgm 的配置文件
ndb mgm的配置文件主要有两个: 1.config.ini 主要的配置文件,通过 -f 来指定该参数的位置: # ndb_mgmd --ndb_nodeid=1 -f /var/lib/mysql-cluster/config.ini 2.ndb_1_config.bin.1 二进制缓存配置文件,路径为:/usr/mysql-cluster/下面;原创 2012-11-03 10:19:46 · 3450 阅读 · 0 评论 -
data node 参数 MaxNoofConcurrentOperation
在初始化数据库之后,我们会向其中的表里面导入数据,通过 # mysql -u mysql -p myro_cluster ERROR 1297 (HY000)at line 8:Got temporary err 233 ' out of operation records in transaction coordinator (increase MaxNoofConcurr原创 2012-11-01 17:09:48 · 3073 阅读 · 0 评论 -
从端口的角度来解释MySQL-Cluster7.2.8的启动与各节点的连接过程
Cluster角色重新分配: 192.168.211.10 mgm + data + sql 192.168.211.9 data + sql 192.168.211.11 + sql (not used) 211.10上开始: # l原创 2012-10-31 11:10:18 · 2342 阅读 · 1 评论 -
集群中各节点的防火墙问题
55.133 mgm 防火墙iptables必须关闭,但SELinux可以开启。 55.10 data + sql 防火墙iptables必须关闭,SELinux未测试。 55.9 data + sql 防火墙iptables必须关闭,SELinux未测试。 取消防火墙开机启动的命令: # chkconfig --list #原创 2012-10-31 17:33:26 · 1182 阅读 · 0 评论 -
MySQL-Cluster7.2.8中各个节点相应的启动顺序及命令
正确的启动顺序为:管理节点--数据节点--SQL节点 55.133上的 mgm node # ndb_mgmd --ndb_nodeid=1 --initial -f /var/lib/mysql-cluster/config.ini # 第一次启动 # ndb_mgmd --ndb_nodeid=1 -f /var/lib/mysql-cluster/conf原创 2012-10-26 15:51:42 · 4411 阅读 · 0 评论 -
修改过config.ini后,mgm node的启动命令需加参数
如果修改过config.ini中的参数之后,重新启动管理节点时,需要加初始化参数。 eg: ndb_mgmd --ndb_nodeid=1 -f /var/lib/mysql-cluster/config.ini 上面启动是无法更新新的修改,只需要通过命令: ndb_mgmd --ndb_nodeid=1 --initial -f /var/lib/mysql原创 2012-10-31 11:20:16 · 1543 阅读 · 0 评论 -
NDB存储引擎关于外键及外键约束问题
NDB存储引擎原则上是不支持外键的。但在建表时,可以加入外键及外键约束,不会提示错误。但我们去查看表结构时,被设置为外键的字段的值会自动变更为MUL。原创 2012-10-29 14:29:08 · 1172 阅读 · 0 评论 -
NDB存储引擎不支持临时表的创建
mysql> CREATE TEMPORARY TABLE `tmp1`(id int primary key)engine=ndb; ERROR 1478 (HY000): Table storage engine 'ndbcluster' does not support the create option 'TEMPORARY' 但是可以创建ALGORITHM原创 2012-10-29 13:57:40 · 778 阅读 · 0 评论 -
NDB查错小脚本perror
# /usr/bin/perror --ndb 708原创 2012-10-25 17:23:09 · 505 阅读 · 0 评论 -
ERROR 1005 (HY000) at line 1679: Can't create table 'db_name.table_name' (errno: 708)
解决办法: # /usr/bin/perror --ndb 708 NDB error code 708: No more attributemetadata records (increase MaxNoOfAttributes): Permanent error: Schema error MaxNoOfAttributes 是数据节点的配置参数,修改完该参数之后需要启动对应原创 2012-10-25 17:25:29 · 1697 阅读 · 0 评论 -
ERROR 1005 (HY000) at line 3706: Can't create table 'db_name.table_name' (errno: 136)
解决办法: # /usr/bin/perror --ndb 136 Illegal ndb error code: 136 MySQL error code 136: No more room in indexfile MaxNoOfAttributes = 600000 # 6*1000*100 MaxNoOfTables = 1000 # MaxNoOfO原创 2012-10-25 17:26:46 · 1254 阅读 · 0 评论 -
Failed to allocate nodeid for API at 192.168.55.9. Returned eror: 'No free node id found for mysqld
如果没有按照正确的节点启动顺序启动节点,将出现类似上述的错误。下面的数据代表节点ID,请参照角色分配。 错误描述:Failed to allocate nodeid for API at 192.168.55.9. Returned eror: 'No free node id found for mysqld 在启动数据节点之前,需要关闭相应的SQL节点,也就是启动节点2和3原创 2012-10-26 15:23:25 · 5179 阅读 · 0 评论 -
Can't connect to MtSQL server on '192.168.55.9' (113)
Linux下的SQL节点IP为:192.168.55.9 且MySQL服务器已经开启 Windows下的客户端IP为:192.168.55.8,在8下面通过putty.exe来远程登录55.9上的数据库,登录命令:# mysql -h 192.168.55.9 -u mysql -p,提示错误:Can't connect to MtSQL server on '192.168.55.9'原创 2012-10-26 11:41:22 · 3570 阅读 · 0 评论 -
CentOS5.8下安装phpMyAdmin3.5.3来远程连接mysql服务器
WEB根目录为:/var/www/html,并将phpMyAdmin-3.5.3-all-languages.tar.gz拷贝到根目录下。 # cd /var/www/html # tar zxvf phpMyAdmin-3.5.3-all-languages.tar.gz # 将其解压到当前目录下,生成一个名为phpMyAdmin-3.5.3-all-languages原创 2012-10-26 14:28:25 · 1075 阅读 · 0 评论 -
cluster中data node启动花费的时间较长
cluster中角色分配如下: 主机1: ***.***.***.1 mgm node (nodeid=1) 主机2: ***.***.***.2 data node + sql node (nodeid=2 + nodeid=4) 主机3: ***.***.***.3 data node + sql node (nodeid=3 + nodeid=5原创 2012-10-25 09:22:42 · 1214 阅读 · 0 评论 -
cluster中SQL节点无法正常关闭问题
集群中,经常出现SQL节点无法正常关闭的现象,很多时候是因为集群的关闭顺序导致。 首先得闭关mgm node和data node,然后才可以再关闭SQL节点。 # ndb_mgm # shutdown # service mysql stop原创 2012-11-05 14:01:17 · 818 阅读 · 0 评论 -
CentOS5.8下安装php及组件
# yum install php53 php53-soap php53-ldap php53-mcrypt php53-mbstring php53-devel php53-mysql php-pear php53-cli php53-xmlrpc php53-xml php53-gd php53-common ph原创 2012-10-25 11:27:06 · 2364 阅读 · 0 评论 -
error: 'Failed to open logfile '/var/lib/mysql_ndbd/data/ndb_2_out.log' for write
原因:尚未建立日志存放目录 解决办法: # cd /var/lib # mkdir mysql_ndbd # cd mysql_ndbd # mkdir data原创 2012-10-25 17:42:03 · 2173 阅读 · 1 评论