MySQL Cluster MySQL集群
Linux最新版本7.3.2
文件 | 大小 | md5 |
---|---|---|
mysqlcluster-7.3.2-linux-x32.tar.gz | 431.0MB | 03093541b6416fc93935750d614d875b |
mysqlcluster-7.3.2-linux-x64.tar.gz | 441.8MB | 330c71a87fbf8f0468ec9c5e0ad6e794 |
Window最新版本7.3.2
文件 | 大小 | md5 |
---|---|---|
mysqlcluster-7.3.2-windows-x32.msi | 100.2MB | 9d25735d7e8af1a2e805f9a1fecc3a1f |
mysqlcluster-7.3.2-windows-x64.msi | 95.5MB | 6fe30e2045f074f471761cb17f0c3d1c |
基本概念:
1
2
3
4
5
6
7
8
|
groupadd mysql
useradd
-g mysql -s
/sbin/nologin
mysql
tar
-zxvf mysql-cluster-gpl-7.3.2-linux-glibc2.5-x86_64.
tar
.gz
mv
mysql-cluster-gpl-7.3.2-linux-glibc2.5-x86_64
/usr/local/mysql-cluster
chown
-R root.mysql
/usr/local/mysql/
chown
-R mysql.mysql
/usr/local/mysql/data/
/usr/local/mysql/scripts/mysql_install_db
--basedir=
/usr/local/mysql
--datadir=
/usr/local/mysql/data
--user=mysql &
#初始化数据库
cp
-rf
/usr/local/mysql/bin/ndb_mgm
*
/usr/local/bin/
#复制ndb节点管理命令到本地,方便使用
|
1
2
3
4
5
6
7
8
9
10
11
12
|
vi
/etc/my
.cnf
[MYSQLD]
user = mysql
socket =
/tmp/mysql
.sock
basedir =
/usr/local/mysql
#安装目录
datadir =
/usr/local/mysql/data
#数据库存放目录
character-
set
-server=UTF8
ndbcluster
#运行NDB存储引擎
ndb-connectstring=192.168.0.202
lower_case_table_names=1
#表名是否区分大小写1为不区分,不然linux下表名是区分大小写的
[MYSQL_CLUSTER]
ndb-connectstring=192.168.0.202
#Mysql Cluster管理节点IP
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
|
mkdir
/var/lib/mysql-cluster
vi
/var/lib/mysql-cluster/config
.ini
[ndbd default]
NoOfReplicas=2
#定义在Cluster环境中相同数据的份数,最大为4
DataMemory=256M
#分配的数据内存大小,根据本机服务器内存适量来分配
IndexMemory=256M
#设定用于存放索引(非主键)数据的内存段大小
#一个NDB节点能存放的数据量是会受到DataMemory和IndexMemory两个参数设置的约束,两者任何一个达到限制数量后,都无法再增加能存储的数据量。如果继续存入数据系统会报错“table is full”。
[ndb_mgmd]
nodeid=1
hostname
=192.168.0.202
datadir=
/var/lib/mysql-cluster/
[ndbd]
nodeid=2
hostname
=192.168.0.203
datadir=
/usr/local/mysql/data
[ndbd]
nodeid=3
hostname
=192.168.0.204
datadir=
/usr/local/mysql/data
[mysqld]
nodeid=4
hostname
=192.168.0.203
[mysqld]
nodeid=5
hostname
=192.168.0.204
保存退出!
chown
mysql.mysql
/var/lib/mysql-cluster/config
.ini
|
1
2
3
4
5
6
7
8
9
10
|
tar
-zxvf mysql-cluster-gpl-7.3.2-linux-glibc2.5-x86_64.
tar
.gz
mv
mysql-cluster-gpl-7.3.2-linux-glibc2.5-x86_64
/usr/local/mysql
groupadd mysql
useradd
-g mysql -s
/sbin/nologin
mysql
chown
-R root.mysql
/usr/local/mysql
chown
-R mysql.mysql
/usr/local/mysql/data
/usr/local/mysql/scripts/mysql_install_db
--basedir=
/usr/local/mysql
--datadir=
/usr/local/mysql/data
--user=mysql &
#初始化数据库
cp
/usr/local/mysql/support-files/mysql
.server
/etc/init
.d
/mysqld
cp
/usr/local/mysql/support-files/medium
.cnf
/etc/my
.cnf
chmod
+x
/etc/init
.d
/mysqld
|
1
2
3
4
5
6
7
8
9
10
11
|
vi
/etc/my
.cnf
[MYSQLD]
user=mysql
character_set_server=utf8
ndbcluster
ndb-connectstring=192.168.0.202
default-storage-engine=ndbcluster
#设置默认是NDB存储引擎
datadir=
/usr/local/mysql/data
basedir=
/usr/local/mysql
[MYSQL_CLUSTER]
ndb-connectstring=192.168.0.202
#mysql cluster 管理节点IP
|
1
2
3
|
ndb_mgmd -f
/var/lib/mysql-cluster/config
.ini --initial
netstat
-tuplna |
grep
1186
#默认连接端口1186,启动成功
tcp 0 0 0.0.0.0:1186 0.0.0.0:* LISTEN 1369
/ndb_mgmd
|
1
2
3
4
5
6
|
mysql -u root -p
Mysql>create database
test
;
Mysql>use
test
;
Mysql>create table abc (
id
int) engine=ndbcluster;
#指定数据库表的引擎为NDB,否则同步失败
Mysql>Insert into abc ()values (1);
Mysql>
select
* from abc;
|