轉載地址:http://www.laozuo.org/6145.html
老左今天有在幫朋友的博客搬遷到另外一台VPS主機環境,其環境采用的是LLSMP架構的,原先的服務器采用的是LNMP網站環境,其博客程序是 WORDPRESS。告知在導入數據庫的時候出現"Unknown collation: 'utf8mb4_unicode_ci'"錯誤提示,這樣的問題應該是WordPress4.2版本之后才有的,以前記得沒有出現過這樣的問題。
看到WordPress官方社區的文檔,有提到MYSQL版本問題導致的,因為默認的LLSMP環境MYSQL是5.1版本的,而LNMP環境中安裝的MYSQL是5.5版本的,所以高版本向低版本不兼容,官方的建議是升級MYSQL版本5.5,所以我也采用這個方法。
第一、備份數據庫和網站文件
在折騰之前我們還是要備份數據庫和網頁文件到本地,以免出現問題影響當前的環境以及其他網站的運行。
第二、停止MYSQL運行以及卸載老版本
service mysqld stop #暫停MYSQL
yum remove mysql mysql-* #卸載老版本MYSQL
通過上面的命令,我們先停止當前MYSQL的運行,然后再卸載老的MYSQL5.1版本數據庫。
第三、檢查和卸載殘余mysql-libs
yum list installed | grep mysql
我們檢查是否有殘余的mysql-libs,如果有,我們執行下面的命令清除掉。
yum remove mysql-libs
執行清除,如果沒有不執行也沒關系。
第四、升級和安裝MYSQL5.5
這里老左參考網上一個快速的方法解決,因為等會要出去辦事,在這篇文章就不選擇版本安裝了,直接采用源包中的5.5默認安裝。
rpm -Uvh http://dl.fedoraproject.org/pub/epel/6/i386/epel-release-6-8.noarch.rpm
rpm -Uvh http://mirrors.neusoft.edu.cn/epel/6/i386/epel-release-6-8.noarch.rpm
rpm -Uvh http://packages.sw.be/rpmforge-release/rpmforge-release-0.5.2-2.el6.rf.x86_64.rpm
rpm -Uvh http://dl.iuscommunity.org/pub/ius/stable/Redhat/6/x86_64/epel-release-6-5.noarch.rpm
rpm -Uvh http://rpms.famillecollet.com/enterprise/remi-release-6.rpm
先安裝一些依賴環境。
yum --enablerepo=remi,remi-test info mysql mysql-server
然后再執行安裝MYSQL5.5
yum --enablerepo=remi,remi-test install mysql mysql-server
執行完成。到目前為止我們可以通過mysql -V檢查MYSQL版本已經是5.5,但是現在還不行,根據提示需要進行配置文件,但是不懂為什么老左並沒有修改MYSQL的配置文件也可以執行,難道是天意?
第五、啟動和檢查
mysql_upgrade -u root -p
原本根據網絡上的方法是需要修改配置文件的,我沒修改也可以完成,所以繼續執行升級啟動的執行,輸入當初我們的MYSQL ROOT密碼,讓過一遍。
完畢之后,我們執行啟動MYSQL
service mysqld restart
如果能夠看到兩個綠色的OK,那就一切沒有問題。
總結,這樣我們再去導入數據庫就不會出現編碼問題。看到有文檔提到可以直接在導出MYSQL數據庫的時候選擇版本的,后面老左試試,因為升級MYSQL存在很多不安和麻煩,萬一出錯就麻煩了。