免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 5344 | 回复: 2
打印 上一主题 下一主题

[原创] mysql -cluster 的源代码安装步骤。 带有部分问题解决方案 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2008-02-26 12:52 |只看该作者 |倒序浏览
目前还没有在坛子里找到源代码安装MYSQL-CLUSTER 的帖子,自己摸索着搞了一套。

共享给大家讨论!

MYSQL-5.1.19-BETA   安装 mysql-cluster  步骤
1。下载源代码包, 目前最新包为MYSQL-5.1.23-BETA.TAR.GZ  安装方式同本文档。
   主机 IP : 192.168.74.4  192.168.74.3  
2。检查系统是否已经安装一下RPM包。 目前OS 为LINUX AS 4 UPDATE 4
  > rpm -qa |grep libstdc++    ##  目前已经查明的如果没有这几个RPM包,将无法把CLUSTER 编译进MYSQLD 中。
  
compat-libstdc++-33-3.2.3-47.3
libstdc++-devel-3.4.6-3
compat-libstdc++-296-2.96-132.7.2
libstdc++-3.4.6-3
如果没有安装以上RPM 请自行安装。
3.解压缩

tar  -zxvf  mysql-5.1.19.tar.gz  
4.安装
cd /data/mysql-5.1.19-beta
./configure \
--with-charset=utf8
--with-collation=utf8_bin
--with-extra-charsets=gbk,gb2312,big5,utf8,binary,ascii
--prefix=/data/mysql
--with-plugins=partition,ndbcluster
--with-ndb-docs
--with-ndb-test
make
make install
5.
groupadd mysql
useradd  -g mysql mysql
passwd mysql
cd /data/mysql
chown  -R root.mysql  .
bin/mysql_install_db --user=mysql   ##  在执行本步骤时有可能会报错
5.1  错误信息;
[email=root@localhost]root@localhost[/email] mysql]# bin/mysql_install_db --user=mysql
Installing MySQL system tables...
080226 11:05:30 [ERROR] /data/mysql/libexec/mysqld: unknown option '--~'
080226 11:05:30 [ERROR] Aborting
080226 11:05:30 [Note] /data/mysql/libexec/mysqld: Shutdown complete
Installation of system tables failed!
出现这个错误一般情况下是主机上GCC的相关的一些开发包没有安装上,本人尚未确认具体缺那些包。
5.2 错误信息:
[root@test232 mysql]# bin/mysql_install_db --user=mysql
Installing MySQL system tables...
080226 11:20:29 [Warning] /data/mysql/libexec/mysqld: unknown option '--loose-skip-innodb'
OK
Filling help tables...
080226 11:20:29 [Warning] /data/mysql/libexec/mysqld: unknown option '--loose-skip-innodb'
OK
出现这个错误,尚不明白原因,但不影响数据库的启动和CLUSETER 的启用。目前只遇到此两种情况。

6。构建CLUSTER 。
  6。1  在两台主机上分别运行1-5步骤,  
  6。2  在其中一台主机上: (74.4)
     cd /data/mysql/libexec
     vi config.ini
    添加一下内容:
[NDBD DEFAULT]
NoOfReplicas= 2
DataDir= /data/mysql/libexec
[NDB_MGMD]
Hostname= 192.168.74.4
DataDir=  /data/mysql/var
[NDBD]
HostName= 192.168.74.3
[NDBD]
HostName= 192.168.74.4
[MYSQLD]
HostName=192.168.74.3
[MYSQLD]
HostName=192.168.74.4
6。3  在两台主机上分别:
  su -  
        vi /etc/my.cnf
增加或修改一下内容:
[MYSQLD]
ndbcluster                      # run NDB engine
ndb-connectstring=192.168.74.4  # location of MGM node
# Options for ndbd process:
[MYSQL_CLUSTER]
ndb-connectstring=192.168.74.4  # location of MGM node
6。4  在74。4上  
     cd /data/mysql/libexec
     ./ndb_mgmd  -f  config.ini  
     
    cd /data/mysql-5.1.19-beta/storage/ndb/src/kernel
     ./ndbd --initial
    在74。3 上
     cd /data/mysql-5.1.19-beta/storage/ndb/src/kernel
     ./ndbd --initial
    在74。4上  
    cd /data/mysql
    bin/ndb_mgm  
    show  [root@test232 libexec]# ../bin/ndb_mgm
-- NDB Cluster -- Management Client --
ndb_mgm> show
Connected to Management Server at: 192.168.74.4:1186
Cluster Configuration
---------------------
[ndbd(NDB)]     2 node(s)
id=2    @192.168.74.3  (Version: 5.1.19, Nodegroup: 0, Master)
id=3    @192.168.74.4  (Version: 5.1.19, Nodegroup: 0)
[ndb_mgmd(MGM)] 1 node(s)
id=1    @192.168.74.4  (Version: 5.1.19)
[mysqld(API)]   2 node(s)
id=4 (not connected, accepting connect from 192.168.74.3)
id=5    @192.168.74.4  (Version: 5.1.19)


6。5  在两台主机上
      cd /data/mysql
  bin/mysqld_safe --user=mysql
机群数据库启动完成。
7。验证:
   
SQL>  SHOW ENGINES ;

mysql> SHOW ENGINES ;
+------------+---------+-----------------------------------------------------------+--------------+----+------------+
| Engine     | Support | Comment                                                   | Transactions | XA | Savepoints |
+------------+---------+-----------------------------------------------------------+--------------+----+------------+
| ndbcluster | YES     | Clustered, fault-tolerant tables                          | YES          | NO | NO         |
| MRG_MYISAM | YES     | Collection of identical MyISAM tables                     | NO           | NO | NO         |
| CSV        | YES     | CSV storage engine                                        | NO           | NO | NO         |
| MyISAM     | DEFAULT | Default engine as of MySQL 3.23 with great performance    | NO           | NO | NO         |
| MEMORY     | YES     | Hash based, stored in memory, useful for temporary tables | NO           | NO | NO         |
+------------+---------+-----------------------------------------------------------+--------------+----+------------+
5 rows in set (0.00 sec)
  
  在其中一台主机上
create database  dbtest ;
  use dbtest ;
create table  abc (id int ) engine=ndbcluster ;
insert into abc values(1) ;
commit;
在另一台主机上
creat database  dbtest;
  flush tables ;
show tables;
mysql> show tables;
+------------------+
| Tables_in_dbtest |
+------------------+
| ab               |
+------------------+
1 row in set (0.00 sec)
8 . oK   到此为止,一个MYSQL-CLUSTER 就初步完成了。其他的my.cnf参数请自行修改,添加。

论坛徽章:
0
2 [报告]
发表于 2008-02-26 13:04 |只看该作者
直接下载rpm或者tar.gz包用了,何必这么麻烦,呵呵

论坛徽章:
0
3 [报告]
发表于 2008-02-26 13:27 |只看该作者
用源代码安装的话,如果GLIBC版本不够,还得升级,还得编译内核...
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP