MySQL4 File ‘c:\mysql\share\charsets\?.conf’ not found (Errcode: 22)的解決方法
PHP 4.4.1+MySQL 5.1的環(huán)境下出現(xiàn)了如下的提示:
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
查閱一番后基本可以確定原因?yàn)榈桶姹镜腜HP和高版本的MySQL之間的兼容性導(dǎo)致的。
最簡(jiǎn)單的辦法是升級(jí)PHP到PHP5.3版本即可搞定,未知測(cè)試。因服務(wù)器不是我配的,不敢亂動(dòng),怕搞出麻煩,于是保留低版本的PHP,另尋其他方法。
以下試驗(yàn)了多種網(wǎng)絡(luò)上查到的解決方法,供大家參考:
有說(shuō)是MySQL的配置中basedir沒(méi)設(shè)好,檢查了一下MySQL安裝目錄下的my.ini,basedir正確,不是這個(gè)原因。
有說(shuō)把MySQL的配置my.ini中的default-character-set=utf8前面加#注釋掉就搞定的,我改了,無(wú)效。
有說(shuō)把MySQL安裝目錄\share\charsets目錄下的所有文件復(fù)制到c:\mysql\share\charsets\下的,我復(fù)制了,一樣無(wú)效。
最后找到一種方法,把PHP.ini中的output_buffering = Off 改為 output_buffering = On,上面的提示不見(jiàn)了,搞定。
知其然,不知其所以然。哪位大蝦知道的,煩請(qǐng)告知,小弟謝過(guò)!
暫時(shí)解決...\charsets\?.conf' not found (Errcode: 22) Character set '#33'
php程序提示以下類似的錯(cuò)誤的信息: 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 這個(gè)錯(cuò)誤沒(méi)有影響程序的運(yùn)行,但是影響界面。
大概的原因應(yīng)該是因?yàn)镸ysql 4.1以上的版本對(duì)編碼規(guī)則改變導(dǎo)致了好多大大小小的問(wèn)題,如果服務(wù)器的默認(rèn)字符集是UTF8,DOS的窗口就會(huì)出現(xiàn)此類提示。
出現(xiàn)這樣問(wèn)題的人不在少數(shù),但是從搜索的結(jié)果來(lái)看,最后解決這個(gè)問(wèn)題的人是極少數(shù)的,據(jù)說(shuō)有人用了php5就解決了。但是我不愿意升級(jí)到php5,最后花了好多時(shí)間才看到一個(gè)人的好建議(因?yàn)樵诠舅阉鞯臅r(shí)候沒(méi)有記錄,所以出處無(wú)從考究了),那個(gè)人大概的意思是從Myslq官方網(wǎng)站看到以下信息: "后來(lái)在Mysql的官方網(wǎng)站上看有人說(shuō),錯(cuò)誤提示信息不是說(shuō)要找那個(gè)目錄的某個(gè)文件嗎,那就去建立一個(gè)目錄"! 更好的地方是,那個(gè)貼子還提供了相關(guān)的文件,我特地裝進(jìn)U盤帶了回來(lái),共享一下! PS:解壓以后把mysql這個(gè)文件夾中的Charsets目錄替換mysql下的Charsets目錄就行了! 壓縮包下載:點(diǎn)這里下載附件(mysql.zip)
apache+php+mysql中圖片不能顯示問(wèn)題
做了一個(gè)顯示數(shù)據(jù)庫(kù)中圖片的php網(wǎng)頁(yè),但是顯示不出來(lái)。查Apache中的log,發(fā)現(xiàn)有如下提示:
File 'c:\mysql\share\charsets\?.conf' not found (Errcode: 2)
Character set '#24' is not a compiled character set and is not specified in the 'c:\mysql\share\charsets\Index' file
File 'c:\mysql\share\charsets\?.conf' not found (Errcode: 2)
Character set '#24' is not a compiled character set and is not specified in the 'c:\mysql\share\charsets\Index' file
File 'c:\mysql\share\charsets\?.conf' not found (Errcode: 2)
解決辦法:
現(xiàn)確定phpinfo()顯示的mysql的版本。如果顯示的版本和機(jī)器里正在運(yùn)行的mysql的版本不一樣就說(shuō)明是有問(wèn)題了。我機(jī)器上運(yùn)行的是4.1版本的,但是顯示的是3.23.49版本。可能是以前安裝的mysql版本沒(méi)有卸載完全。重新編譯PHP,
./configure --with-mysql=/${MYSQL} .再次查看phpinfo()里mysql的版本。重新刷新顯示圖片的頁(yè)面,能夠正常顯示。
相關(guān)文章
MySQL超詳細(xì)實(shí)現(xiàn)用戶管理實(shí)例
MySQL 是一個(gè)多用戶數(shù)據(jù)庫(kù),具有功能強(qiáng)大的訪問(wèn)控制系統(tǒng),可以為不同用戶指定不同權(quán)限。在前面的章節(jié)中我們使用的是 root 用戶,該用戶是超級(jí)管理員,擁有所有權(quán)限,包括創(chuàng)建用戶、刪除用戶和修改用戶密碼等管理權(quán)限2022-06-06mysql數(shù)據(jù)庫(kù)遠(yuǎn)程訪問(wèn)設(shè)置方法
MySQL數(shù)據(jù)庫(kù)不允許從遠(yuǎn)程訪問(wèn)怎么辦?本文提供了三種解決方法,需要的朋友可以參考下2008-02-02k8s搭建mysql集群實(shí)現(xiàn)主從復(fù)制的方法步驟
本文是基于已有k8s環(huán)境下,介紹在k8s環(huán)境中部署mysql主從集群的實(shí)現(xiàn)步驟,對(duì)mysql學(xué)習(xí)有一定的幫助,感興趣的可以學(xué)習(xí)一下2023-01-01Mysql使用sum()函數(shù)返回null的問(wèn)題詳解
MySQL的Sum()函數(shù)是用來(lái)找出所有記錄的一個(gè)字段的總和,下面這篇文章主要給大家介紹了關(guān)于Mysql使用sum()函數(shù)返回null的問(wèn)題,文中通過(guò)實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下2022-01-01