从2013年5月25日 星期六开始记录:
时间:2013年5月25日 星期六
1.MySQL too many connections
解决方法:1)重启服务器(当然这不是最好的方法,但确实我是这么干的...)
2013年5月29日 星期三
2.MySQL
mysqldump Got error : 145 : Table '.aaa\bbb' is marked as crashed and should be repaired when using LOCK TABLES
备份数据库的时候出现这个错误,备份不了。
解决方法:1)修复提示需要修复的表
进入MySQL Command Line Client
输入密码,然后进入表所在的数据库,如下
mysql > use aaa; // 进入aaa数据库
mysql > check tables bbb; // 对该bbb表进行检测
然后会显示该表的一些信息,类似以下这样:
+-----------+-------+----------+----------------------------------------------------------+
| Table | Op | Msg_type | Msg_text |
+-----------+-------+----------+----------------------------------------------------------+
| aaa.bbb | check | warning | Table is marked as crashed |
| aaa.bbb | check | warning | 3 clients are using or haven't closed the table properly |
| aaa.bbb | check | error | Checksum for key: 2 doesn't match checksum for records |
| aaa.bbb | check | error | Corrupt |
+-----------+-------+----------+----------------------------------------------------------+
4 rows in set (13.75 sec)
然后执行修复命令,如下:
mysql > repair table bbb; // 对bbb表执行修复命令
再次检测一次bbb表:
mysql > check tables bbb; // 对该bbb表进行检测
会显示类似下面的信息:
+-----------+-------+----------+----------+
| Table | Op | Msg_type | Msg_text |
+-----------+-------+----------+----------+
| aaa.bbb | check | status | OK |
+-----------+-------+----------+----------+
1 row in set (1.76 sec)
说明该表已经恢复了,这回可以继续对数据库进行备份了。
感谢 果冻的拨壳 的文章助我解决问题。
3.MySQL
mysqldump : Got error : 1017 : Can't find file : 'tblA' (errno:2) when using LOCK TABLES
错误编号:1017
问题分析:服务器非法关机,导致该文件损坏,一般是索引损坏
解决办法:1)
备份现在的库,再复制现在的库到一个新库,在新库里 delete from (损坏的表假定为A);
这个操作会生成一个空的索引A.MYI,复制这个MYI文件到坏的库中。
登陆mysql库,执行repair table A;执行analyze table A;2)由于我其他的数据库里也有同名同结构的表的 frm 和 MYI 文件 ,于是乎我就把其他数据库中同名同结构的表的 MYI 文件直接COPY 然后 Ctrl + V 到缺文件的那个数据库中了,执行查询,真的直接可以用~(在这里建议大家一定要做好备份啊,前车之鉴啊!)