我试图在同一台机器上运行两个MySQL实例并设置my.cnf文件如下:
[mysqld1]
user = mysql
pid-file = /var/run/mysqld/mysqld.pid
socket = /var/run/mysqld/mysqld.sock
port = 3307
datadir = /var/lib/mysql
[mysqld2]
user = mysql
pid-file = /var/run/mysqld/mysqld2.pid
socket = /var/run/mysqld/mysqld2.sock
port = 3308
datadir = /var/lib/mysql2
当我执行 mysqld_multi start 命令时,会出现以下错误:
在/ var / lib / mysql2中安装新数据库
2016-10-06 17:47:23 [警告]不推荐使用mysql_install_db。请 考虑切换到mysqld --initialize 2016-10-06 17:47:23 [ERROR] 无法找到服务器可执行文件(mysqld)。
致命错误:试图在组[mysqld2]下启动mysqld,但没有数据 目录已找到或可以创建。使用的数据目录: 的/ var / lib中/ mysql2
我该如何解决这个问题?
注意:MySQL在Ubuntu 16.0.4和MySQL 5.7上运行
答案 0 :(得分:1)
我知道一个问题。
2016-10-06 17:47:23 [WARNING] mysql_install_db is deprecated. Please consider switching to mysqld --initialize 2016-10-06 17:47:23 [ERROR] Can't locate the server executable (mysqld).
请在文件/ use / bin / mysqld_multi
中修改343到344和345行343 #$install_cmd="/usr/bin/mysql_install_db ";
344 $install_cmd="/usr/bin/mysqld ";
345 $install_cmd.="--initialize ";
346 $install_cmd.="--user=mysql ";
347 $install_cmd.="--datadir=$datadir";