部署mysql集群

2021年09月15日 阅读数:1
这篇文章主要向大家介绍部署mysql集群,主要内容包括基础应用、实用技巧、原理机制等方面,希望对大家有所帮助。
集群:使用一组服务器提供相同的服务
LB :负载均衡集群
HA :高可靠集群
mysql集群中服务器的角色?
一、数据节点  ndbd
                      用来储藏数据(表的记录)
二、sql节点
                     用户访问数据的接口
                     执行用户输入的sql语句                     
三、管理节点 mgmd
                     管理集群中的全部主机
                     在启动管理进程时加载,本身的主配置文件,定义集群中各个主机的角色
四、客户端:访问数据
                    只要有链接数据库服务的工具就能够了   //(mysql-cluster-client)
mysql-clusert  提供3种进程
管理进程    管理进程运行的管理主机上
ndbd进程   运行在数据节点上。
sql进程(集群软件包里提供的数据库服务,运行sql节点上)

1、安装提供集群服务的软件包                                                                                                                                       node

tar -xvf MySQL-Cluster-gpl-7.3.3-1.el6.x86_64.rpbundle.tar             
 rpm -ivh MySQL-Cluster-*.rpm

2、配置管理节点  192.168.1.1mysql

管理集群中的全部主机,启动管理进程时加载本身的主配置文件/etc/config.ini (设置集群中个主机的角色,各个主机角色在运行时参数的设置)sql

[ndbd  default]                               // 数据节点公共配置
[ndb_mgmd]                                    //设置管理主机
[ndbd]                                        // 指定数据节点主机
[mysqld]                                      // 指定sql节点                                            
mkdir   /var/log/mysql-cluster                //本身建立这个目录

 

vim  /etc/config.ini                      //本身编辑这个文件
[ndbd  default] 
NoOfReplicas=2                          //数据节点主机个数
DataMemory=80M                         
IndexMemory=18M                       
[ndb_mgmd]                              //管理节点
nodeid=1                          
hostname=192.168.1.1        
datadir=/var/log/mysql-cluster  
[ndbd]                                              //数据节点
nodeid=2                          
hostname=192.168.1.10 
datadir=/var/log/mysql-cluster/data 
[ndbd]                                             //数据节点
nodeid=20                         
hostname=192.168.1.20 
datadir=/var/log/mysql-cluster/data 
[mysqld]                                           //mysql节点
nodeid=10                              
hostname=192.168.1.30  
[mysqld]    
nodeid=30                              
hostname=192.168.1.40
:wq

3、配置数据节点  192.168.1.10   192.168.1.20数据库

数据节点用来存储数据,运行数据进程vim

ping   192.168.1.1
mkdir  -p    /var/log/mysql-cluster/data             //本身建立这个目录
vim  /etc/my.cnf                                     //本身编辑这个文件
[mysqld]
datadir=/var/log/mysql-cluster/data        
ndb-connectstring=192.168.1.1
ndbcluster                         
[mysql_cluster]
ndb-connectstring=192.168.1.1
另外一个数据节点配置和这个同样
只需 scp /etc/my.cnf

4、配置sql节点  192.168.1.30   192.168.1.40服务器

供用户访问执行sql语句,运行mysql数据服务。负载均衡

vim  /etc/my.cnf
[mysqld]
ndbcluster                         
default-storage-engine=ndbcluster  
[mysql_cluster]
ndb-connectstring=192.168.1.1 
:wq
 另外一个mysql节点配置和这个同样
只需 scp /etc/my.cnf  root@192.168.1.40:/etc/my.cnf

5、启动集群服务ide

1 启动管理节点工具

ndb_mgmd  -f   /etc/config.ini
netstat  -untlap  | grep  :1186
ps  aux | grep   ndb_mgmd
pkill   -9    ndb_mgmd                      //结束进程须要这条口令
[root@localhost ~]# ndb_mgm
-- NDB Cluster -- Management Client --
ndb_mgm> show
ndb_mgm>exit

2 启动数据节点spa

[root@localhost ~]#ndbd
pgrep   ndbd                  
pkill  -9  ndbd                            //结束进程须要这条口令
*  ndb 节点进程启动不了,
在管理节点和数据节点执行  
iptables  -F             
service iptables save
而后再在数据节点上执行ndbd
3 启动sql节点
service  mysql  restart

 6、验证集群

解决单点故障
      当有一台数据节点down机不会影响服务
      当有一台MYSQLdown机也不会影响服务
启动mysql时常常出现缺乏xxx.pid这个问题,只须要把/var/lib/mysql/下有关日志文件删除就行,  然 后从新启动服务

下一篇: nacos集群部署