【MySQL】File ‘c:\mysql\share\charsets\?.conf’ not found (Errcode: 22)的解决方法



    PHP 4.4.1+MySQL 5.1的环境下出现了如下的提示:

    File 'c:\mysql\share\charsets\?.conf' not found (Errcode: 22) Character set '#33' is not a compiled character set and is not specified in the 'c:\mysql\share\charsets\Index' file

    查阅一番后基本可以确定原因为低版本的PHP和高版本的MySQL之间的兼容性导致的。

    最简单的办法是升级PHP到PHP5.3版本即可搞定,未知测试。因服务器不是我配的,不敢乱动,怕搞出麻烦,于是保留低版本的PHP,另寻其他方法。

    以下试验了多种网络上查到的解决方法,供大家参考:



    有说是MySQL的配置中basedir没设好,检查了一下MySQL安装目录下的my.ini,basedir正确,不是这个原因。

    有说把MySQL的配置my.ini中的default-character-set=utf8前面加#注释掉就搞定的,我改了,无效。

    有说把MySQL安装目录\share\charsets目录下的所有文件复制到c:\mysql\share\charsets\下的,我复制了,一样无效。

    最后找到一种方法,把PHP.ini中的output_buffering = Off 改为 output_buffering = On,上面的提示不见了,搞定。

    知其然,不知其所以然。哪位大虾知道的,烦请告知,小弟谢过!



    本博客所有文章如无特别注明均为原创。
    复制或转载请以超链接形式注明转自枫芸志,原文地址《【MySQL】File ‘c:\mysql\share\charsets\?.conf’ not found (Errcode: 22)的解决方法
    标签:
    分享:

还没有人抢沙发呢~

无觅相关文章插件,快速提升流量