仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 745|回复: 8
打印 上一主题 下一主题

[学习教程] 绝无经由的怎样安拆卸置基于2台服务器的MySQL集群

[复制链接]
第二个灵魂 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-1-16 20:14:02 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
使用它开发程序也是非常简单的。”这篇文章旨在先容怎样安拆卸置基于2台服务器的MySQL集群。而且完成恣意一台服务器呈现成绩或宕机时MySQL仍然可以持续运转。
注重!固然这是基于2台服务器的MySQL集群,但也必需有分外的第三台服务器作为办理节点,但这台服务器能够在集群启动完成后封闭。同时必要注重的是其实不保举在集群启动完成后封闭作为办理节点的服务器。只管实际上能够创建基于只要2台服务器的MySQL集群,可是如许的架构,一旦一台服务器宕机以后集群就没法持续一般事情了,如许也就得到了集群的意义了。出于这个缘故原由,就必要有第三台服务器作为办理节点运转。别的,大概良多伴侣都没有3台服务器的实践情况,能够思索在VMWare或其他假造机中举行实行。

上面假定这3台服务的情形:

Server1:mysql1.vmtest.net192.168.0.1

Server2:mysql2.vmtest.net192.168.0.2

Server3:mysql3.vmtest.net192.168.0.3

Servers1和Server2作为实践设置MySQL集群的服务器。关于作为办理节点的Server3则请求较低,只需对Server3的体系举行很小的调剂而且无需安装MySQL,Server3可使用一台设置较低的盘算机而且能够在Server3同时运转其他服务。2、在Server1和Server2上安装MySQL

=================================从http://www.mysql.com高低载mysql-max-4.1.9-pc-linux-gnu-i686.tar.gz注重:必需是max版本的MySQL,Standard版本不撑持集群部署!以下步骤必要在Server1和Server2上各做一次

#mvmysql-max-4.1.9-pc-linux-gnu-i686.tar.gz/usr/local/

#cd/usr/local/

#groupaddmysql

#useradd-gmysqlmysql

#tar-zxvfmysql-max-4.1.9-pc-linux-gnu-i686.tar.gz

#rm-fmysql-max-4.1.9-pc-linux-gnu-i686.tar.gz

#mvmysql-max-4.1.9-pc-linux-gnu-i686mysql

#cdmysql

#scripts/mysql_install_db--user=mysql

#chown-Rroot.

#chown-Rmysqldata

#chgrp-Rmysql.

#cpsupport-files/mysql.server/etc/rc.d/init.d/mysqld

#chmod+x/etc/rc.d/init.d/mysqld

#chkconfig--addmysqld此时不要启动MySQL!



安装并设置办理节点服务器(Server3)

=====================================作为办理节点服务器,Server3必要ndb_mgm和ndb_mgmd两个文件:从http://www.mysql.com高低载mysql-max-4.1.9-pc-linux-gnu-i686.tar.gz

#mkdir/usr/src/mysql-mgm

#cd/usr/src/mysql-mgm

#tar-zxvfmysql-max-4.1.9-pc-linux-gnu-i686.tar.gz

#rmmysql-max-4.1.9-pc-linux-gnu-i686.tar.gz

#cdmysql-max-4.1.9-pc-linux-gnu-i686

#mvbin/ndb_mgm.

#mvbin/ndb_mgmd.

#chmod+xndb_mg*

#mvndb_mg*/usr/bin/

#cd

#rm-rf/usr/src/mysql-mgm如今入手下手为这台办理节点服务器创建设置文件:

#mkdir/var/lib/mysql-cluster

#cd/var/lib/mysql-cluster

#viconfig.ini在config.ini中增加以下内容:

[NDBDDEFAULT]

NoOfReplicas=2

[MYSQLDDEFAULT]

[NDB_MGMDDEFAULT]

[TCPDEFAULT]

#ManagmentServer

[NDB_MGMD]

HostName=192.168.0.3#办理节点服务器Server3的IP地点

#StorageEngines

[NDBD]

HostName=192.168.0.1#MySQL集群Server1的IP地点

DataDir=/var/lib/mysql-cluster

[NDBD]

HostName=192.168.0.2#MySQL集群Server2的IP地点

DataDir=/var/lib/mysql-cluster

#以下2个[MYSQLD]能够填写Server1和Server2的主机名。

#但为了可以更快的改换集群中的服务器,保举留空,不然改换服务器后必需对这个设置举行变动。

[MYSQLD]

[MYSQLD]保留加入后,启动办理节点服务器Server3:

#ndb_mgmd启动办理节点后应当注重,这只是办理节点服务,并非办理终端。因此你看不就任何干于启动后的输入信息。4、设置集群服务器并启动MySQL

=============================在Server1和Server2中都必要举行以下修改:

#vi/etc/my.cnf

[mysqld]

ndbcluster

ndb-connectstring=192.168.0.3#Server3的IP地点

[mysql_cluster]

ndb-connectstring=192.168.0.3#Server3的IP地点保留加入后,创建数据目次并启动MySQL:

#mkdir/var/lib/mysql-cluster

#cd/var/lib/mysql-cluster

