当我运行 yum update 时,没有任何更新。我试图安装 php-soap(失败了),然后在网上我发现我应该运行这个:
wget -q -O - http://www.atomicorp.com/installers/atomic.sh |sh
运行该命令后,“yum install php-soap”成功运行。然后我运行 yum update 来检查更新,并对某些软件包说是。我注意到有一些 mysql 之类的软件包。现在 mysql 不再运行,它不允许我启动它(我收到“MySQL Daemon 启动失败”)
有想法吗?
这是我的 mysql.log 的一部分:
100616 16:37:53 mysqld_safe Starting mysqld daemon with databases from /var/lib/mysql
100616 16:37:53 [Warning] /usr/libexec/mysqld: Option '--set-variable' is deprecated. Use --variable-name=value instead.
100616 16:37:53 [Warning] /usr/libexec/mysqld: Option '--set-variable' is deprecated. Use --variable-name=value instead.
100616 16:37:53 [Warning] /usr/libexec/mysqld: Option '--set-variable' is deprecated. Use --variable-name=value instead.
100616 16:37:53 [Warning] /usr/libexec/mysqld: Option '--set-variable' is deprecated. Use --variable-name=value instead.
100616 16:37:53 [Warning] /usr/libexec/mysqld: Option '--set-variable' is deprecated. Use --variable-name=value instead.
100616 16:37:53 [Warning] /usr/libexec/mysqld: Option '--set-variable' is deprecated. Use --variable-name=value instead.
100616 16:37:53 [Warning] /usr/libexec/mysqld: Option '--set-variable' is deprecated. Use --variable-name=value instead.
100616 16:37:53 [Warning] /usr/libexec/mysqld: Option '--set-variable' is deprecated. Use --variable-name=value instead.
100616 16:37:53 [Warning] /usr/libexec/mysqld: Option '--set-variable' is deprecated. Use --variable-name=value instead.
100616 16:37:53 [Warning] /usr/libexec/mysqld: Option '--set-variable' is deprecated. Use --variable-name=value instead.
100616 16:37:53 [Warning] /usr/libexec/mysqld: Option '--set-variable' is deprecated. Use --variable-name=value instead.
100616 16:37:53 [Warning] /usr/libexec/mysqld: Option '--set-variable' is deprecated. Use --variable-name=value instead.
100616 16:37:53 [Warning] /usr/libexec/mysqld: Option '--set-variable' is deprecated. Use --variable-name=value instead.
100616 16:37:53 [Warning] /usr/libexec/mysqld: Option '--set-variable' is deprecated. Use --variable-name=value instead.
100616 16:37:53 [Warning] /usr/libexec/mysqld: Option '--set-variable' is deprecated. Use --variable-name=value instead.
100616 16:37:53 [Warning] /usr/libexec/mysqld: Option '--set-variable' is deprecated. Use --variable-name=value instead.
100616 16:37:53 [Warning] /usr/libexec/mysqld: Option '--set-variable' is deprecated. Use --variable-name=value instead.
100616 16:37:53 [Warning] /usr/libexec/mysqld: Option '--set-variable' is deprecated. Use --variable-name=value instead.
100616 16:37:53 [Warning] /usr/libexec/mysqld: Option '--set-variable' is deprecated. Use --variable-name=value instead.
100616 16:37:53 [Warning] /usr/libexec/mysqld: Option '--set-variable' is deprecated. Use --variable-name=value instead.
100616 16:37:53 [Warning] /usr/libexec/mysqld: Option '--set-variable' is deprecated. Use --variable-name=value instead.
100616 16:37:53 [Warning] /usr/libexec/mysqld: Option '--set-variable' is deprecated. Use --variable-name=value instead.
100616 16:37:53 [Warning] /usr/libexec/mysqld: Option '--set-variable' is deprecated. Use --variable-name=value instead.
100616 16:37:53 [Warning] option 'innodb-additional-mem-pool-size': signed value 512000 adjusted to 524288
100616 16:37:53 [Warning] /usr/libexec/mysqld: Option '--set-variable' is deprecated. Use --variable-name=value instead.
100616 16:37:53 [Warning] /usr/libexec/mysqld: Option '--set-variable' is deprecated. Use --variable-name=value instead.
100616 16:37:53 [Note] Plugin 'ndbcluster' is disabled.
/usr/libexec/mysqld: Table 'mysql.plugin' doesn't exist
100616 16:37:53 [ERROR] Can't open the mysql.plugin table. Please run mysql_upgrade to create it.
100616 16:37:53 InnoDB: Started; log sequence number 0 1650102
100616 16:37:53 [ERROR] /usr/libexec/mysqld: unknown option '--skip-bdb'
100616 16:37:53 [ERROR] Aborting
100616 16:37:53 InnoDB: Starting shutdown...
100616 16:37:58 InnoDB: Shutdown completed; log sequence number 0 1650102
100616 16:37:58 [Note] /usr/libexec/mysqld: Shutdown complete
答案1
这些可能是显而易见的建议,但是您的 my.cnf 文件是否包含“ set-variable
”?
你试过跑步吗mysql_upgrade
?
正如我以前多次经历过的痛苦经历一样,总是在任何类型的升级之前备份数据库 — 无论是 MySQL 还是应用程序/框架升级。执行 SQL 转储只需一两分钟,并且可以为您节省数小时甚至数天的麻烦。
答案2
你的 mysql 错误日志显示什么?
如果什么都没有出现,请尝试 strace 启动脚本:
strace -f -o strace.output /etc/init.d/mysql.server start
这会将启动 MySQL 守护进程时进行的所有系统调用写入文件 strace.output。调试此类问题时,strace 通常很有用。最后几行可能会有用。
希望这可以帮助。