ITPUB论坛-中国专业的IT技术社区

 找回密码
 注册
查看: 143822|回复: 42

[精华] 小试牛刀mysql_cluser学习(一)---集群安装

[复制链接]
认证徽章
论坛徽章:
14
2012新春纪念徽章
日期:2012-01-04 11:58:44 2014年世界杯参赛球队: 德国
日期:2014-05-30 12:58:23优秀写手
日期:2013-12-18 09:29:11凯迪拉克
日期:2013-11-19 14:35:20路虎
日期:2013-11-18 16:25:37灰彻蛋
日期:2013-05-31 08:48:322013年新春福章
日期:2013-02-25 14:51:24灰彻蛋
日期:2012-11-13 11:23:38蜘蛛蛋
日期:2012-11-02 16:35:05奥运会纪念徽章:排球
日期:2012-07-10 09:51:40
跳转到指定楼层
1#
发表于 2012-4-14 21:39 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 zhangshengdong 于 2012-4-14 21:42 编辑

第一步:集群ip地址的规划

Node
IP Address

Management node (mgmd)
192.168.1.20

SQL node (mysqld)
192.168.1.30

Data node "A" (ndbd)
192.168.1.40

Data node "B" (ndbd)
192.168.1.50



其中mask:255.255.255.0
Default gateway 192.168.1.1

模拟的环境:两台pc,装了vm,虚拟化出4台pc机子
系统:32位red hat enterprise 5
用ftp上传相关的mysql套件(放在usr/tmp):
mysql-cluster-gpl-7.1.2-beta-linux-i686-glibc23.tar.gz

第二步:在linux(192.168.1.20)上安装MySQL Cluster Binary Release
Data nodes and SQL nodes(数据节点和sql节点)

  • 添加mysql用户和mysql用户组
2.           shell> groupadd mysql
3.           shell> useradd -g mysql mysql

  • cd到你放置mysql套件的位置(/usr/tmp),解压cluster包到/usr/local下,创建连接到/usr/local/mysql.
5.           shell> cd /usr/tmp
6.           shell> tar -C /usr/local -xzvf mysql-cluster-gpl-7.1.2-beta-linux-i686-glibc23.tar.gz
7.           shell> ln -s /usr/local/mysql-cluster-gpl-7.1.2-beta-linux-i686-glibc23 /usr/local/mysql

  • cd到mysql目录下,创建mysql系统数据库(mysql_install_db这个是mysql的系统脚本):
9.           shell> cd /usr/local/mysql
10.       shell> scripts/mysql_install_db --user=mysql

  • 为mysql 服务器和数据目录赋予必要的权限
12.       shell> chown -R root .
13.       shell> chown -R mysql data
14.       shell> chgrp -R mysql .





认证徽章
论坛徽章:
14
2012新春纪念徽章
日期:2012-01-04 11:58:44 2014年世界杯参赛球队: 德国
日期:2014-05-30 12:58:23优秀写手
日期:2013-12-18 09:29:11凯迪拉克
日期:2013-11-19 14:35:20路虎
日期:2013-11-18 16:25:37灰彻蛋
日期:2013-05-31 08:48:322013年新春福章
日期:2013-02-25 14:51:24灰彻蛋
日期:2012-11-13 11:23:38蜘蛛蛋
日期:2012-11-02 16:35:05奥运会纪念徽章:排球
日期:2012-07-10 09:51:40
2#
发表于 2012-4-14 21:43 | 只看该作者
注意:每个主机上面的数据节点的数据目录必须是/usr/local/mysql/data后续配置管理节点有很大的作用
  • Copy the MySQL startup script to the appropriate directory, make it executable, and set it to start when the operating system is booted up:
  • 复制mysql.server 到/etc/rc.d/init.d/赋予执行权限,有必要在系统启动级别上加入mysql.server
3.           shell> cp support-files/mysql.server /etc/rc.d/init.d/
4.           shell> chmod +x /etc/rc.d/init.d/mysql.server
5.           shell> chkconfig --add mysql.server