#/usr/local/mysql/bin/ndbd--initial

#/etc/rc.d/init.d/mysqldstart能够把/usr/local/mysql/bin/ndbd加到/etc/rc.local中完成开机启动。注重:只要在第一次启动ndbd时大概对Server3的config.ini举行修改后才必要利用--initial参数!5、反省事情形态

================回到办理节点服务器Server3上,并启动办理终端:

#/usr/bin/ndb_mgm键进show命令检察以后事情形态:(上面是一个形态输入示例)

[root@mysql3root]#/usr/bin/ndb_mgm

--NDBCluster--ManagementClient--

ndb_mgm>show

ConnectedtoManagementServerat:localhost:1186

ClusterConfiguration

---------------------

[ndbd(NDB)]2node(s)

id=2@192.168.0.1(Version:4.1.9,Nodegroup:0,Master)

id=3@192.168.0.2(Version:4.1.9,Nodegroup:0)

[ndb_mgmd(MGM)]1node(s)

id=1@192.168.0.3(Version:4.1.9)

[mysqld(API)]2node(s)

id=4(Version:4.1.9)

id=5(Version:4.1.9)

ndb_mgm>

假如下面没有成绩,如今入手下手测试MySQL:注重,这篇文档关于MySQL并没有设置root暗码,保举你本人设置Server1和Server2的MySQLroot暗码。在Server1中:

#/usr/local/mysql/bin/mysql-uroot-p

>usetest;

>CREATETABLEctest(iINT)ENGINE=NDBCLUSTER;

>INSERTINTOctest()VALUES(1);

>SELECT*FROMctest;应当能够看到1rowreturned信息(前往数值1)。假如上述一般,则换到Server2上反复下面的测试,察看效果。假如乐成,则在Server2中实行INSERT再换回到Server1察看是不是事情一般。假如都没有成绩,那末祝贺乐成!6、损坏性测试

==============将Server1或Server2的网线拔失落,察看别的一台集群服务器事情是不是一般(可使用SELECT查询测试)。测试终了后,从头拔出网线便可。假如你打仗不到物理服务器,也就是说不克不及拔失落网线,那也能够如许测试:在Server1或Server2上:

#psaux|grepndbd将会看到一切ndbd历程信息:

root55780.00.362201964?S03:140:00ndbd

root55790.020.4492072102828?R03:140:04ndbd

root235320.00.13680684pts/1S07:590:00grepndbd然后杀失落一个ndbd历程以到达损坏MySQL集群服务器的目标:

#kill-955785579以后在另外一台集群服务器上利用SELECT查询测试。而且在办理节点服务器的办理终端中实行show命令会看到被损坏的那台服务器的形态。测试完成后,只必要从头启动被损坏服务器的ndbd历程便可:

#ndbd注重!后面说过了,此时是不必加--inital参数的!至此,MySQL集群就设置完成了!
MySQL采用双重授权(DualLicensed),它们是GPL和MySQLAB制定的商业许可协议。
莫相离 该用户已被删除
沙发
发表于 2015-1-18 18:54:31 | 只看该作者
微软对CLR作了大篇幅的宣传,这是因为数据库产品终于融入.net体系中。最开始我们也是狂喜,感觉对象数据库的一些概念可以实现了。
因胸联盟 该用户已被删除
板凳
发表于 2015-1-25 22:17:03 | 只看该作者
备份方面可能还是一个老大难的问题。不能单独备份几个表总是感觉不爽。灵活备份的问题不知道什么时候才能解决。
变相怪杰 该用户已被删除
地板
发表于 2015-2-4 09:00:04 | 只看该作者
光写几个SQL实在叫无知。
若相依 该用户已被删除
5#
发表于 2015-2-9 21:08:25 | 只看该作者
如安全管理、备份恢复、性能监控和调优等,SQL只要熟悉基本操作就可以,只要程序设计部分只要稍加了解即可(如存储过程、触发器等)。
小女巫 该用户已被删除
6#
发表于 2015-2-27 21:52:10 | 只看该作者
如果处理少量数据,比如几百条记录的数据,我不知道这两种情况哪个效率更高,如果处理大量数据呢?比如有表中有20万条记录.
深爱那片海 该用户已被删除
7#
发表于 2015-3-9 14:55:54 | 只看该作者
SP4包括用于以下SQLServer2000组件的程序包:Database组件(下载文件:SQL2000-KB884525-SP4-x86.EXE)更新SQLServer2000的32位Database组件,包括数据库引擎、复制、客户端连接组件及工具。有关其他信息,请参阅ReadmeSql2k32Sp4.htm。AnalysisServices组件(下载文件:SQL2000.AS-KB884525-SP4-x86.EXE)更新SQLServer2000的32位AnalysisServices。
第二个灵魂 该用户已被删除
8#
 楼主| 发表于 2015-3-17 00:15:51 | 只看该作者
Mirror可以算是SQLServer的Dataguard了。但是能不能被大伙用起来就不知道了。
透明 该用户已被删除
9#
发表于 2015-3-23 10:12:55 | 只看该作者
入门没那么困难,精通没那么容易
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-11-15 03:22

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表