如何在同一台机器上安装多个MySQL的实例

 我来答
缘若梦醒
2016-11-11 · 知道合伙人数码行家
缘若梦醒
知道合伙人数码行家
采纳数:25731 获赞数:59437
计算机领域从业二十年。

向TA提问 私信TA
展开全部
先说下,什么是mysql的多实例,简单的来说就是一台机器上安装了多个mysql的服务,通过不同的端口(如3307,3308)来向外界提供服务,这些进程通过不同的socket来监听不同的服务端口来提供个字的服务。
做个比喻:MySQL的多实例相当于房子的相当于多个卧室一样,每个实例可以看做是一个卧室,整个服务器就是一个房子,服务器的硬件资源(cpu,mem,disk)就是共享的资源,相当于房子的卫生间,厨房,客厅一样,是房子的公共资源,北漂蜗居在一起,可定是要公用上述的资源的。
好处:
当公司资金紧张,可以节约服务器的资源。
坏处:
当某个服务并发很高或者有慢查询的时候,整个实例会消耗整个服务器更多的内存,cpu和各种资源,导致服务器上的其他的实例提供的服务质量下降。这就相当于大家住在一个房子的不同卧室一样,早晨起来刷牙,洗脸等,这样卫生间就会长期占用,其他人需要等一样的道理。
下面记录下装一个3307的MySQL的实例的步骤:
一. 基本的需求和出现的问题
当MySQL出现故障或者需要加入一个新的MySQL的实例的时候,需要重新初始化MySQL的数据库,也就是需要重新生成新的数据库的文件。
Linux环境中,安装编译好MySQL之后,还是不能直接启动MySQL,需要初始化Mysql的一些基本东西,包括:
初始化表日志,基本的数据库信息等一些基本的必须文件。
二.安装的步骤:
(1). 假设已经存在一个MySQL的实例,端口号为3306,现在需要重新添加一个端口号为3307端口的MySql的实例。
假设MySQl安装的路径是/usr/local/mysql/下面,找一个数据磁盘比较的地方,比如/data1/目录下,在这个目录下面创建数据文件夹:
1 mkdir -p /data1/mysql_3307/data
2 chown -R mysql::mysql /data1/mysql_3307

(2). 复制之前的MySQl的配置文件,到/data1/mysql_3307/目录下面,并且进行编辑:
vim /data1/mysql_3307/my.cnf
基本的配置如下:

注:上面的路径可能与上面的数据库文件的存放路径有点出入,但这个不是重点,可以自行替换一下!
(3).确保配置文件无误,然后开始初始化数据库:
/usr/local/mysql/scripts/mysql_install_db --defaults-file=/data1/mysql_3307/my.cnf --datadir=/data1/mysql/ --basedir=/usr/lcoal/mysql
完成后,新的mysql 3307数据库已经初始化好了,如果有报错,则看下报错的日志,一般是由于mysql的配置文件导致的,修改即可!
(4).启动新的MySQL的实例服务:
在上面的初始化配置确保无误的情况下,就可以开始启动MySQL的又一个实例了。
1 /usr/local/mysql/bin/mysqld_safe --defaults-file=/data1/mysql_3308/my.cnf &
2 检查是否启动:
3 ps -aux | grep mysql
4 如有3308的端口 则表示成功。
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式