为什么mysqld_multi无法启动mysql?
问题描述:
在我的my.cnf中,我写的:为什么mysqld_multi无法启动mysql?
[mysqld_multi]
mysqld = /usr/local/Cellar/mysql/5.7.11/bin/mysqld_safe
mysqladmin = /usr/local/Cellar/mysql/5.7.11/bin/mysqladmin
user = root
password =
[mysqld1]
pid-file = /usr/local/etc/mysql/mysqld.pid
socket = /usr/local/etc/mysql/mysqld.sock
port = 3306
datadir = /usr/local/var/mysql
log-bin=mysql-bin
server-id=1
[mysqld2]
pid-file = /usr/local/etc/mysql/mysqld1.pid
socket = /usr/local/etc/mysql/mysqld1.sock
port = 3307
datadir = /usr/local/var/mysql1
server-id=2
language=/usr/local/Cellar/mysql/5.7.11/share/mysql/english
user=mysql
然后我执行mysqld_multi start 2
,我也得到了错误的信息:
Installing new database in /usr/local/var/mysql1
2016-09-19 19:37:16 [WARNING] mysql_install_db is deprecated. Please consider switching to mysqld --initialize
2016-09-19 19:37:16 [ERROR] Can't locate the language directory.
FATAL ERROR: Tried to start mysqld under group [mysqld2],
but no data directory was found or could be created.
data directory used: /usr/local/var/mysql1
我无法启动mysql的过程,所以有什么问题?看来目录/usr/local/var/mysql1
有一些问题,但目录存在,它很困惑。
答
看起来好像mysqld_multi没有固定使用mysqld --initialize
。
您必须运行mysqld --initialize
以及该服务器的my.cnf中的所有目录相关选项。
(来自评论) 您也可以按照Running two instances of mysql中的说明修复mysqld_multi
脚本。
+0
或者你可以这样做https://*.com/questions/39900497/running-two- mysql的实例(参见TIGERB的提示和我的评论) – user435421
你检查了目录权限吗?它应该是“mysql:mysql” 运行此命令: chown -R mysql:mysql/usr/local/var/mysql1 – malyy