Management nodes. (管理节点)
以root用户执行下列语句
(这里有个问题,我并没有在mysql的官方网上找到mysql-5.1.61-ndb-7.1.21-linux-i686-glibc23.tar.gz,然后我发现其实mysql-cluster-gpl-7.1.2-beta-linux-i686-glibc23.tar.gz里面也有ndb_mgm*,所以我所有的节点都装上了mysql-cluster-gpl-7.1.2-beta版本
  • cd到/var/tmp目录下,解压ndb包 cd 到解压的包中,复制bin/ndb_mgm*到/usr/local/bin
2.           shell> cd /var/tmp
3.           shell> tar -zxvf mysql-5.1.61-ndb-7.1.21-linux-i686-glibc23.tar.gz
4.           shell> cd mysql-5.1.61-ndb-7.1.21-linux-i686-glibc23
5.           shell> cp bin/ndb_mgm* /usr/local/bin
(You can safely delete the directory created by unpacking the downloaded archive, and the files it contains, from /var/tmp once ndb_mgm and ndb_mgmd have been copied to the executables directory.)
  • cd到/usr/local/bin目录下,赋予执行(+x)权限
7.           shell> cd /usr/local/bin
shell> chmod +x ndb_mgm*

使用道具 举报

回复
认证徽章
论坛徽章:
14
2012新春纪念徽章
日期:2012-01-04 11:58:44 2014年世界杯参赛球队: 德国
日期:2014-05-30 12:58:23优秀写手
日期:2013-12-18 09:29:11凯迪拉克
日期:2013-11-19 14:35:20路虎
日期:2013-11-18 16:25:37灰彻蛋
日期:2013-05-31 08:48:322013年新春福章
日期:2013-02-25 14:51:24灰彻蛋
日期:2012-11-13 11:23:38蜘蛛蛋
日期:2012-11-02 16:35:05奥运会纪念徽章:排球
日期:2012-07-10 09:51:40
3#
发表于 2012-4-14 21:43 | 只看该作者
第三步:Initial Configuration of MySQL Cluster(linux集群的初始化配置)

Configuring the data nodes and SQL nodes
(数据结点和sql结点的配置操作)

shell> vi /etc/my.cnf
[mysqld]
# Options for mysqld process:
ndbcluster                      # run NDB storage engine
ndb-connectstring=192.168.1.10  # location of management server
[mysql_cluster]
# Options for ndbd process:
ndb-connectstring=192.168.1.10  # location of management server

管理结点的ip是192.168.1.10

Configuring the management node.
(管理结点的配置操作)

shell> mkdir /var/lib/mysql-cluster
shell> cd /var/lib/mysql-cluster
shell> vi config.ini
For our representative setup, the config.ini file should read as follows:
[ndbd default]
# Options affecting ndbd processes on all data nodes:
NoOfReplicas=2    # Number of replicas
DataMemory=80M    # How much memory to allocate for data storage
IndexMemory=18M   # How much memory to allocate for index storage
                  # For DataMemory and IndexMemory, we have used the
                  # default values. Since the "world" database takes up
                  # only about 500KB, this should be more than enough for
                  # this example Cluster setup.
[tcp default]
# TCP/IP options:
portnumber=2202   # This the default; however, you can use any
                  # port that is free for all the hosts in the cluster
                  # Note: It is recommended that you do not specify the port
                  # number at all and simply allow the default value to be used
                  # instead
[ndb_mgmd]

使用道具 举报

回复
认证徽章
论坛徽章:
14
2012新春纪念徽章
日期:2012-01-04 11:58:44 2014年世界杯参赛球队: 德国
日期:2014-05-30 12:58:23优秀写手
日期:2013-12-18 09:29:11凯迪拉克
日期:2013-11-19 14:35:20路虎
日期:2013-11-18 16:25:37灰彻蛋
日期:2013-05-31 08:48:322013年新春福章
日期:2013-02-25 14:51:24灰彻蛋
日期:2012-11-13 11:23:38蜘蛛蛋
日期:2012-11-02 16:35:05奥运会纪念徽章:排球
日期:2012-07-10 09:51:40
4#
发表于 2012-4-14 21:45 | 只看该作者
# Management process options:
hostname=192.168.1.20           # Hostname or IP address of MGM node
datadir=/var/lib/mysql-cluster  # Directory for MGM node log files
[ndbd]
# Options for data node "A":
                                # (one [ndbd] section per data node)
hostname=192.168.1.40           # Hostname or IP address
datadir=/usr/local/mysql/data   # Directory for this data node's data files
[ndbd]
# Options for data node "B":
hostname=192.168.1.50           # Hostname or IP address
datadir=/usr/local/mysql/data   # Directory for this data node's data files
[mysqld]
# SQL node options:
hostname=192.168.1.30           # Hostname or IP address
                                # (additional mysqld connections can be
                                # specified for this node for various
                                # purposes such as running ndb_restore)


其中对应的hostname=192.168.1.20是本实验的管理结点
管理结点的datadirmgm node log files

hostname=192.168.1.40是本实验的数据结点
datadirdata node's data files
hostname=192.168.1.50是本实验的数据结点
datadirdata node's data files

hostname=192.168.1.30是本实验的sql结点
这里只跑着sql服务器,没有任何数据在其中,(数据在4050服务器上)






第四步:Initial Startup of MySQL Clustermysql集群的初始化启动)

