Chinaunix首页 | 论坛 | 博客
  • 博客访问: 337521
  • 博文数量: 103
  • 博客积分: 3886
  • 博客等级: 中校
  • 技术积分: 1005
  • 用 户 组: 普通用户
  • 注册时间: 2010-04-28 15:00
文章分类

全部博文(103)

文章存档

2011年(30)

2010年(73)

分类: LINUX

2011-07-19 14:47:47

系统:Linux5.5
mysql软件:mysql-cluster-gpl-7.1.4b-linux-i686-glibc23.tar.gz
 
数据节点110.80.11.203
数据节点210.80.11.204
管理节点:10.80.11.205
sql节点:10.80.11.20310.80.11.204
 
1.       管理节点的安装
#groupadd mysql
#useradd mysql -g mysql
#mv mysql-cluster-gpl-7.1.4b-linux-i686-glibc23.tar.gz /usr/local/
#cd /usr/local/
#tar zxvf mysql-cluster-gpl-7.1.4b-linux-i686-glibc23.tar.gz
#mv mysql-cluster-gpl-7.1.4b-linux-i686-glibc23 mysql
#chown -R mysql:mysql mysql
#cd mysql
#scripts/mysql_install_db --user=mysql
 
2.       配置管理节点
#mkdir /var/lib/mysql-cluster
#cd /var/lib/mysql-cluster
#vim config.ini
[ndbd default]
NoOfReplicas=2
DataMemory=80M
IndexMemory=18M
[ndb_mgmd]
Id=1
Hostname=10.80.11.205  //管理IP
datadir=/usr/local/mysql/logs
[ndbd]
Id=2
Hostname=10.80.11.203           //数据节点1
datadir=/usr/local/mysql/data/      //数据文件位置
[ndbd]
Id=3
Hostname=10.80.11.204              //数据节点2
datadir=/usr/local/mysql/data/        //数据文件位置
[MYSQLD]
[MYSQLD]
 
3.       安装配置数据节点
这里2台机器数据节点安装是相同的.
#groupadd mysql
#useradd mysql -g mysql
#mv mysql-cluster-gpl-7.1.4b-linux-i686-glibc23.tar.gz /usr/local/
#cd /usr/local/
#tar zxvf mysql-cluster-gpl-7.1.4b-linux-i686-glibc23.tar.gz
#mv mysql-cluster-gpl-7.1.4b-linux-i686-glibc23 mysql
#chown -R mysql:mysql mysql
#cd mysql
#scripts/mysql_install_db --user=mysql
#cp support-files/my-medium.cnf /etc/my.cnf
 #cp support-files/mysql.server /etc/init.d/mysqld
 #vi /etc/my.cnf        
[client]
port           = 3306
socket                = /tmp/mysql.sock
[mysqld]
port           = 3306
socket                = /tmp/mysql.sock
skip-locking
key_buffer_size = 16M
max_allowed_packet = 1M
table_open_cache = 64
sort_buffer_size = 512K
net_buffer_length = 8K
read_buffer_size = 256K
read_rnd_buffer_size = 512K
myisam_sort_buffer_size = 8M
log-bin=mysql-bin
binlog_format=mixed
server-id  = 1
[mysqldump]
quick
max_allowed_packet = 16M
[mysql]
no-auto-rehash
[myisamchk]
key_buffer_size = 20M
sort_buffer_size = 20M
read_buffer = 2M
write_buffer = 2M
[mysqlhotcopy]
interactive-timeout
[mysqld]
datadir=/usr/local/mysql/data/
ndbcluster
ndb-connectstring=10.80.11.205
[mysql_cluster]
ndb-connectstring=10.80.11.205
[ndb_mgm]
connect-string=10.80.11.205
[ndb_mgmd]
config-file=/var/lib/mysql-cluster/config.ini
 
4.       启动服务
在管理节点启动相关服务
#/usr/local/mysql/bin/ndb_mgmd -f /var/lib/mysql-cluster/config.ini
#netstat –lntpu
看到1186开放说明启动正常
 
 
2个数据节点启动相关服务
#/usr/local/mysql/bin/ndbd --initial
#service mysqld start
 
看到nbdb服务和3306端口说明启动OK
 
5.功能测试
在管理节点上查看服务状态
#/usr/local/mysql/bin/ndb_mgm
ndb_mgm> show
可以看到这里的数据节点、管理节点、sql节点都是正常的
测试一:
现在我们在其中一个数据节点上进行相关数据库的创建,然后到另外一个数据节点上看看数据是否同步
在数据节点1上执行:
# /usr/local/mysql/bin/mysql -u root –p
mysql>show databases;
mysql>create database aa;
mysql>use aa
mysql>CREATE TABLE ctest2 (i INT) ENGINE=NDB; //这里必须指定数据库表的引擎为NDB,否则同步失败
mysql> INSERT INTO ctest2 () VALUES (1);
mysql> SELECT * FROM ctest2;
然后在数据节点2上看数据是否同步过来了
 
经过测试,在非master上创建数据,可以同步到master
查看表的引擎是不是NDB>show create table 表名;
 
测试二、关闭一个数据节点 ,在另外一个节点写输入,开启关闭的节点,看数据是否同步过来
首先把数据节点1重启,然后在节点2上添加数据
在节点2上操作如下:
mysql>create database bb;
mysql>use bb
mysql>CREATE TABLE ctest3 (i INT) ENGINE=NDB;
mysql> INSERT INTO ctest2 () VALUES (3333);
mysql> SELECT * FROM ctest2;
此时在管理节点上看到信息如下:
等节点1启动完毕,启动节点1的服务
#/usr/local/mysql/bin/ndbd --initial
#service mysqld start
然后登录进去查看数据
# /usr/local/mysql/bin/mysql -u root –p
可以看到数据已经同步过来了,说明数据可以双向同步了。
发现一个问题,让master重启后,备节点就变成master了,当以前的master启动后,不会主动切换回master的角色。
阅读(1593) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~