頁面數據寫入數據庫編碼問題

最近寫了一個小的爬蟲代碼。想要把抓取到的數據放入數據庫中。發現報錯

spacer.gif

7042e438429c4205d98069e6a56329a3.png

 首先 百度,發現是由於編碼問題造成的 先看數據庫編碼

 show variables like 'character_set_database';

show create table <表名>;

發現果然編碼不對,遂將編碼修改爲UTF-8

繼續執行腳本,發現依然報錯。心想是不是頁面數據格式不是UTF-8 中間還需要做什麼轉換? 544d090c9417a7041024ad6541a52e22.png

發現頁面數據格式也是UTF-8。。。。

遂繼續百度。。終於 功夫不負有心人,發現了一個回答。

c83a8bbfb5f397e274eff3dfceabb6c1.png

帶着試一試的心態修改編碼。

sudo find / -name my.cnf 找到配置文件(使用配置文件修改更快)


在原文中添加以下內容:(mysql和client是原來配置文件裏面沒有的需要自己手動添加)

[client]
default-character-set = utf8mb4

[mysql]default-character-set = utf8mb4

[mysqld]character-set-client-handshake = FALSEcharacter-set-server = utf8mb4collation-server = utf8mb4_unicode_ci
init_connect='SET NAMES utf8mb4'

最後重啓服務:sudo service mysql restart

進入mysql查看結果:

SHOW VARIABLES WHERE Variable_name LIKE 'character\_set\_%' OR Variable_name LIKE 'collation%';

78df0f299238c8269eb09f0cd1000230.png


一切搞定。。運行腳本。。。發現正常!!GOD...

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章