【干货】MySQL 5.7 多实例(多进程)配置教程

本文详细介绍了如何在MySQL 5.7中配置多实例,包括创建并初始化data文件夹、配置my.cnf文件、启动和关闭多个实例以及root账户管理。针对5.7版本的特性,指出了初始化数据文件夹和配置文件的注意事项,提供了解决启动和关闭实例时可能遇到问题的方法。
摘要由CSDN通过智能技术生成

前言

大学把数据库的课全翘了,之后可能是报应吧,后面数据库相关的东西怎么都学不会。最近有个MySQL多开的需求,正好借这个机会再复习一遍MySQL安装配置。
写这篇博客还有另一个原因,现在网上搜到的MySQL多开教程都不是针对5.7版本的,直接按那些教程做很多地方会报错。

MySQL多实例的原理

MySQL本来就可以多实例运行,只要修改启动脚本和配置文件,把端口,basedirdatadir文件夹分开,两个实例就可以互不影响运行。但是这种方式太过繁杂,所以MySQL官方提供了一个mysqld_multi的程序来辅助实现多实例运行,本篇教程就使用这种方式。

一,创建并初始化data文件夹

几个实例要分开运行,必然要把数据库文件放到不同文件夹中,所以第一步是要建立各个实例的数据文件夹,这里假设我们要运行三个实例,端口分别是3306,3307,3308,为了方便维护,我们把数据文件夹也按照端口号来命名:

mkdir /mnt/data/mysql/3306
mkdir /mnt/data/mysql/3307
mkdir /mnt/data/mysql/3308

chown mysql:mysql /mnt/data/mysql/3306
chown mysql:mysql /mnt/data/mysql/3307
chown mysql:mysql /mnt/data/mysql/3308

建好文件夹后,我们还要初始化数据文件夹,旧的命令是:

mysql_install_db --basedir=/usr/local/mysql --datadir=/mnt/data/mysql/3308 --user=mysql

这个命令已经不能再用!!!
按照官方教程,新的命令应该是:

mysqld --initialize-insecure --user=mysql --basedir=/opt/mysql/mysql --datadir=/opt/mysql/mysql/data

但是这个命令也会报错!!!
正确的做法是:

mysqld --defaults-file=/opt/mysql/mysql/etc/my.cnf --initialize-insecure --user=mysql

其中的原因我没有细究,可能是mysqld --initialize-insecure 还需要几个参数,.cnf文件里有提供这几个参数。
新建几个.cnf文件,用来初始化数据文件夹,.cnf文件内容如下:

[client]
port        = 3308
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值