实现多个MySQL数据库实例管理,用mysqld_multi!

树叶云

以下的文章主要是向大家介绍的是使用mysqld_multi来对多个MySQL数据库实例进行管理的实际操作流程,MySQL数据库是可以多主一从的来进行实时备份,在google下可以使用mysqld_multi来管理多个MySQL实例。

之前有想过在一台服务器上运行多个MySQL实例就可以实现一从多主的master-slave方式的实时备份,今天刚好看到mysqld-multi就动手测试下配置过程如下,

1. 修改mysql的配置文件my.cnf配置mysqld_multi的选项

 

  1. [mysqld_multi]  
  2. mysqld = /usr/local/mysql/bin/mysqld_safe  
  3. mysqladmin = /usr/local/mysql/bin/mysqladmin  
  4. user = multi_admin 
  5. password = multipass 
  6. log = /usr/local/mysql/etc/mysqld_multi.log 

2. 创建mysqld_multi的config-file

  1. cat /usr/local/mysql/etc/mysqld_multi.cnf   
  2. [mysqld1]  
  3. socket = /tmp/mysql.sock1  
  4. port = 3306 
  5. pid-file = /usr/local/mysql/var1/localhost.pid  
  6. datadir = /usr/local/mysql/var1  
  7. user = mysql 
  8. [mysqld2]  
  9. socket = /tmp/mysql.sock2  
  10. port = 3307 
  11. pid-file = /usr/local/mysql/var2/localhost.pid  
  12. datadir = /usr/local/mysql/var2  
  13. user = mysql 
  14. [mysqld3]  
  15. socket = /tmp/mysql.sock3  
  16. port = 3308 
  17. pid-file = /usr/local/mysql/var3/localhost.pid  
  18. datadir = /usr/local/mysql/var3  
  19. user = mysql 

3. 拷贝mysqld_multi.server(在源代码的support-files中)脚本到/usr/sbin

  1. cp /mysql_source/support-files/mysqld_multi.server /usr/sbin 

4. 编辑/usr/sbin/mysqld_multi.server(添加–config-file=/usr/local/mysql/etc/mysqld_multi.cnf选项)

  1. 'start' )  
  2. "$mysqld_multi" start $2  
  3. ;;  
  4. 'stop' )  
  5. "$mysqld_multi" --config-file=/usr/local/mysql/etc/mysqld_multi.cnf stop $2  
  6. ;;  
  7. 'report' )  
  8. "$mysqld_multi" --config-file=/usr/local/mysql/etc/mysqld_multi.cnf report $2 

5. 启动多个MySQL数据库实例

  1. mysqld_multi.server start 

6. 之前在my.cnf设置的user和password是用来关闭数据库实例的,根据配置中的用户名和密码授权该用户shutdown权限

  1. mysql -u root -S /tmp/mysql.sock1 -p  
  2. mysql> grant shutdown on *.* to multi_admin@'localhost' identified by 'multipass'; 

7. 关闭所有数据库实例

  1. mysqld_multi.server stop 

8. 对单台数据库的启动和关闭

语法:mysqld_multi [options] {start|stop|report} [GNR[,GNR] …]

如对mysqld1的启动和关闭,可以通过mysqld_multi来操作

启动: mysqd_multi start 1

关闭: mysqd_multi stop 1

也可以同时启动和关闭多个MySQL数据库实例

启动: mysqd_multi start 1-3

关闭: mysqd_multi stop 1-3

【编辑推荐】

  1. MySQL游标的使用笔记大全
  2. MySQL数据库性能优化的实际操作方案
  3. MySQL临时表的实际应用功能简介
  4. MySQL数据库NULL值的处理
  5. MySQL数据库和相关事务总结

文章来源网络,作者:运维,如若转载,请注明出处:https://shuyeidc.com/wp/235440.html<

(0)
运维的头像运维
上一篇2025-04-21 13:30
下一篇 2025-04-21 13:32

相关推荐

发表回复

您的邮箱地址不会被公开。必填项已用 * 标注