mysql cluster 部署

本文详细介绍了一种MySQL集群的搭建过程,包括五台机器的具体角色分配、软件安装步骤、配置文件编写及服务启动与停止的方法。

1.准备5台机器,ip分别为:

192.168.77.46(mgm)

192.168.77.48(data)

192.168.77.54(data)

192.168.77.55(sql)

192.168.77.56(sql)

2.首先安装192.168.77.55

shell> groupadd mysql
shell> useradd -g mysql mysql
shell> cd /var/tmp
shell> tar -C /usr/local -xzvf mysql-cluster-gpl-7.2.14-linux2.6.tar.gz
shell> ln -s /usr/local/mysql-cluster-gpl-7.2.14-linux2.6-i686 /usr/local/mysql
shell> cd mysql
shell> scripts/mysql_install_db --user=mysql
shell> chown -R root .
shell> chown -R mysql data
shell> chgrp -R mysql .
执行scripts/mysql_install_db --user=mysql如果出现错误,注意要把以下包装上:

yum install perl

yum install libaio

配置文件内容如下:vi /etc/my.cnf

[mysqld]
ndbcluster

[mysql_cluster]
ndb-connectstring=192.168.77.46

3.192.168.77.56安装同2

 

4.安装192.168.77.48

解压安装包,拷两个文件就行

shell> cd /var/tmp
shell> tar -zxvf mysql-5.5.31-ndb-7.2.14-linux-i686-glibc23.tar.gz
shell> cd mysql-5.5.31-ndb-7.2.14-linux-i686-glibc23
shell> cp bin/ndbd /usr/local/bin/ndbd
shell> cp bin/ndbmtd /usr/local/bin/ndbmtd
shell> cd /usr/local/bin
shell> chmod +x ndb*
配置文件内容如下,vi /etc/my.cnf

[mysqld]
ndbcluster

[mysql_cluster]
ndb-connectstring=192.168.77.46

5.安装192.168.77.54,同4

 

6.安装192.168.77.46(mgm)

解压安装包,拷文件到指定目录

shell> cd /var/tmp
shell> tar -zxvf mysql-5.5.31-ndb-7.2.14-linux2.6-i686.tar.gz
shell> cd mysql-5.5.31-ndb-7.2.14-linux2.6-i686
shell> cp bin/ndb_mgm* /usr/local/bin
shell> cd /usr/local/bin
shell> chmod +x ndb_mgm*
新建配置文件

shell> mkdir /var/lib/mysql-cluster
shell> cd /var/lib/mysql-cluster
shell> vi config.ini
配置文件config.ini内容如下:

[ndbd default]
NoOfReplicas=2
DataMemory=800M
IndexMemory=180M

[tcp default]
#portnumber=1186

[ndb_mgmd]
hostname=192.168.77.46
datadir=/var/lib/mysql-cluster

[ndbd]
hostname=192.168.77.48
datadir=/usr/local/mysql/data
NodeId=8

[ndbd]
hostname=192.168.77.54
datadir=/usr/local/mysql/data
NodeId=4

[mysqld]
hostname=192.168.77.55

[mysqld]
hostname=192.168.77.56

7.启动顺序为: mgm->data->sql

启动mgm,在/usr/local/bin目录下执行:./ndb_mgmd -f /var/lib/mysql-cluster/config.ini --initial

启动data,在/usr/local/bin目录下执行:./ndbd

启动sql,在/usr/local/mysql/bin目录下执行: ./mysqld_safe --user=mysql &

 

8.停止:在/usr/local/bin目录下执行:./ndb_mgm -e shutdown

执行命令后,会依次关闭各节点

### 部署 Percona MySQL Cluster 的逐步指南 #### 准备工作 为了成功部署 Percona MySQL Cluster (PXC),确保环境满足最低硬件和软件需求。安装必要的依赖项,并准备好用于配置集群节点的操作系统实例。 #### 安装 Juju 和 Charm Store Juju 是一个强大的工具,可以简化复杂系统的管理和自动化操作。通过命令行界面来管理云资源和服务部署。首先需要在本地机器上安装最新版本的 Juju[^1]: ```bash sudo snap install juju --classic ``` #### 创建模型并添加机器 创建一个新的 Juju 模型,在其中定义网络、存储和其他参数。这一步骤对于隔离不同项目的工作负载至关重要。接着向该模型中添加一台或多台虚拟机作为目标主机。 ```bash juju add-model pxc-cluster juju add-machine lxd:0 ``` #### 下载 charm 文件 从官方 Charm Store 获取最新的 `percona-cluster` charm 文件。这些文件包含了启动 PXC 所需的所有设置选项。 ```bash juju download cs:mysql percona-cluster.charm ``` #### 自定义配置 准备一份 YAML 格式的配置文件 (`mysql.yaml`) 来指定特定于环境的需求,比如端口映射、数据目录位置等。此步骤允许更灵活地调整以适应不同的生产场景。 ```yaml root-password: "your_secure_password" innodb_buffer_pool_size: 4G max_connections: 500 ``` #### 发布应用到 LXD 容器内 利用之前提到过的命令将 Percona 应用程序发布至指定容器中,并赋予其名称以便识别。这里假设是在编号为零的第一台LXD容器里运行MySQL服务。 ```bash juju deploy --to lxd:0 --config mysql.yaml percona-cluster mysql ``` #### 建立初始连接关系 为了让各个组件能够相互通信,建立适当的关系是非常重要的。然而需要注意的是,某些特殊情况下可能会引入额外的安全风险或维护成本。例如,如果存在Vault与Keystone以及MySQL-InnoDB-Cluster间的关联,则可能引发证书更新周期内的相互依赖问题[^2]。因此建议仅维持必要最小限度的服务间联系。 #### 启动集群成员加入过程 一旦所有节点都被正确初始化并且彼此建立了信任链接,就可以让它们正式成为集群的一部分了。通常这是通过执行一系列预设脚本来完成的;具体细节取决于所使用的charm实现方式。 #### 测试高可用性和性能表现 最后但同样重要的一环是对新搭建起来的数据库集群进行全面测试。验证读写分离机制的有效性、故障转移响应速度以及其他关键指标是否达到预期水平。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值