一、 Can’t connect to MySQL server on ‘localhost'(10061)?
翻译:不能连线到 localhost 上的 mysql? 分析:这说明 “localhost” 计算机是存在的,但在这台机器上却没提供 MySQL 服务。? 需要启动这台机器上的 MySQL 服务, 如 果机子负载太高没空相应请求也会产生这个错误。? 解决: 既然没有启动那就去启动这台机子的 mysql 。如果启动不成功,多数是因为你的 my.ini 配置的 有问题。重新配置其即可。? 如果觉得 mysql 负载异常,可以到 mysql/bin 的目录下执行 mysqladmin-uroot -p123 processlist 来检视 mysql 当前的程序。
二、 Unknown MySQL ServerHost ‘localhosadst’ (11001)
翻译:未知的 MySQL 站群服务器 localhosadst? 分析:站群服务器 localhosasdst 不存在。或者根本无法连线? 解决:仔细检查自己论坛下面的./config.inc.php 找到 $dbhost 重新设定为正确的 mysql 站群服务器地址。
   
三、 Access denied for user:’roota@localhost’ (Using password: YES)
? 翻译:使用者 roota 访问 localhost 被拒绝(没有允许通过)? 分析:造成这个错误一般资料库使用者名称和密码相对 mysql 站群服务器不正确? 解决:仔细检查自己论坛下面的 ./config.inc.php 找到 $dbuser 、 $dbpw 核实后重新设定储存即可。
四、 Access denied for user:’red@localhost’ to database ‘newbbs’?
翻译:使用者 red 在 localhost 站群服务器上没有许可权运算元据库 newbbs? 分析:这个提示和问题三是不同的。那个是在连线资料库的时候就被阻止了,而这个错误是在对资料库进行操作时引起 的。比如在 selectupdate 等等。这个是因为该使用者没有运算元据库相应的权力。比如 select 这个操作在 mysql.user.Select_priv 里记录 Y 可以操作 N 不可以操作。? 解决:如果是自己的独立 WordPress 主机那么更新 mysql.user 的相应使用者记录,比如这里要更新的使用者为 red 。或者直接修改./config.inc.php 为其配置一个具有对资料库操作许可权的使用者? 或者通过如下的命令来更新授权 grantall privileges on dbname.* to ‘user’@’localhost’ identified by ‘password’? 提示:更新了 mysql 库中的记录一定要重启 mysql 站群服务器才能使更新生效?FLUSH PRIVILEGES;
五、 No Database Selected
? 翻译:没有资料库被选择上? 分析:产生的原因有两种?config.inc.php 里面 $dbname设定的不对。致使资料库根本不存在,所以在 $db->select_db($dbname); 时返回了 false? 和上面问题四是一样的,资料库使用者没有 select 许可权,同样会导致这样的错误。当你发现 config.inc.php 的设定没有任 何问题,但还是提示这个错误,那一定就是这种情况了。? 解决:对症下药? 开启 config.inc.php 找到 $dbname 核实重新配置并储存? 同问题 四的解决方法
六、 Can’t open file:’xxx_forums.MYI’. (errno: 145)
翻译:不能开启 xxx_forums.MYI? 问题分析:? 这种情况是不能开启 cdb_forums.MYI 造成的,引起这种情况可能的原因有:?1 、站群服务器非正常关机,资料库所在空间已满,或一些其它未知的原因,对资料库表造成了损坏。?2 、类 unix 操作系统下直接将资料库档案拷贝移动会因为档案的属组问题而产生这个错误。? 解决方法:?1 、修复资料表? 可以使用下面的两种方式修复资料表:(第一种方 法仅适合独立 WordPress 主机使用者)?1)使用 myisamchk ,MySQL 自带了专门使用者资料表检查和修复的工具 —— myisamchk 。更改当前目录到 MySQL/bin 下面,一般情况下只有在这个下面才能执行 myisamchk 命令。常用的修复命令为:myisamchk-r 资料档案目录/资料表名.MYI;?2)通过 phpMyAdmin 修复,phpMyAdmin 带有修复资料表的功能,进入到某一个表中后,点选 “操作”,在下方的 “表维护” 中点选 “修复表” 即可。? 注意:以上两种修复方式在执行前一定要备份资料 库。?2 、修改档案的属组(仅适合独立 WordPress 主机使用者)?1)复制资料库档案的过程中没有将资料库档案设定为 MySQL 执行的帐号可读写(一般适用于 Linux 和 FreeBSD 使用者)。
七、 Table’test.xxx_sessions’ doesn’t exist
? 翻译:xxxxx 表不存在? 分析:在执行 sql 语句时没有找到表,比如:SELECT * FROMxxx_members WHERE uid=’XX’ 这里如果表 xxx_members 不存在于 $dbname 库里,那么就会提示这个错误。具体可分为以下三种情况来讨论:? 安装插件外挂或者 hack 时修改了程 序档案,而忘记了对资料库作相应的升级。? 后台使用了不完全备份,汇入资料时没有汇入到已经安装了相应版本的论坛的资料库中。? 解决: 同样对症下药,不同的原因不同的处理方法。? 仔细对照插件外挂作者提供的安装说明,把遗漏的对资料库的操作补上,如果仍然不能解决问题,那么应该怀疑该插件外挂的 可用性了。去咨询一下插件外挂作者,或者将其解除安装。? 不要张冠李戴,多大的脚就穿多大的鞋。总之使得程式档案和资料库配套即可.
八、 Unknown column’column_name’ in ‘field list’
翻译:未知的栏位名 column_name? 分析:在执行 sql 语句是出现了指定表中没有的栏位名称,就会出现这个错误。具体导致的原因可分为以下两种? 安装插件外挂或者 hack 时修改了程式档案,而忘记了对资料库作相应的升级。? 程式档案和资料库不配套,比如 d2.5 的资料库配置给 d4.1 的程式来用肯定会 出现这个错误。? 解决: 导致的原因和问题八的 1 和 3 是相同的,所以解决方法也一样。
九、 You have an error in yourSQL syntax
翻译:有一个语法错误在你的sql中? 分析:论坛标准的程式是没有sql语法错误的。所以造成这个错误的原因一般就两类? 安装插件外挂或擅自修改程式。? 不同 的资料库版本资料库汇出汇入,比如MySQL4.1的资料在汇出的语句包含了MySQL4.0没有的功能,像字符集的设定,这时如果将这些sql汇入到 MySQL4.0的时候就会产生sql语法错误。? 解决:? 仔细检检视到底是哪里的错误,将其修正,实在不行就用标准程式把出错的程式替换。? 在资料库备 份的时候要留意,如果不打算倒入到其他版本的mysql中则不用特殊考虑,反之要特殊的设定。使用DZ4.1的后台资料备份,可以按照提示去设定想要的格 式。独立WordPress主机的也可以在到处的时候将其汇出为mysql4.0的格式。?mysqldump -uroot -p–default-character-set=latin1 –set-charset=gbk –skip-opt databse >test.sql
十、 Duplicate entry ‘xxx’for key 1
翻译:插入 xxx 使索引 1 重复? 分析:索引如果是 primaryunique 这两两种,那么资料表的资料对应的这个栏位就必须保证其每条记录的唯一性。否则就会产生 这个错误。? 一般发生在对资料库写操作的时候,例如 Discuz!4.1 论坛程式要求所有会员的使用者名称 username 必须唯一,即 username 的索 引是 unique,这时如果强行往 cdb_members 表里插入一个已有的 username 的记录就会发上这个错误,或者将一条记录的 username 更新 为已有的一个 username 。? 改变表结构的时候也有可能导致这个错误。例如 Discuz!4.0 论坛的资料库中 cdb_members.username 的索引型别是 index 这个时候是允许有相同 username 的记录存在 的,在升级到 4.1 的时候,因为要将 username 的索引由原来的 index 变 为 unique 。如果这时 cdb_members 里存在有相同的 username 的记录,那么就会引发这个错误。? 汇出资料据时有时会因为一些原因(作者 目前还不清楚)导致同一条记录被重复汇出,那么这个备份资料在汇入的时候出现这个错误是在所难免的了。? 修改了 auto_increment 的值,致使 “下一个 Autoindex” 为一条已经存在的记录? 解决: 两种思路,一是破坏掉唯一性的索引。二是把重复的资料记录干掉,只保留一条。很显然第一种思路是不可取的。那么按照二的思路我们得出以下几种解决方法,对 应上面的 i iiiii? 略? 按照错误提示里的资讯到资料库中将重复的记录删除,仅保留一条即可。之后继续执行升级操作。? 这种情况发生的概率很小,可以用文字编辑器 开启备份文件,查询重复的资讯。将其多余的拿掉,仅保留一条即可。? 查询出表中 auto_increment 最大的一条记录,设定 auto_incerment 比其大一即可。?PS:repaire table “表名 “,可以暂时解决问题。
十一、 Duplicate key name’xxx’
? 翻译:索引名重复? 分析:要建立的索引已经存在了,就会引发这个错误,这个错误多发生在升级的时候。可能是已经升级过的,重复升级引起的错误。也有可能 是之前使用者擅自加的索引,刚好与升级档案中的所以相同了。? 解决: 看看已经存在的索引和要新增的索引是否一样,一样的话可以跳过这条 sql 语句,如果不一样那么现删除已存在的所以,之后再执行。
十二、 Duplicate column name’xxx’
? 翻译:栏位名 xxx 重复? 分析:新增的栏位 xxx 已经存在,多发生在升级过程中,与问题十二的产生是一样的。? 解决: 看一下已经存在的栏位是否和将要新增的栏位属性完全相同,如果相同则可以跳过不执行这句 sql,如果不一样则删除掉这个栏位。之后继续执行升级程式。
十三、 Table ‘xxx’ alreadyexists
? 翻译:资料表 xxx 已经存在? 分析:xxx 表已经存在于库中,再次试图建立这个名字的表就会引发这个错误。同样多发生在论坛的升级中。类似于问题十 二。? 解决: 看看已经存在的表是否和将要建立的表完全一样,一样的话可以跳过不执行这个 sql,否则请将存在的表先删除,之后继续执行升级档案。
十四、 Can’t create database’xxx’. Database exists
翻译:不能建立资料库 xxx,资料库已经存在? 分析:一个 mysql 下面的资料库名称必须保证唯一性,否则就会有这个错误。? 解决:把已经存在的资料库改名或者把将要建立的资料库改名,总之不让他们的名称冲突。
十五、 小结(针对问题 1112131415)
此类问题错误提示中都暗藏一个站群关键词 TDKduplicate(重复)? 那么对于 mysql 资料库来说什么东西是不能重复的呢?? 资料库 database? 同一个资料库下资料表 table? 同一个资料表下栏位 column? 同一个资料表下索引 key? 同一个资料表在索引唯一(UNIQUEPRIMARY)的情况下记录中的这些栏位不可以重复
十六、 Unknown system variable’NAMES’
? 翻译:未知的系统变数 NAMES? 分析:Mysql 版本不支援字符集设定,此时强行设定字符集就会出现这个错误。? 解决: 将 sql 语句中的 SET NAMES ‘xxx’ 语句去掉
十七、 Lost connection toMySQL server during query?
翻译:MySQL 站群服务器失去连线在查询期间? 分析:远端连线资料库是有时会有这个问题。 MySQL 站群服务器在执行一条 sql 语句的时候失去了连线造成的。? 解决: 一般不需要怎么去处理,如果频繁的出现那么考虑改善硬体环境。
十八、 User ‘red’ has exceededthe ‘max_updates’ resource (current value: 500)
翻译:msql 使用者 red 已经超过了’max_updates’(最大更新次数),’max_questions’(最大查询次 数),’max_connections’(最大连线数),当前设定为 500? 分析:在 mysql 资料库的下有一个库为 mysql,它其中有一个表为 user 这里面的纪录每一条都对应为一个 mysql 使用者的授权。其中栏位 max_questions max_updates max_connections 分别记录著最大查询次数 最大更新数 最大连线数,当目前的任何一个引数大于任何一个设定的值就会产生这个错误。? 解决: 独立 WordPress 主机使用者可以直接修改授权表。修改完之后重启 mysql 或者跟新授权表,进入 mysql 提示符下执行?FLUSH PRIVILEGES;? 记得后面要有分号’;’? 虚拟 WordPress 主机的使用者如果总是出现这个问题可找 WordPress 主机空间商协商解决。
十九、 Too many connections(1040) 连结过多?
翻译:达到最大连线数? 问题分析:? 连线数超过了 mysql 设定的值,与 max_connections 和 wait_timeout 都有关系。 wait_timeout 的值越大,连线的空闲等待就越长,这样就会造成当前连线数越大? 解决方法:?1. 虚拟 WordPress 主机使用者请联络 WordPress 主机空间商优化 MySQL 站群服务器的配置;?2. 独立 WordPress 主机使用者请联络站群服务器管理员优化 MySQL 站群服务器的配置,可参考:? 修改 MySQL 配置档案 my.ini 或者 my.cnf 中的引数:?max_connections= 1000?wait_timeout = 10? 修改后重启 MySQL ,如果经常性的报此错误,请做一下站群服务器的整体优化。
二十、 There is no such grantdefined for user ‘%s’ on host ‘%s’?
错误编号:1141? 问题分析:?MySQL 当前使用者无权访问资料库。? 解决方法:?1 、虚拟 WordPress 主机使用者请联络 WordPress 主机空间商,确认给你提供的帐号是否有授权资料库的许可权。?2 、独立 WordPress 主机使用者请联络站群服务器管理员,确认给您提供的资料库帐号是否有管理此资料库的许可权。
二十一、 Error on rename of ‘%s’to ‘%s’ (errno: %d)?error.:1025?
问题分析:? 请检查一下您的程式是否有修改资料库表名的语句。? 解决方法:?1. 请检查您的程式中哪些地方需要修改资料库表名;?2. 如果您的实际应用确实需要修改到资料库表名的话,请联络 WordPress 主机空间商或者站群服务器管理员给您开放修改库名的许可权和站群服务器本身是否正常。
二十二、 Error reading file ‘%s'(errno: %d)?error.:1023?
问题分析:? 资料库档案不能被读取。? 解决方法:?1. 虚拟 WordPress 主机使用者请联络 WordPress 主机空间商检视资料库是否完好。?2. 独立 WordPress 主机使用者请联络站群服务器管理员检查一下 MySQL 本身是否正常, MySQL 是否可以读取档案,Linux 使用者可以检查一下 MySQL 的资料库档案的属主是否正确以及本身的档案是否损坏。
二十三、 Host ‘*****’ is blockedbecause of many connection errors; unblock with ‘mysqladmin flush-hosts’?error.:1129
问题分析:? 资料库出现异常,请重启资料库。? 解决方法:?1. 由于存在很多连线错误,WordPress 主机’****’ 被遮蔽,虚拟 WordPress 主机使用者请联络 WordPress 主机空间商处理,独立 WordPress 主机使用者请联络站群服务器管理员,在 MySQL 的命令控制台下执行’mysqladmin flush-hosts’ 解除遮蔽即可,或者重启 MySQL 资料库
二十四、 dropping database (can’tdelete ‘%s’, errno: %d)?error.:1009?
问题分析:? 不能删除资料库档案,导致删除资料库失败。? 解决方法:?1. 检查您使用的资料库管理帐号是否有许可权删除资料。?2. 检查资料库是否存在。
二十五、 Got error 28 from tablehandler?error.:1030?
问题分析:? 资料库所在磁碟空间已满。? 解决方法:?1. 虚拟 WordPress 主机使用者请联络 WordPress 主机空间商增加 MySQL 所在的磁碟空间或者清理一些无用档案;?2. 独立 WordPress 主机使用者请联络站群服务器管理员增加 MySQL 所在的磁碟空间或者清理一些无用档案
二十六、 Can’t create a newthread; if you are not out of available memory, you can consult the manual fora possible OS-dependent bug 。?error.:11/35?
问题分析:? 资料库站群服务器问题,资料库操作无法建立新执行绪。一般是两个原因:?1. 站群服务器系统内存溢位。?2. 环境站群软件损坏或系统损坏。? 解决方 法:?1. 虚拟 WordPress 主机使用者请联络下 WordPress 主机空间商资料库站群服务器的内存和系统是否正常。?2. 独立 WordPress 主机使用者请联络站群服务器管理员检查站群服务器的内存和系统是否正常,如果服 务器内存紧张,请检查一下哪些程序消耗了站群服务器的内存,同时考虑是否增加站群服务器的内存来提高整个的负载能力。
二十七、 Error: Client does notsupport authentication protocol requested by server; consider upgrading MySQLclient?error.:1251?
问题分析:? 如果你升级MySQL 到 4.1 以上版本后遇到以上问题, 请先确定你的MySQL Client 是 4.1 或者更高版本(Windows下有问题你就直接跳到下面看解决方法了,因为 MySQL 在Windows 是 client 和 server 一起装上了的)。? 解决方法:?1.Windows 平台? 主要是改变连线MySQL 的帐户的加密方式,MySQL 4.1/5.0 是通过PASSWORD 这种方式加密的。可以通过以下两种方法得到解决:?1) mysql->SET PASSWORD FOR’some_user’@’some_host’=OLD_PASSWORD(‘new_password’);?2) mysql->UPDATE mysql.user SETPassword=OLD_PASSWORD(‘new_password’) WHERE Host=’some_host’ ANDUser=’some_user’;?2.Linux/Unix 平台?Linux平台下首先确定是否安装过 MySQL 的客户端,这个用 rpm安装很简单,Linux 程式码为:?rpm -ivh MySQL-client-4.1.15-0.i386.rpm? 然后在编译 php 的时候要加上:?–with-mysql=/your/path/to/mysql? 一般情况下都可以解决。如果还出现这种错误,可以按照下面的方法来 做:?mysql->SET PASSWORD FOR’some_user’@’some_host’=OLD_PASSWORD(‘new_password’);?mysql->UPDATE mysql.user SET Password=OLD_PASSWORD(‘new_password’)WHERE Host=’some_host’ AND User=’some_user’;
二十八、 Error: Can’t connect tolocal MySQL server through socket ‘/var/lib/mysql/mysql.sock’?error.:2002?
问题分析:? 出现这个错误一般情况下是因为下面两个原因:?1.MySQL 站群服务器没有开启。?2.MySQL 站群服务器开启了,但不能找到 socket 档案。? 解决方法:?1. 虚拟 WordPress 主机使用者,请联络 WordPress 主机空间商确认资料库是否正常启动。?2. 独立 WordPress 主机使用者,请检查一下 MySQL 服务是否已经开启,没有开启,请启动 MySQL 服务;如果已经开启,并且是 Linux 系统,请检查一下 MySQL 的 socket 的路径,然后开启 config.inc.php 找到?$dbhost = ‘localhost’; 在 hostname 后面加冒号 ‘:’ 和 MySQL 的 socket 的路径。? 比如 MySQL 站群服务器为 localhost?MySQL 的 socket 的路径为 /tmp/mysql.sock? 那么就改成如下:?$dbhost= ‘localhost:/temp/mysql.sock’;
二十九、 Can’t connect to MySQLserver on ‘localhost’?error.:2003?
问题分析:?MySQL 服务没有启动,一般是在异常的情况下 MySQL 无法启动导致的,比如无可用的磁碟空间,my.ini 里 MySQL 的 basedir 路径设定错误等。? 解决方法:?1. 检查磁碟空间是否还有剩余可用空间,尽量保持有足够的磁碟空间可用。?2. 检查 my.ini 里的 basedir 等引数设定是否正确,然后重新启动下 MySQL 服务。
三十、 Lost connection to MySQLserver during query?error.:2013
? 问题分析:? 资料库查询过程中丢失了与 MySQL 站群服务器的连线。? 解决方法:?1. 请确认您的程式中是否有效率很低的程式,比如某些插件外挂,可以解除安装掉插件外挂,检查一下站群服务器是否正常;?2. 站群服务器本身资源 紧张,虚拟 WordPress 主机使用者请联络 WordPress 主机空间商确认,独立 WordPress 主机使用者请联络站群服务器管理员,检查一下站群服务器是否正常。
三十一、 Got a packet bigger than’max_allowed_packet’ bytes?
错误编号:1153? 问题分析:调整了 Mantis 的上传附件的大小却没有调整 MySQL 的配置档案。? 解决办法:?1 、独立 WordPress 主机使用者请按照以下方法调整:? 查询 MySQL 的配置档案(my.cnf 或者 my.ini)? 在 [mysqld] 部分新增一句(如果存在,调整其值就可以):?max_allowed_packet=10M? 重启 MySQL 服务就可以了。这里设定的是 10MB 。