mysql_cluster双机集群.doc

上传人:博****1 文档编号:562362543 上传时间:2023-02-28 格式:DOC 页数:6 大小:33KB
返回 下载 相关 举报
mysql_cluster双机集群.doc_第1页
第1页 / 共6页
mysql_cluster双机集群.doc_第2页
第2页 / 共6页
mysql_cluster双机集群.doc_第3页
第3页 / 共6页
mysql_cluster双机集群.doc_第4页
第4页 / 共6页
mysql_cluster双机集群.doc_第5页
第5页 / 共6页
点击查看更多>>
资源描述

《mysql_cluster双机集群.doc》由会员分享,可在线阅读,更多相关《mysql_cluster双机集群.doc(6页珍藏版)》请在金锄头文库上搜索。

1、mysql cluster双机集群一、介绍如何安装配置基于2台服务器的MySQL集群。并且实现任意一台服务器出现问题或宕机时MySql集群依然能够继续运行。加下后续的(keepalived+lvs+mysql cluster文档),可以实现Mysql双机的高可用及负载均衡。安装环境及软件包:vmware workstation 5.5.3mysql-5.2.3-falcon-alpha.tar.gzgentoo 2006.1Server1: 192.168.1.111Server2: 192.168.1.110二、在Server1和Server2上安装MySQL以下步骤需要在Server1和S

2、erver2上各做一次# mv mysql-5.2.3-falcon-alpha.tar.gz /tmp/package# cd /tmp/package# groupadd mysql# useradd -g mysql mysql# tar -zxvf mysql-5.2.3-falcon-alpha.tar.gz# rm -f mysql-5.2.3-falcon-alpha.tar.gz# mv mysql-5.2.3-falcon-alpha mysql# cd mysql# ./configure -prefix=/usr -with-extra-charsets=complex

3、-with-plugin-ndbcluster -with-plugin-partition -with-plugin-innobase# make & make install#ln -s /usr/libexec/ndbd /usr/bin#ln -s /usr/libexec/ndb_mgmd /usr/bin#ln -s /usr/libexec/ndb_cpcd /usr/bin#ln -s /usr/libexec/mysqld /usr/bin#ln -s /usr/libexec/mysqlmanager /usr/bin#mysql_install_db -user=mysq

4、l三、安装并配置节点以下步骤需要在Server1和Server2上各做一次1.配置管理节点配置文件:# mkdir /var/lib/mysql-cluster# cd /var/lib/mysql-cluster# vi config.ini在config.ini中添加如下内容:ndbd defaultNoOfReplicas= 2MaxNoOfConcurrentOperations= 10000DataMemory= 80MIndexMemory= 24MTimeBetweenWatchDogCheck= 30000DataDir= /var/lib/mysql-clusterMaxNo

5、OfOrderedIndexes= 512StartPartialTimeout=100StartPartitionedTimeout=100ArbitrationTimeout=5000TransactionDeadlockDetectionTimeout=5000HeartbeatIntervalDbDb=5000StopOnError=0ndb_mgmd defaultDataDir= /var/lib/mysql-clusterndb_mgmdId=1HostName= 192.168.1.111ndb_mgmdId=2HostName= 192.168.1.110ndbdId= 3H

6、ostName= 192.168.1.111ndbdId= 4HostName= 192.168.1.110mysqldArbitrationRank=2 (非常重要,全靠有它,才可以形成仲裁竞争,从而当另一个机子当了时,此机还可以有知道partion完整的节点)mysqldArbitrationRank=2tcp defaultPortNumber= 631322.配置通用f文件,mysqld及ndbd,ndb_mgmd均使用此文件.# vi /etc/f在f中添加如下内容:mysqlddefault-storage-engine=ndbcluster 避免在sql语句中还要加入ENGINE

7、=NDBCLUSTER。ndbclusterndb-connectstring=192.168.1.111,192.168.1.110ndbdconnect-string=192.168.1.111,192.168.1.110ndb_mgmconnect-string=192.168.1.111,192.168.1.110ndb_mgmdconfig-file=/var/lib/mysql-cluster/config.inimysql_clusterndb-connectstring= 192.168.1.111,192.168.1.110保存退出后,启动管理节点Server1为:# ndb

