我尝试在 ubuntu 14 上重新安装 mysql 服务器。
重新安装后,一切似乎都运行得很有趣,直到service mysql status/start/stop
命令
当服务器启动时,mysql状态为停止/等待,但它运行(我确实添加了(sudo update-rc.d mysql defaults
))。
的输出ps -e | grep mysql
1897 ? 00:00:00 mysqld_safe
2650 ? 00:00:05 mysqld
后service mysql start
1897 ? 00:00:00 mysqld_safe
2650 ? 00:00:05 mysqld
14392 ? 00:00:00 mysqld
第一个问题:我怎样才能干净地重新安装我的 mysql 服务器/或修复 2 个 mysql 实例?
第二个问题:为什么会有 mysqld_safe 和 mysqld 进程,它们应该运行并且是必需的?
此处启动的系统日志为问题:
Jul 14 09:01:07 myserv kernel: [30516.307340] type=1400 audit(1436857267.353:26): apparmor="STATUS" operation="profile_replace" profile="unconfined" name="/usr/sbin/mysqld" pid=12368 comm="apparmor_parser"
Jul 14 09:01:09 myserv /etc/mysql/debian-start[16837]: Upgrading MySQL tables if necessary.
Jul 14 09:01:09 myserv /etc/mysql/debian-start[16842]: /usr/bin/mysql_upgrade: the '--basedir' option is always ignored
Jul 14 09:01:09 myserv /etc/mysql/debian-start[16842]: Looking for 'mysql' as: /usr/bin/mysql
Jul 14 09:01:09 myserv /etc/mysql/debian-start[16842]: Looking for 'mysqlcheck' as: /usr/bin/mysqlcheck
Jul 14 09:01:09 myserv /etc/mysql/debian-start[16842]: This installation of MySQL is already upgraded to 5.5.43, use --force if you still need to run mysql_upgrade
Jul 14 09:01:09 myserv /etc/mysql/debian-start[16894]: Checking for insecure root accounts.
Jul 14 09:01:09 myserv /etc/mysql/debian-start[16920]: Triggering myisam-recover for all MyISAM tables
答案1
在一个窗口中执行 - tail -f /var/log/syslog
在另一个窗口中执行 - service mysql stop
如果 mysql 仍在运行,请 pkill mysqld 直到它真正死掉。
然后执行-service mysql start
发布系统日志条目。
还发布以下输出,以便显示确切的软件版本。
lsb_release -a dpkg -l | lsb_release -a dpkg -l | egrep 'mysql|mariadb'
答案2
我实际上正在运行完全相同的进程。
我所做的是这个...
sudo service mysql stop
然后我找到了流氓mysql进程的pid并杀死了它......
sudo kill 2650
现在我没有任何 mysql 进程在运行。于是我又开始了...
sudo service mysql start
现在我有 2 个应该运行的 mysql 进程。
1744 ? 00:00:00 mysqld_safe
2105 ? 00:00:00 mysqld
不过,我从未对流氓进程遇到过任何问题,所以我通常会忽略它们。另外,由于服务没有停止这些进程,我认为杀死它们就可以了。如果我错了,也许更有知识的人可以纠正我。