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