8、_mgmd -ndb_nodeid=1启动管理节点Server2为:# ndb_mgmd -ndb_nodeid=2注:在启动时有一个警告提示Cluster configuration warning: arbitrator with id 1 and db node with id 3 on same host 192.168.1.111 arbitrator with id 2 and db node with id 4 on same host 192.168.1.110 Running arbitrator on the same host as a database node may

9、 cause complete cluster shutdown in case of host failure.说节点1和3,2和4的arbitrator一样,可能引起整个集群失败。(可以不用放在心上)四、初始化集群在Server1中# ndbd -nodeid=3 -initial在Server2中# ndbd -nodeid=4 -iniitial注:只有在第一次启动ndbd时或者对config.ini进行改动后才需要使用-initial参数!五、检查工作状态在任意一台机子上启动管理终端:# ndb_mgm键入show命令查看当前工作状态:(下面是一个状态输出示例)- NDB Clust

10、er - Management Client -ndb_mgm showConnected to Management Server at: 192.168.1.111:1186Cluster Configuration-ndbd(NDB) 2 node(s)id=3 192.168.1.111 (Version: 5.2.3, Nodegroup: 0, Master)id=4 192.168.1.110 (Version: 5.2.3, Nodegroup: 0)ndb_mgmd(MGM) 2 node(s)id=1 192.168.1.111 (Version: 5.2.3)id=2 1

11、92.168.1.110 (Version: 5.2.3)mysqld(API) 2 node(s)id=5 (not connected, accepting connect from any host)id=6 (not connected, accepting connect from any host)ndb_mgm如果上面没有问题,现在开始加入mysqld(API):注意,这篇文档对于MySQL并没有设置root密码,推荐你自己设置Server1和Server2的MySQL root密码。在Server1 中:#mysqld_safe -ndb_nodeid=5 -user=mysq

12、l &在Server2 中:#mysqld_safe -ndb_nodeid=6 -user=mysql &# ndb_mgm -e show信息如下:Connected to Management Server at: 192.168.1.111:1186Cluster Configuration-ndbd(NDB) 2 node(s)id=3 192.168.1.111 (Version: 5.2.3, Nodegroup: 0, Master)id=4 192.168.1.110 (Version: 5.2.3, Nodegroup: 0)ndb_mgmd(MGM) 2 node(s)i

13、d=1 192.168.1.111 (Version: 5.2.3)id=2 192.168.1.110 (Version: 5.2.3)mysqld(API) 4 node(s)id=5 192.168.1.111 (Version: 5.2.3)id=6 192.168.1.110 (Version: 5.2.3)ok,可以测试了:在Server1 中# /usr/local/mysql/bin/mysql -u root -pcreate database aa; use aa; CREATE TABLE ctest (i INT) ; INSERT INTO ctest () VALU

14、ES (1); SELECT * FROM ctest;应该可以看到1 row returned信息(返回数值1)。如果上述正常,则换到Server2,观察效果。如果成功,则在Server2中执行INSERT再换回到Server1观察是否工作正常。如果都没有问题,那么恭喜成功!六、破坏性测试将Server1或Server2的网线拔掉(即ifconfig eth0 down),观察另外一台集群服务器工作是否正常(可以使用SELECT查询测试)。测试完毕后,重新插入网线即可。注意:在未对集群做任何读写操作前,此测试结果无效,因为,集群初始后只在/var/lib/mysql-cluster/下建了几个空目录,还没有正常协同工作,会出现整个所有存储(ndbd)节点关闭.也可以这样测试:在Server1或Server2上:# ps aux | grep ndbd将会看到所有ndbd进程信息:root 5578 0.0 0.3 6220 1964 ? S 03:14 0:00 ndbdroot 5579 0.0 20.4 492072 102828 ? R 03:14 0:04 n

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 生活休闲 > 科普知识

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号