ubuntu

ubuntu与mysql集群搭建

小樊
51
2025-04-25 14:06:07
栏目: 云计算

在Ubuntu上搭建MySQL集群可以通过多种方式实现,包括主从复制、主主复制和Galera集群等。以下是使用MariaDB Galera集群在Ubuntu上搭建多主节点的步骤:

准备工作

  1. 服务器准备:准备至少三台服务器,配置静态IP地址,并确保所有节点上设置了sudo权限的非root用户。
  2. 系统更新:在所有节点上更新系统软件包列表和已安装的软件包。
sudo apt-get update -y
sudo apt-get upgrade -y

安装MariaDB Galera

  1. 添加存储库:在所有节点上添加MariaDB存储库密钥和存储库。
sudo apt-key adv --recv-keys --keyserver hkp://keyserver.ubuntu.com:80 0xf1656f24c74cd1d8
sudo add-apt-repository 'deb [arch=amd64,i386,ppc64el] http://ftp.utexas.edu/mariadb/repo/10.1/ubuntu xenial main'
sudo apt-get update -y
  1. 安装MariaDB:安装带有Galera和几个依赖项的MariaDB。
sudo apt-get install mariadb-server rsync -y
  1. 配置MariaDB:在第一个节点上创建Galera配置文件。
sudo nano /etc/mysql/conf.d/galera.cnf

添加以下内容:

[mysqld]
binlog_format=row
default-storage-engine=innodb
innodb_autoinc_lock_mode=2
bind-address=0.0.0.0
wsrep_on=on
wsrep_provider=/usr/lib/galera/libgalera_smm.so
  1. 保护MariaDB:运行mysql_secure_installation脚本进行安全设置。
sudo mysql_secure_installation

集群配置

  1. 初始化集群:在第一个节点上初始化Galera集群。
sudo mysql -u root -p

在MariaDB shell中执行:

CREATE INSTANCE --cluster=galera --user='root'@'localhost' --password='password';
  1. 加入其他节点:在其他节点上使用galera_new_cluster命令加入集群。
galera_new_cluster --cluster_address=mysql://root:password@node1_ip:3306 --cluster_name=my_cluster

验证集群状态

在所有节点上执行以下命令,验证集群状态。

mysql -u root -p -e "SHOW STATUS LIKE 'wsrep%'"

如果显示wsrep_cluster_size: 3,则表示集群已成功搭建。

请注意,以上步骤是基于MariaDB Galera的,如果您选择其他类型的MySQL集群(如MySQL Group Replication或NDB Cluster),步骤可能会有所不同。建议参考官方文档进行详细配置。

0
看了该问题的人还看了