MySQL多实例(mysqld_multi)

多实例服务:

原理:
	就是在一台服务器上开启多个不同的mysql服务端口,运行一个
mysql服务进程对应多个端口,有各自的数据库目录。这些进程通过不同
的socket监听不同的服务端口,以此来提供不同的服务
	多个实例共用一套安装程序,但是各有各的配置文件,数据文件,进程
及日志文件。

为什么要做多实例:
	1.资源隔离,减少相互影响
	2.分担连接数(否则连接数上升性能会下降)
	3.更充分的利用资源(不同的业务错高峰混跑)

优点:
	有效的利用服务器资源
  当单个服务器资源有剩余时,可以利用多实例来充分利用服务器的资源来提供
更多的服务

缺点:
	会出现资源互相抢占的现象。当某个实例的并发量很高,或者有慢查询时,会消耗服务器更多的资源,这时就会影响其他实例提供的服务,访问质量下降。

应用场景:
	公司有不同业务数据库要各自独立的需求,同时访问量也不怎么大,服务器资
源也有空余的,应该使用

]# vim /etc/my.cnf
[mysqld_multi] //启用多实例
mysqld = /usr/local/mysql/bin/mysqld_safe //指定进程文件路径
mysqladmin = /usr/local/mysql/bin/mysqladmin //指定管理命令路径
user = root //指定进程用户

第一个实例
[mysqld1] //实例进程名称
server-id=1 //身份标识
basedir=/usr/local/mysql56/ //指定mysql安装路径
port=3307 //端口号
datadir=/dir1 //数据库目录 ,要手动创建
socket=/dir1/mysqld1.sock //指定sock文件的路径和名称
pid-file=/dir1/mysqld1.pid //进程pid号文件位置
log-error=/dir1/mysqld1.err //错误日志位置

第二个实例
[mysqld2]
port=3308
datadir=/dir2
socket=/dir2/mysqld2.sock
pid-file=/dir2/mysqld2.pid
log-error=/dir2/mysqld2.err

弄完初始化数据库
每个实例想要不同的数据库版本就在不同的目录下去进行初始化

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值