在Debian系统上进行MySQL集群部署有多种方法,以下是其中两种常见的方案:
修改配置文件
[mysqld]
server-id = 1
log-bin = mysql-bin
binlog-do-db = your_database_name
sync_binlog = 1
binlog_format = mixed
relay_log = relay-bin
relay_log_index = relay-bin.index
auto_increment_increment = 2
auto_increment_offset = 1
bind-address = your_server_ip
port = your_port_number
[mysqld]
server-id = 2
log-bin = mysql-bin
binlog-do-db = your_database_name
sync_binlog = 1
binlog_format = mixed
relay_log = relay-bin
relay_log_index = relay-bin.index
auto_increment_increment = 2
auto_increment_offset = 2
bind-address = your_server_ip
port = your_port_number
创建复制用户 在两个服务器上的MySQL命令行执行以下SQL命令:
GRANT REPLICATION SLAVE ON *.* TO 'replication_user'@'%' IDENTIFIED BY 'strong_password';
FLUSH PRIVILEGES;
锁定表并获取二进制日志位置 在服务器A上执行:
FLUSH TABLES WITH READ LOCK;
SHOW MASTER STATUS;
记录下返回的File和Position值。在服务器B上也执行同样的步骤,但记录服务器B的值时不要忘记先在服务器A上执行UNLOCK TABLES。
配置复制 在服务器B上设置复制服务器A的数据:
CHANGE MASTER TO
MASTER_HOST='master1_ip_address',
MASTER_USER='replication_user',
MASTER_PASSWORD='strong_password',
MASTER_LOG_FILE='master1_binlog_file',
MASTER_LOG_POS=master1_binlog_position;
启动复制 在两台服务器上分别执行:
START SLAVE;
检查复制状态 在两台服务器上执行以下命令检查复制状态:
SHOW SLAVE STATUS \G;
确认以下两个字段的值为Yes:
安装MySQL 在每台服务器上安装MySQL:
wget https://dev.mysql.com/get/mysql-apt-config_0.8.29-1_all.deb
sudo dpkg -i mysql-apt-config_0.8.29-1_all.deb
选择所需的MySQL版本进行安装。
配置MySQL
编辑MySQL配置文件(例如/etc/mysql/my.cnf
),确保以下配置:
[mysqld]
ndbcluster
ndb-connectstring = 192.168.1.1
启动MySQL服务 启动MySQL服务并确保其正常运行:
sudo systemctl start mysqld
sudo systemctl enable mysqld
初始化集群 使用MySQL Shell初始化集群:
mysqlsh --defaults-file=/etc/mysql/my.cnf --user=mysql
在MySQL Shell中执行以下命令:
CREATE TABLESPACE myspace DATAFILE '/var/lib/mysql/data/mydatabase.dat' ENGINE=NDB;
USE mysql;
CREATE TABLE mytable (
id INT AUTO_INCREMENT PRIMARY KEY,
value VARCHAR(255)
) ENGINE=NDB TABLESPACE myspace;
验证集群 插入数据并验证数据同步:
INSERT INTO mytable (value) VALUES ('test');
SELECT * FROM mytable;
在其他节点上验证数据是否同步。
希望这些步骤能帮助你在Debian系统上成功部署MySQL集群。如果有任何问题,请参考官方文档或相关社区资源。
辰迅云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>
推荐阅读: Debian Docker 日志如何查看