mysql - 不正确地杀死 mysqld - 现在不启动

标签 mysql kill

我通过终止进程 ID 停止了 mysqld,然后还删除了 mysqld.sock 文件。 现在,mysqld 没有启动。

我知道有一些数据损坏。但是现在我需要启动 MySQL 而无需重新安装它。

下面是生成的日志。


    InnoDB: using the same InnoDB data or log files.
    InnoDB: Unable to lock ./ibdata1, error: 11
    InnoDB: Check that you do not already have another mysqld process
    InnoDB: using the same InnoDB data or log files.
    140107  8:27:43  InnoDB: Unable to open the first data file
    InnoDB: Error in opening ./ibdata1
    140107  8:27:43  InnoDB: Operating system error number 11 in a file operation.
    InnoDB: Error number 11 means 'Resource temporarily unavailable'.
    InnoDB: Some operating system error numbers are described at
    InnoDB: http://dev.mysql.com/doc/refman/5.1/en/operating-system-error-codes.html
    InnoDB: Could not open or create data files.
    InnoDB: If you tried to add new data files, and it failed here,
    InnoDB: you should now edit innodb_data_file_path in my.cnf back
    InnoDB: to what it was, and remove the new ibdata files InnoDB created
    InnoDB: in this failed attempt. InnoDB only wrote those files full of
    InnoDB: zeros, but did not yet use them in any way. But be careful: do not
    InnoDB: remove old data files which contain your precious data!
    140107  8:27:43 [ERROR] Plugin 'InnoDB' init function returned error.
    140107  8:27:43 [ERROR] Plugin 'InnoDB' registration as a STORAGE ENGINE failed.
    140107  8:27:43 [ERROR] /usr/libexec/mysqld: unknown option '--ndbcluster'
    140107  8:27:43 [ERROR] Aborting

    140107  8:27:43 [Note] /usr/libexec/mysqld: Shutdown complete

    140107 08:27:43 mysqld_safe mysqld from pid file /var/run/mysqld/mysqld.pid ended

最佳答案

您需要恢复 innodb 数据文件。

# cd /var/lib/mysql
# mkdir bak
# mv ibdata1 bak/
# mv ib_logfile* bak/
# cp -a bak/ibdata1 ibdata1
# cp -a bak/ib_logfile* .
# rm -rf bak
# service mysqld restart

引用:http://notesonit.blogspot.hk/2013/05/innodb-unable-to-lock-ibdata1-error-11.html

关于mysql - 不正确地杀死 mysqld - 现在不启动,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24840743/

相关文章:

android - 媒体播放器在广播 Intent 停止后不会停止播放音频文件

mysql - 如何将结果集拆分成更小的子集?

mysql - 如何随机清空整个 VARCHAR 列的一半?

php - PHP MySQL 事务是否只对服务器进行一次调用?

linux - bash 如何终止父进程,或从 bash 模块脚本中的函数退出父进程

php - 在 Linux 中使用 PHP 的 posix_kill() 导致奇怪的行为

php - 在表单中上传多个 php 文件时,会将第一个文件名传递给其他上传

php - HTML <p> 标签忽略数据库换行符

linux - Linux 中的终止命令

com - 杀死系统帐户下的 ATL COM 进程?