欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  数据库

MYSQL使用经验(六)-cluster

程序员文章站 2022-05-02 16:45:55
...

MYSQL使用心得(六)----cluster 官方网站 http://dev.mysql.com/downloads/cluster/ mysql-cluster其实就是mysql7.0版本的别名。但是根据个人经验,在实际生产中,很少有人用。所以这里写个文章,作为入门的了解和学习。 cluster的安装,首先要安装java和cmake

MYSQL使用心得(六)----cluster
官方网站
http://dev.mysql.com/downloads/cluster/
mysql-cluster其实就是mysql7.0版本的别名。但是根据个人经验,在实际生产中,很少有人用。所以这里写个文章,作为入门的了解和学习。

MYSQL使用经验(六)-cluster


cluster的安装,首先要安装java和cmake
datadir=/data0/search/mysql-cluster

【安装管理节点】
cmake -DCMAKE_INSTALL_PREFIX=/application/search/mysql-cluster/mysql-cluster-gpl-7.2.8
make -j16
make install -j16

复制配置文件,并修改相应配置
mkdir etc
cp support-files/config.huge.ini etc/

启动
./ndb_mgmd --config-file=/application/search/mysql-cluster/mysql-cluster-gpl-7.2.8/etc/config.ini

修改配置重启--reload
./ndb_mgmd --config-file=/application/search/mysql-cluster/mysql-cluster-gpl-7.2.8/etc/config.ini --reload

登录管理客户端
./ndb_mgm

停止
./ndb_mgm -e shutdown

重启其他节点 restart -f;



查看表分区情况
在config.ini必须预留一个空的引擎节点
[API]
Id: 6
> show #看最后一行,否则无法查看表分区情况
Cluster Configuration
---------------------
[ndbd(NDB)] 3 node(s)
id=2 @10.10.128.118 (mysql-5.5.27 ndb-7.2.8, Nodegroup: 0, Master)
id=3 @10.10.128.117 (mysql-5.5.27 ndb-7.2.8, Nodegroup: 1)
id=5 @10.10.128.119 (mysql-5.5.27 ndb-7.2.8, Nodegroup: 2)

[ndb_mgmd(MGM)] 1 node(s)
id=1 @10.10.128.119 (mysql-5.5.27 ndb-7.2.8)

[mysqld(API)] 2 node(s)
id=4 @10.10.128.116 (mysql-5.5.27 ndb-7.2.8)
id=6 (not connected, accepting connect from any host)
查看命令
./ndb_desc user -d opendata_test -p

【安装数据节点】
./scripts/mysql_install_db --user=search --datadir=/data0/search/mysql-cluster
创建配置文件/application/search/mysql-cluster/mysql-cluster-gpl-7.2.8/etc/ndb.ini

[mysqld]
datadir=/data0/search/mysql-cluster
skip-locking
ndbcluster
ndb-connectstring=10.10.128.119:1186
[mysql_cluster]
ndb-connectstring=10.10.128.119:1186


启动数据节点 ,第一次启动必须带上--initial
./ndbd --defaults-file=/application/search/mysql-cluster/mysql-cluster-gpl-7.2.8/etc/ndb.ini --initial




【安装mysql引擎】
创建配置文件/application/search/mysql-cluster/mysql-cluster-gpl-7.2.8/etc/ndb.ini
并加入
[mysqld]
# ndb
ndbcluster
ndb-connectstring=10.10.128.119:1186

初始化
./scripts/mysql_install_db --user=search --datadir=/data0/search/mysql-cluster

启动
./mysqld -uroot &

SELECT TABLE_SCHEMA, TABLE_NAME FROM INFORMATION_SCHEMA.TABLES WHERE ENGINE = 'NDBCLUSTER';
ALTER ONLINE TABLE table_name REORGANIZE PARTITION



【创建磁盘表】
创建日志文件
CREATE LOGFILE GROUP lg_cloudstor ADD UNDOFILE 'cloudstor_undo_1.log' INITIAL_SIZE 1024M UNDO_BUFFER_SIZE 20M ENGINE NDBCLUSTER;
该语句可能会出错,出现ERROR 1064 (42000)语法错误的信息,原因是字符集的问题,先执行:set character_set_client=latin1; 在执行:
ALTER LOGFILE GROUP lg_cloudstor ADD UNDOFILE 'cloudstor_undo_2.log' INITIAL_SIZE 1024M ENGINE NDBCLUSTER;
ALTER LOGFILE GROUP lg_cloudstor ADD UNDOFILE 'cloudstor_undo_3.log' INITIAL_SIZE 1024M ENGINE NDBCLUSTER;

创建表空间
CREATE TABLESPACE ts_cloudstore ADD DATAFILE 'cloudstore_data_1.dbf' USE LOGFILE GROUP lg_cloudstor INITIAL_SIZE 1024M AUTOEXTEND_SIZE 256M ENGINE NDBCLUSTER;
ALTER TABLESPACE ts_cloudstore ADD DATAFILE 'cloudstore_data_2.dbf' INITIAL_SIZE 1024M AUTOEXTEND_SIZE 256M ENGINE NDBCLUSTER;

创建表
create table disktable( \
id int auto_increment primary key, \
c1 varchar(50) not null, \
c2 varchar(30) default null, \
c3 date default null, \
index(c1))TABLESPACE ts_cloudstore STORAGE DISK ENGINE=ndbcluster

删除
drop table disktable;
alter tablespace ts_cloudstore drop datafile 'cloudstore_data_1.dbf' engine ndbcluster;
alter tablespace ts_cloudstore drop datafile 'cloudstore_data_2.dbf' engine ndbcluster;

drop tablespace ts_cloudstore engine ndbcluster;

drop logfile group lg_cloudstor engine ndbcluster;