一个服务器启动两个mysql实例

在一台服务器上,可以通过mysqld_multi配置多个Mysql实例运行。

假设服务器上现在已经运行一个MYSQL实例,数据目录是/var/lib/mysql,端口是3306,所用的SOCKET连接文件位于/tmp/mysql.sock。那么可以按照如下步骤,再启动一个或者多个实例。


一,创建新实例的数据目录


新启动MySQL实例之后,其数据位于哪个目录,就是实例相关的数据库文件都准备放在哪个目录下,假定我把它们放在 /var/lib/mysql2 目录下。


mkdir /var/lib/mysql2   创建目录。

chown mysql /var/lib/mysql2  给mysql用户权限。


二,创建数据库


这一步是在刚刚建立的目录下面,初始化数据库。

bin/mysql_install_db --user=mysql --datadir=/var/lib/mysql2   // 将mysql等系统数据库安装到实例准备运行的目录。


三,配置文件 


修改配置文件 my.cnf,这也是最重要的一步。主要是重新设置每个实例的pid-file,socket,port等属性,我的配置文件 如下:

[mysqld_multi]
mysqld     = /install/mysql/bin/mysqld_safe
mysqladmin = /install/mysql/bin/mysqladmin
user       = root

# The MySQL server
[mysqld1]
port            = 3306
socket          = /tmp/mysql.sock
datadir         =/var/lib/mysql
pid-file        =/var/lib/mysql/mysql.pid
user            =mysql

log-bin         =master-bin
log-bin-index           =master-bin.index
server-id       =1
[mysqld2]
port            = 3307
socket          =/tmp/mysql2.sock
datadir         =/var/lib/mysql2
pid-file        =/var/lib/mysql2/mysql.pid
user            =mysql

四,启动实例

在配置文件配置好之后,就可以启动了

 /install/mysql/bin/mysqld_multi start 2    // 这样就启动了。 


五,打开控制台


在启动新的实例之后,也可以打开控制台操作,但要指定socket和端口等信息,如:

mysql --user=root --port=3307 --socket=/tmp/mysql2.sock -p


这就完成了。只是要数据目录和权限,然后是配置文件 ,当然这里的配置文件 ,我都是很简单的配置,实际情况,肯定不是这样的,可能还会有一些基于特定实例的优化参数。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值