关于奇矩互动奇矩互动招贤纳士奇矩互动优质虚拟主机Discuz!商业用户享有本站VIP服务LAMP环境配置手册(CentOS5.1)
 25 123
发新话题
打印

mysql常见错误及分析解决参考方法

本主题由 Edwin 于 2008-4-8 23:13 置顶

mysql常见错误及分析解决参考方法

Can't open file: 'cdb_forums.MYI'. (errno: 145)
问题分析:
这种情况是不能打开 cdb_forums.MYI 造成的,引起这种情况可能的原因有:
1.服务器非正常关机,数据库所在空间已满,或一些其它未知的原因,对数据库表造成了损坏。
2.类 unix 操作系统下直接将数据库文件拷贝移动会因为文件的属组的问题而产生这个错误。

解决方法:
1.修复数据表。
可以使用下面的三种方式修复数据表:
1) 通过tools.php修复   个文件在 Discuz! 程序解压后得到的 utilities 文件夹里或者到 <a href="http://www.discuz.net/thread-761181-1-1.html" target="_blank">http://www.discuz.net/thread-761181-1-1.html<;/a> 下载,上传到服务器的论坛目录下,然后通过 http://论坛地址/tools.php 访问。
2) 使用myisamchk  MySQL自带了专门用户数据表检查和修复的工具—— myisamchk 。更改当前目录到 mysql/bin 下面,一般情况下只有在这个下面才能运行 myisamchk 命令。
常用的修复命令为:myisamchk -r 数据文件目录/数据表名.MYI
3) 通过phpmyadmin修复  phpmyadmin带有修复数据表的功能,进入到某一个表中后,点击“操作”,在下方的“表维护”中点击“修复表”即可。
注意:以上三种修复方式在执行前一定要备份数据库。
2.修改文件的属组。

TOP

There is no such grant defined for user '%s' on host '%s'
error.:1141
问题分析:
MySQL 当前用户无权访问数据库。

解决方法:
1.虚拟主机用户请联系空间商,确认给你提供的帐号是否有授权数据库的权限。
2.独立主机用户请联系服务器管理员,确认给您提供的数据库帐号是否有管理此数据库的权限。

TOP

Error on rename of '%s' to '%s' (errno: %d)
error.:1025
问题分析:
请检查一下您的程序是否有修改数据库表名的语句。

解决方法:
1.请检查您的程序中哪些地方需要修改数据库表名;
2.如果您的实际应用确实需要修改到数据库表名的话,请联系空间商或者服务器管理员给您开放修改库名的权限和服务器本身是否正常。

TOP

Incorrect information in file: '%s'
error.:1033
问题分析:
论坛根目录下的 config.inc.php 文件里的 $dbhost 填写不正确。

解决方法:
1.虚拟主机用户请联系空间商确认此项,一般填写“localhost”。
2.独立主机用户请联系服务器管理员检查此项是否填写正确,如果 MySQL 和 Web 是同台服务器的话,一般填写“localhost”,如果不是同台服务器,请填写 MySQL 服务器的 ip 地址,同时确保在 WEB 端能连接到数据库端。

TOP

Error reading file '%s' (errno: %d)
error.:1023
问题分析:
数据库文件不能被读取。

解决方法:
1.虚拟主机用户请联系空间商查看数据库是否完好。
2.独立主机用户请联系服务器管理员检查一下 MySQL 本身是否正常, MySQL 是否可以读取文件,Linux 用户可以检查一下 MySQL 的数据库文件的属主是否正确以及本身的文件是否损坏。

TOP

Unknown column '%s' in '%s'
error.:1054
问题分析:
1.程序和数据库不统一。
2.修改了论坛的某些程序,而数据库中相应字段未作升级。
3.论坛升级未完成。

解决方法:
1.检查一下程序和数据库是否统一,比如都是 Discuz!6.0 版本;
2.检查一下修改程序的过程中(比如安装插件)是否漏掉了其中的步骤;
3.论坛升级未完成的话,继续升级论坛,如果无法继续升级,请恢复数据备份重新开始升级。

TOP

Duplicate entry '%s' for key %d
error.:1062
问题分析:
向唯一字段插入相同数据。
解决方法:
1.请检查程序是否做了修改。
2.如果您正在转移数据库,请确认数据库的版本是否相同。
3.如果以上方法还未解决,请恢复备份,用 http://www.discuz.net/viewthread.php?tid=129707   DBCheck工具 将数据库检验为标准结构。

TOP

No database selected
error.:1046
问题分析:
论坛根目录下的配置文件 config.inc.php 的 $dbname 项填写错误。

解决方法:
检查论坛根目录下的配置文件 config.inc.php 的 $dbname 项是否正确,如果是独立主机,请联系服务器管理员确认真实的管理员,如果是虚拟主机,请联系空间商确认正确的数据库名。

TOP

Host '*****' is blocked because of many connection errors; unblock with 'mysqladmin flush-hosts'
error.:1129
问题分析:
数据库出现异常,请重启数据库。

解决方法:
1. 由于存在很多连接错误,主机'****'被屏蔽,虚拟主机用户请联系空间商处理,独立主机用户请联系服务器管理员,在 MySQL 的命令控制台下执行'mysqladmin flush-hosts'解除屏蔽即可,或者重启 MySQL 数据库。

TOP

Can't create table './**/***.**'
error.:1005
问题分析:
创建数据表失败。

解决方法:
1.数据表是否已经存在。
2.检查正在使用的mysql用户是否具有创建数据表的权限。
3.检查这个表所在的数据库对应的文件是否具有可写权限。

TOP

 25 123
发新话题