MySQL主从复制是一种常用的数据库架构,用于实现数据的备份、负载均衡和故障恢复等功能。以下是在Ubuntu上配置MySQL主从复制的详细步骤:
在主数据库和从数据库上安装MySQL。在Ubuntu上,可以使用以下命令安装MySQL:
sudo apt update
sudo apt install mysql-server
安装完成后,需要对主数据库和从数据库进行一些配置。
在主数据库上,编辑MySQL配置文件以启用二进制日志和配置唯一标识符。打开MySQL配置文件:
sudo nano /etc/mysql/mysql.conf.d/mysqld.cnf
在文件中找到以下行,并确保它们的值如下:
log_bin /var/log/mysql/mysql-bin.log
server_id 1
保存并关闭文件,然后重新启动MySQL服务:
sudo service mysql restart
在主数据库上,创建一个用于复制的用户,并授予适当的权限。登录到MySQL控制台:
mysql -u root -p
在MySQL控制台上,执行以下命令来创建复制用户并授予复制权限:
CREATE USER 'replication_user'@'%' IDENTIFIED BY 'password';
GRANT REPLICATION SLAVE ON *.* TO 'replication_user'@'%';
FLUSH PRIVILEGES;
在从服务器上,同样需要编辑MySQL配置文件以启用二进制日志和配置唯一标识符。配置参数如下:
server_id 2
relay_log=mysql-relay-binlog
log_slave_updates=1
read_only=1
重启动从服务器的MySQL:
sudo service mysql restart
在从服务器上,使用主服务器的信息启动从服务器对数据进行同步。执行以下SQL命令:
CHANGE MASTER TO
MASTER_HOST='主服务器IP',
MASTER_USER='replication_user',
MASTER_PASSWORD='password',
MASTER_LOG_FILE='mysql-bin.000001',
MASTER_LOG_POS=154;
这里,MASTER_HOST
、MASTER_USER
、MASTER_PASSWORD
、MASTER_LOG_FILE
和MASTER_LOG_POS
需要根据主服务器的实际状态进行替换。
在从服务器上,运行以下命令检查复制的状态:
SHOW SLAVE STATUS\G;
如果你看到以下字段的值为Yes,则表示复制配置成功:
同时,确保Last_Error
字段为空,表示没有错误发生。
以上就是在Ubuntu上配置MySQL主从复制的基本步骤。请注意,主从服务器的MySQL版本应保持一致或从服务器版本不高于主服务器,以确保复制的顺利进行。
辰迅云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>
推荐阅读: ubuntu安装tigervnc的步骤是什么