这里启动有个先后顺序,先启动management host,再启动data node hosts,最后启动
MySQL 结点服务器

使用道具 举报

回复
认证徽章
论坛徽章:
14
2012新春纪念徽章
日期:2012-01-04 11:58:44 2014年世界杯参赛球队: 德国
日期:2014-05-30 12:58:23优秀写手
日期:2013-12-18 09:29:11凯迪拉克
日期:2013-11-19 14:35:20路虎
日期:2013-11-18 16:25:37灰彻蛋
日期:2013-05-31 08:48:322013年新春福章
日期:2013-02-25 14:51:24灰彻蛋
日期:2012-11-13 11:23:38蜘蛛蛋
日期:2012-11-02 16:35:05奥运会纪念徽章:排球
日期:2012-07-10 09:51:40
5#
发表于 2012-4-14 21:46 | 只看该作者
脚本如下:
  管理结点服务器启动脚本:
1.           shell> ndb_mgmd -f /var/lib/mysql-cluster/config.ini

   数据节点服务器启动脚本:
2.           shell> /usr/local/mysql/bin/ndbd
   
  mysql服务器启动脚本
3.             shell>/etc/init.d/mysql.server start
  
疑难问题:
(1)config.ini配置信息出错

[root@localhost mysql-cluster]# ndb_mgmd -f /var/lib/mysql-cluster/config.ini
2012-04-14 23:53:23 [MgmtSrvr] INFO     -- NDB Cluster Management Server. mysql-5.1.41 ndb-7.1.2beta
2012-04-14 23:53:23 [MgmtSrvr] INFO     -- Reading cluster configuration from '/var/lib/mysql-cluster/config.ini'
2012-04-14 23:53:23 [MgmtSrvr] ERROR    -- at line 2: Value specified outside section
2012-04-14 23:53:23 [MgmtSrvr] ERROR    -- at line 2: Could not parse name-value pair in config file.
2012-04-14 23:53:23 [MgmtSrvr] ERROR    -- Could not load configuration from '/var/lib/mysql-cluster/config.ini'
2012-04-14 23:53:23 [MgmtSrvr] ERROR    -- Could not determine which nodeid to use for this node. Specify it with --ndb-nodeid=<nodeid> on command line

这里解决的方法,是config.ini配置文件缺失了[ndb_mgmd]的这条信息


没有连接数据结点和sql结点状态前

