mwjhw216 发表于 2018-10-11 08:16:55

MYSQL多实例配置方法 mysqld_multi方法

  在实际的开发过程中,可能会需要在一台服务器上部署多个MYSQL实例,那建议使用MYSQL官方的解决方案 mysqld_multi
  1.修改my.cnf
  如一个定义两个实例的参考配置:

[*]  
[*]  mysqld = /usr/local/mysql/bin/mysqld_safe
[*]  mysqladmin = /usr/local/mysql/bin/mysqladmin
[*]  user = your_user
[*]  password = your_password
[*]  
[*]  datadir = /data/db/my1
[*]  #连接
[*]  port = 3306
[*]  socket = /tmp/mysql3306.sock
[*]  #binlog
[*]  log-bin=/data/db/mylog1/mysql-bin
[*]  binlog_format=mixed
[*]  binlog_cache_size = 32M
[*]  expire_logs_days = 30
[*]  
[*]  datadir = /data/db/my2
[*]  #连接
[*]  port = 3307
[*]  socket = /tmp/mysql3307.sock
[*]  #binlog
[*]  log-bin=/data/db/mylog2/mysql-bin
[*]  binlog_format=mixed
[*]  binlog_cache_size = 32M
[*]  expire_logs_days = 3
  复制代码
  2.创建数据目录

[*]  mkdir -p /data/db/my21
[*]  mkdir -p /data/db/my2
[*]  chown mysql.mysql /data/db/my1 -R
[*]  chown mysql.mysql /data/db/my2 -R
  复制代码
  3.初始化DB

[*]  /usr/local/mysql/scripts/mysql_install_db --datadir=/data/db/my1/ -uroot (mysql_install_db也是MYSQL官方自带工具)
[*]  /usr/local/mysql/scripts/mysql_install_db --datadir=/data/db/my2/ -uroot
[*]  chown mysql.mysql /data/db/my1/ -R
[*]  chown mysql.mysql /data/db/my2/ -R
  复制代码
  4. 安装工具

[*]  cp /usr/local/mysql/bin/my_print_defaults /usr/bin/
[*]  cp /usr/local/mysql/bin/mysqld_multi /usr/bin/
  复制代码
  5.创建、授权用户

[*]
  CREATE USER "your_user"@"192.168.1.%">
[*]  GRANT ALL PRIVILEGES ON *.* TO "your_user"@"192.168.1.%";
[*]  flush privileges;
  复制代码
  至此,mysql多实例配置已经完毕。我们看到多个不同的MYSQL实例是共用my.cnf的。多实例命令行管理:
  1.mysql启动

[*]  mysqld_multi start 1 启动实例1
[*]  mysqld_multi start 1-2 启动实例1,2
  复制代码
  2.mysql重启

[*]  mysqld_multi restart 1 重启实例1
[*]  mysqld_multi restart 1-2 重启实例1,2
  复制代码
  3.mysql关闭

[*]  mysqld_multi stop 1 关闭实例1
[*]  mysqld_multi stop 1-2 关闭实例1,2
  复制代码
  4.命令行登陆实例2

[*]  mysql -u your_user -p your_password -P3307 -S /tmp/mysql3307.sock
  复制代码

页: [1]
查看完整版本: MYSQL多实例配置方法 mysqld_multi方法