1. 程式人生 > >mariadb插入中文數據亂碼解決過程

mariadb插入中文數據亂碼解決過程

efault mark 解決 html href gpo alt 分享 添加

基本情況:

系統:centos 7
mariadb安裝方式:yum

亂碼解決過程:

  1. 查看當前數據庫編碼(登錄數據庫後)

    # show variables like ‘character%‘;

    技術分享圖片
    (上圖為已經配置成功)

  2. 如果結果不為上圖則需要設置數據庫配置文件

  • 編輯 /etc/my.cnf.d/client.cnf 文件,添加如下內容
    [client]
    default-character-set=utf8

  • 編輯 /etc/my.cnf.d/mysql-clients.cnf文件,添加如下內容
    [mysql]
    default-character-set=utf8

  • 編輯 /etc/my.cnf 文件,添加如下內容
    [mysqld]
    character-set-server=utf8
    default-storage-engine=INNODB

  • 重啟服務

    # systemctl restart mariadb

再次運行 # show variables like ‘character%‘;

結果如上圖,則表示設置成功。
但是此時如果在設置之前創建的database 中插入中文,仍為亂碼。此時刪除重新創建一個數據庫即可。

圖片中各個選項對應的字符集含義,見sunzn‘Blog 的博客

mariadb插入中文數據亂碼解決過程