Ubuntu安装MySQL Cluster
2020.9.11
跳转目录:
- 01 Ubuntu换源
- 02 Ubuntu Server 配置静态IP
- 03 Ubuntu与主机共享文件
- 04 Ubuntu安装MySQL Cluster
- 05 Ubuntu配置数据结点
- 06 MySQL Server和Client安装
- 07 MySQL Server安装验证
一、创建Mysql用户
如无特殊说明,之后的所有操作均应以mysql用户进行。
adduser mysql
usermod -aG sudo mysql
二、从共享文件夹中拷贝
cd /mnt/hgfs/ShareFile
sudo cp -r mysql-cluster_8.0.19-1ubuntu16.04_amd64.deb-bundle.tar.tar /home/mysql
三、解压缩
- 解压缩
cd /home/mysql
sudo mkdir install
sudo tar -xvf mysql-cluster_8.0.19-1ubuntu16.04_amd64.deb-bundle.tar.tar -C install/
cd install
- 安装
注意以mysql用户进行安装
sudo apt update
sudo apt-get update
# 安装必要依赖
sudo apt install libaio1 libmecab2
- 克隆一个虚拟机,然后再进行下一步集群配置。在此时克隆最好,克隆的虚拟机不需要做太多操作,只需要搭建数据节点即可。
四、安装配置集群管理器
- 用dpkg指令在Cluster Manager服务器(假定为 192.168.50.129)上安装 ndb_mgmd。
sudo dpkg -i mysql-cluster-community-management-server_8.0.19-1ubuntu16.04_amd64.deb
- Cluster Manager 应该是MySQL Cluster 第一个启动的组件.它需要一个配置文件来加载参数. 我们创建配置文件: /var/lib/mysql-cluster/config.ini.
# 创建文件夹
sudo mkdir /var/lib/mysql-cluster
# 创建配置文件
sudo vim /var/lib/mysql-cluster/config.ini
书写内容如下,注意IP地址是否与你配置的一致:
[ndbd default]
# Options affecting ndbd processes on all data nodes:
NoOfReplicas=2 # Number of replicas
[ndb_mgmd]
# Management process options:
hostname=192.168.50.129 # Hostname of the manager
NodeId=1
datadir=/var/lib/mysql-cluster # Directory for the log files
[ndbd]
hostname=192.168.50.128 # Hostname/IP of the first data node
NodeId=11 # Node ID for this data node
datadir=/usr/local/mysql/data # Remote directory for the data files
[ndbd]
hostname=192.168.50.129 # Hostname/IP of the second data node
NodeId=12 # Node ID for this data node
datadir=/usr/local/mysql/data # Remote directory for the data files
[mysqld]
# SQL node options:
hostname=192.168.50.129 # MySQL server/client i manager
[mysqld]
# SQL node options:
hostname=192.168.50.128 # MySQL server/client i manager
- 启动管理器
sudo ndb_mgmd -f /var/lib/mysql-cluster/config.ini
ndb_mgmd默认使用的端口是1186,你可以通过sudo netstat -plntu
来查看
五、自动加载服务
下面systemd Unit文件,是服务可以自动加载:
sudo vim /etc/systemd/system/ndb_mgmd.service
内容如下:
[Unit]
Description=MySQL NDB Cluster Management Server
After=network.target auditd.service
[Service]
Type=forking
ExecStart=/usr/sbin/ndb_mgmd -f /var/lib/mysql-cluster/config.ini
ExecReload=/bin/kill -HUP $MAINPID
KillMode=process
Restart=on-failure
[Install]
WantedBy=multi-user.target
采用daemon-reload重新加载systemd’s manager配置:
sudo systemctl daemon-reload
让我们刚创建的服务生效,使MySQL Cluster Manage 可以开机执行:
sudo systemctl enable ndb_mgmd
最后,启动服务:
sudo systemctl start ndb_mgmd
可以通过如下语句验证NDB Cluster Management service服务正在执行:
sudo systemctl status ndb_mgmd
六、允许其他节点接入
或者直接关闭防火墙,或者按照下面进行操作:
sudo ufw allow from 192.168.50.128
sudo ufw allow from 192.168.50.129