[root@localhost ~]# ndb_mgm(进去NDB cluster 客户端
-- NDB Cluster -- Management Client --
ndb_mgm> show(查看状态,其中数据结点和sql结点都没有连接,但cluster起来了
Connected to Management Server at: localhost:1186
Cluster Configuration
---------------------
[ndbd(NDB)]     2 node(s)
id=2 (not connected, accepting connect from 192.168.1.40)
id=3 (not connected, accepting connect from 192.168.1.50)

[ndb_mgmd(MGM)] 1 node(s)
id=1    @192.168.1.20  (mysql-5.1.41 ndb-7.1.2)

[mysqld(API)]   1 node(s)
id=4 (not connected, accepting connect from 192.168.1.30)

ndb_mgm>exit(先退出

执行上述数据结点脚本和mysql数据库脚本,再次进入ndb_mgm,查看状态:


ndb_mgm> show
Cluster Configuration
---------------------
[ndbd(NDB)]     2 node(s)
id=2    @192.168.1.40  (mysql-5.1.41 ndb-7.1.2, Nodegroup: 0, Master)
id=3    @192.168.1.50  (mysql-5.1.41 ndb-7.1.2, Nodegroup: 0)
[ndb_mgmd(MGM)] 1 node(s)
id=1    @192.168.1.20  (mysql-5.1.41 ndb-7.1.2)
[mysqld(API)]   1 node(s)
id=4    @192.168.1.30  (mysql-5.1.41 ndb-7.1.2)
ndb_mgm>

到这里,mysql cluster集群安装成功

使用道具 举报

回复
认证徽章
论坛徽章:
14
2012新春纪念徽章
日期:2012-01-04 11:58:44 2014年世界杯参赛球队: 德国
日期:2014-05-30 12:58:23优秀写手
日期:2013-12-18 09:29:11凯迪拉克
日期:2013-11-19 14:35:20路虎
日期:2013-11-18 16:25:37灰彻蛋
日期:2013-05-31 08:48:322013年新春福章
日期:2013-02-25 14:51:24灰彻蛋
日期:2012-11-13 11:23:38蜘蛛蛋
日期:2012-11-02 16:35:05奥运会纪念徽章:排球
日期:2012-07-10 09:51:40
6#
发表于 2012-4-14 21:47 | 只看该作者
vicky987654321 发表于 2012-4-14 21:40

使用道具 举报

回复
认证徽章
论坛徽章:
104
生肖徽章2007版:猪
日期:2012-07-12 14:24:56菠菜神灯
日期:2013-05-26 22:03:18生肖徽章2007版:猪
日期:2012-07-19 11:10:12生肖徽章2007版:猪
日期:2012-07-19 11:10:12生肖徽章2007版:猪
日期:2012-07-11 19:07:11生肖徽章2007版:猪
日期:2012-07-19 11:10:12生肖徽章2007版:猪
日期:2012-07-19 11:10:12ITPUB伯乐
日期:2012-05-22 15:05:25NBA季后赛纪念徽章
日期:2013-06-21 14:52:05NBA季后赛大富翁
日期:2013-06-21 14:57:11
7#
发表于 2012-4-14 21:53 | 只看该作者
zhangshengdong 发表于 2012-4-14 21:47

不好意思,站了你二楼了。
哈哈,给你倒出来,方便大家浏览!

使用道具 举报

回复
论坛徽章:
33
ITPUB新首页上线纪念徽章
日期:2007-10-20 08:38:44复活蛋
日期:2013-02-16 21:33:062013年新春福章
日期:2013-02-25 14:51:24鲜花蛋
日期:2013-06-20 09:44:48夏利
日期:2013-09-23 08:54:16雪佛兰
日期:2013-12-08 09:36:44雪佛兰
日期:2014-01-29 16:16:21雪铁龙
日期:2014-02-14 14:49:362014年新春福章
日期:2014-02-18 16:42:02马上有房
日期:2014-02-18 16:42:02
8#
发表于 2012-4-14 22:09 | 只看该作者

使用道具 举报

回复
论坛徽章:
0
9#
发表于 2012-4-14 23:36 | 只看该作者
赞一个呵呵

使用道具 举报

回复
论坛徽章:
0
10#
发表于 2012-4-24 13:40 | 只看该作者
zhangshengdong 发表于 2012-4-14 21:43
注意:每个主机上面的数据节点的数据目录必须是/usr/local/mysql/data,后续配置管理节点有很大的作用
  • ...

  • mysql-5.1.61-ndb-7.1.21-linux-i686-glibc23 这个包在哪里下载  

    我根本找不到  麻烦发一个链接给我

    使用道具 举报

    回复

    您需要登录后才可以回帖 登录 | 注册

    本版积分规则

    TOP技术积分榜 社区积分榜 徽章 电子杂志 团队 统计 虎吧 老博客 知识索引树 读书频道 积分竞拍 文本模式 帮助
      ITPUB首页 | ITPUB论坛 | 数据库技术 | 企业信息化 | 开发技术 | 微软技术 | 软件工程与项目管理 | IBM技术园地 | 行业纵向讨论 | IT招聘 | IT文档 | IT博客
      ChinaUnix | ChinaUnix博客 | ChinaUnix论坛 | SAP ERP系统
    CopyRight 1999-2011 itpub.net All Right Reserved. 北京盛拓优讯信息技术有限公司版权所有 联系我们 网站律师 隐私政策 知识产权声明
    京ICP备16024965号 北京市公安局海淀分局网监中心备案编号:11010802021510 广播电视节目制作经营许可证:编号(京)字第1149号
      
    快速回复 返回顶部 返回列表
    http://www.vxiaotou.com