mysql在主从模式上增加从机

2023-12-31 10:30:03 举报文章

MySQL的主从模式是一种非常常见的数据库架构,它可以通过将写操作集中在主数据库上,然后将读操作分散到多个从数据库上来提高数据库的性能和稳定性。当主数据库发生故障时,从数据库能够快速接管主库的工作。但是,当数据量增长,现有从库无法满足读取需求时,需要增加新的从机。本文将介绍如何在MySQL主从模式上增加从机。


1. 配置MySQL从机的基本信息

--by www.qzphp.cn
<code> #安装MySQL客户端
  
   
   sudo apt-get install mysql-client
  
   
   #登录MySQL主机
  
   
   mysql -h <主机IP> -u <用户名> -p
  
   
   #创建用于同步数据的用户
  
   
   CREATE USER 'slave'@'%' IDENTIFIED BY 'password';
  
   
   #授权
  
   
   GRANT REPLICATION SLAVE ON *.* TO 'slave'@'%';
 

上述命令用来安装MySQL客户端,并连接到MySQL主机。为主从同步设立一个用户,这里取用户名为slave,密码为password,并赋予slave用户REPLICATION SLAVE的权限。


2. 备份主库数据并将数据导入从机

--by www.qzphp.cn
<code> #在主机上备份数据
  
   
   mysqldump -uroot -p --opt my_database > my_database.sql
  
   
   #将备份数据复制到从机
  
   
   scp my_database.sql <从机用户名>@<从机IP>:~
  
   
   #在从机中导入备份数据
  
   
   mysql -uroot -p my_database < my_database.sql 

上述命令用来备份MySQL主机数据,将备份数据复制到从机并导入备份数据到从机。


3. 编辑从库配置文件

--by www.qzphp.cn
<code> #编辑从库配置文件
  
   
   sudo vim /etc/mysql/mysql.conf.d/mysqld.cnf
  
   
   #添加如下配置项
  
   
   server-id = <从库服务器ID> log_bin = mysql-bin
  
   
   binlog_do_db = my_database 

上述命令用来配置从机的服务器ID,并指定日志二进制文件的存储位置。配置binlog_do_db选项来指定从从库复制哪个数据库。


4. 启动从库并同步数据

--by www.qzphp.cn
<code> #启动从库
  
   
   sudo systemctl restart mysql
  
   
   #登录从库
  
   
   mysql -uroot -p
  
   
   #指定要复制的主库的信息
  
   
   CHANGE MASTER TO 
  
   
   MASTER_HOST='<主机IP>', 
  
   
   MASTER_USER='slave', 
  
   
   MASTER_PASSWORD='password', 
  
   
   MASTER_LOG_FILE='<主库二进制日志文件名>', 
  
   
   MASTER_LOG_POS=<主库二进制日志文件偏移量>;
  
   
   #开始同步数据
  
   
   START SLAVE;
 

以上命令用来启动从机的MySQL服务,并通过CHANGE MASTER TO命令指定要复制的主机信息。然后使用START SLAVE命令开始同步数据。


总结:

本文简单介绍了如何在MySQL主从模式上增加从机,主要包括配置从机信息、备份主库数据并导入从机、编辑从库配置文件、启动从库并同步数据。当数据量过大时,通过增加从机来提高数据库性能和稳定性是非常有必要的。

如果你认为本文可读性较差,内容错误,或者文章排版错乱,请点击举报文章按钮,我们会立即处理!