gpt4 book ai didi

一次非法关机导致mysql数据表损坏的实例解决

转载 作者:qq735679552 更新时间:2022-09-29 22:32:09 27 4
gpt4 key购买 nike

CFSDN坚持开源创造价值,我们致力于搭建一个资源共享平台,让每一个IT人在这里找到属于你的精彩世界.

这篇CFSDN的博客文章一次非法关机导致mysql数据表损坏的实例解决由作者收集整理,如果你对这篇文章有兴趣,记得点赞哟.

排查修复数据表的经过:

1、访问网页,提示错误,连接不到数据库.

2、启动mysql服务,卸载和关闭rpm安装的mysql服务 (昨天安装postfix好像yum安装了mysql),用netstat -anp |grep mysqld 命令查看mysql服务没有起来,用mysql -uroot -p也连接不到服务器.

3、查看错误提示: 110726 17:02:23 [ERROR] Can't open the mysql.plugin table. Please run mysql_upgrade to create it.   110726 17:02:23 [ERROR] /usr/local/mysql/libexec/mysqld: Table './mysql/host' is marked as crashed and last (automatic?) repair failed   110726 17:02:23 [ERROR] Fatal error: Can't open and lock privilege tables: Table './mysql/host' is marked as crashed and last (automatic?) repair failed 110726 17:02:23 mysqld_safe mysqld from pid file /var/lib/mysql/localhost.localdomain.pid ended   110726 17:24:31 mysqld_safe Starting mysqld daemon with databases from /var/lib/mysql   110726 17:24:31 [Warning] '--skip-locking' is deprecated and will be removed in a future release. Please use '--skip-external-locking' instead.  发现提示数据库表损坏。(./mysql/host) 。

4、修复数据库表: cd /var/lib/mysql/mysql   myisamchk -of host.MYI   - recovering (with keycache) MyISAM-table 'host.MYI'   Data records: 0   表host.MYI修复成功.

5、再次启动服务,查看服务是否启动,登录mysql,还是不行。所以再次查看错误日志。 /usr/local/mysql/libexec/mysqld: Table './mysql/plugin' is marked as crashed and last (automatic?) repair failed   /usr/local/mysql/libexec/mysqld: Table 'plugin' is marked as crashed and last (automatic?) repair failed   110726 17:24:31 [ERROR] Can't open the mysql.plugin table. Please run mysql_upgrade to create it.   110726 17:24:31 [ERROR] /usr/local/mysql/libexec/mysqld: Table './mysql/user' is marked as crashed and last (automatic?) repair failed   110726 17:24:31 [ERROR] Fatal error: Can't open and lock privilege tables: Table './mysql/user' is marked as crashed and last (automatic?) repair failed 110726 17:24:31 mysqld_safe mysqld from pid file /var/lib/mysql/localhost.localdomain.pid ended   110726 17:27:13 mysqld_safe Starting mysqld daemon with databases from /var/lib/mysql   110726 17:27:13 [Warning] '--skip-locking' is deprecated and will be removed in a future release. Please use '--skip-external-locking' instead. 。

6、又发现./mysql/user表损坏。 [root@localhost mysql]# myisamchk -of user.MYI   - recovering (with keycache) MyISAM-table 'user.MYI'   Data records: 6 。

7、表修复成功,但是还是启动不了服务,继续看错误日志。 /usr/local/mysql/libexec/mysqld: Table './mysql/plugin' is marked as crashed and last (automatic?) repair failed   /usr/local/mysql/libexec/mysqld: Table 'plugin' is marked as crashed and last (automatic?) repair failed   110726 17:27:13 [ERROR] Can't open the mysql.plugin table. Please run mysql_upgrade to create it.   110726 17:27:13 [ERROR] /usr/local/mysql/libexec/mysqld: Table './mysql/db' is marked as crashed and last (automatic?) repair failed   110726 17:27:13 [ERROR] Fatal error: Can't open and lock privilege tables: Table './mysql/db' is marked as crashed and last (automatic?) repair failed   110726 17:27:13 mysqld_safe mysqld from pid file /var/lib/mysql/localhost.localdomain.pid ended 。

8、最后一个错误,是./mysql/db表还没有修复好继续修复./mysql/db表.

9、执行下面的命令修复./mysql/db表: [root@localhost mysql]# myisamchk -of db.MYI   - recovering (with keycache) MyISAM-table 'db.MYI'   Data records: 0   Data records: 2 。

10、最后启动mysql服务。 /usr/local/mysql/bin/mysqld_safe & 。

11、查看服务是否在运行。 [root@localhost ~]# netstat -anp | grep mysqld   tcp0  0    0.0.0.0:3306   0.0.0.0:*   LISTEN 4360/mysqld    unix  2  [ ACC ] STREAM LISTENING 14172 4360/mysqld /tmp/mysql.sock  这时发现服务已运行.

12、登录mysql试试。 [root@localhost ~]# mysql -uroot -p123456   Welcome to the MySQL monitor.  Commands end with ; or \g.   Your MySQL connection id is 35   Server version: 5.1.55-log Source distribution   Copyright (c) 2000, 2010, Oracle and/or its affiliates. All rights reserved.   This software comes with ABSOLUTELY NO WARRANTY. This is free software,   and you are welcome to modify and redistribute it under the GPL v2 license   Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.   mysql>   可以登录.

13、打开网页,已经可以正常访问了,说明MySQL数据库的数据表修复成功.

最后此篇关于一次非法关机导致mysql数据表损坏的实例解决的文章就讲到这里了,如果你想了解更多关于一次非法关机导致mysql数据表损坏的实例解决的内容请搜索CFSDN的文章或继续浏览相关文章,希望大家以后支持我的博客! 。

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com