centos7安装mysql ndb集群
cd /tmp/
tar -xzf mysql-cluster-gpl-7.6.10-linux-glibc2.12-x86_64.tar.gz
mv mysql-cluster-gpl-7.6.10-linux-glibc2.12-x86_64 /usr/local/mysql
mkdir /usr/local/mysql/data
groupadd mysql
useradd mysql -g mysql
chown -R mysql:mysql /usr/local/mysql
cd /usr/local/mysql
./bin/mysql_install_db --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data
在/etc/mysql-cluster.ini 中添加如下内容
[ndbd default] NoOfReplicas=2 MaxNoOfTables=1024 MaxNoOfUniqueHashIndexes=1024 MaxNoOfOrderedIndexes=1024 MaxNoOfAttributes=10000 [ndb_mgmd] nodeiD = 11 HostName=ndb-1 DataDir=/usr/local/mysql/data [ndbd] nodeiD = 21 HostName=ndb-2 DataDir=/usr/local/mysql/data [ndbd] nodeiD = 31 HostName=ndb-3 DataDir=/usr/local/mysql/data [mysqld] nodeiD = 41 HostName=ndb-2 [mysqld] nodeiD = 51 HostName=ndb-3 |
cd /usr/local/mysql/bin
./ndb_mgmd -f /etc/mysql-cluster.ini --initial --ndb-nodeid=11
cat /root/.mysql_secret
可以mysql看到初始密码
然后根据初始密码登录 并修改密码
alter user user() identified by "Hangzhou@123";
use mysql;
grant all privileges on *.* to 'root'@'%' identified by 'Hangzhou@123' with grant option;
管理节点 查看状态
测试
创建数据库表,简单查看配置效果:
由于为分布式集群,所以,在Mysql中创建的表的存储引擎必须修改为:NDB Cluster,否则数据不会同步到其他节点服务器上。
以下建表与插入数据在一台服务上操作,操作后直接查看其他节点中的mysql,可以看到数据库、表、数据都会同步的。
先创建个数据库mytest
CREATE TABLE tb_city(
id MEDIUMINT UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY,
NAME VARCHAR(20) NOT NULL DEFAULT '')
ENGINE = NDBCLUSTER DEFAULT CHARSET utf8mb4;
INSERT INTO tb_city VALUES(1, 'city1');
INSERT INTO tb_city VALUES(2, 'city2');
INSERT INTO tb_city VALUES(3, 'city3');
https://www.jianshu.com/p/c989ee86d7cf
https://blog.csdn.net/killerover84/article/details/79484064