当我尝试在Debian机器(实际上是Docker容器)下以mysql
开始service mysql start
时出现此错误:
[FAIL]启动MySQL数据库服务器:mysqld。 。 。 。 。失败了!
我认为问题出在Debian本身,但是我将解释上下文以防万一。我有以下情况:
基于this image的Debian Docker容器,在Ubuntu 18.04主机上运行。
此容器在先前的Ubuntu 16.04中已正确运行,实际上仍在装有Ubuntu 16.04的另一台计算机上运行。当然,该容器已在新的操作系统中重建。
如果我尝试sh -x /etc/init.d/mysql start
来获取一些反馈信息,我得到的只是以下消息:
+ echo -n启动MySQL数据库服务器:mysqld
启动MySQL数据库服务器:mysqld + log_daemon_msg_post启动MySQL数据库服务器mysqld
+:
+ mysqld_status check_alive nowarn
+ / usr / bin / mysqladmin --defaults-file = / etc / mysql / debian.cnf ping
+ ping_output = / usr / bin / mysqladmin:连接到“本地主机”上的服务器失败
错误:“无法通过套接字'/var/run/mysqld/mysqld.sock'(2)连接到本地MySQL服务器”
检查mysqld是否正在运行以及套接字:'/ var / run / mysqld / mysqld.sock'是否存在!
我对此深感困惑,我已经搜寻了几天,然后圈了圈,无济于事。
编辑:为了获得一些输出或记录,我将进行一些尝试和失败:
$/usr/bin/mysqld_safe -v
181010 15:30:51 mysqld_safe Can't log to error log and syslog at the same time. Remove all --log-error configuration options for --syslog to take effect.
181010 15:30:51 mysqld_safe Logging to '/var/log/mysql/error.log'.
181010 15:30:51 mysqld_safe Starting mysqld daemon with databases from /var/lib/mysql
181010 15:30:51 mysqld_safe mysqld from pid file /var/run/mysqld/mysqld.pid ended
$mysqld --print-defaults
(empty output)
$mysqld --v
(empty output)
$tail -f /var/log/mysql/error.log
(last log entry is 1 month old)
180921 10:59:40 InnoDB: highest supported file format is Barracuda.
180921 10:59:40 InnoDB: Waiting for the background threads to start
180921 10:59:41 InnoDB: 5.5.60 started; log sequence number 1595675
ERROR: 1050 Table 'plugin' already exists
180921 10:59:41 [ERROR] Aborting
180921 10:59:41 InnoDB: Starting shutdown...
180921 10:59:42 InnoDB: Shutdown completed; log sequence number 1595675
180921 10:59:42 [Note] /usr/sbin/mysqld: Shutdown complete