使用linux客戶端執行shell腳本創建數據庫初始化數據庫中文亂碼問題

  1. 定義了一個shell腳本,可以根據其他的多個sql文件創建數據庫,並且使用包含初始化數據的sql文件初始化數據庫。

  2. 在windows下使用linux客戶端連接到linux服務器,執行shell腳本後,發現創建出的數據庫有中文亂碼。

  3. 確定是字符集設置問題。查看數據庫,發現字符集設置如下,很多還是 latin1。

    mysql> show variables like 'character_set_%';
    +--------------------------+----------------------------+
    | Variable_name | Value |
    +--------------------------+----------------------------+
    | character_set_client | latin1 |
    | character_set_connection | latin1 |
    | character_set_database | latin1 |
    | character_set_filesystem | binary |
    | character_set_results | latin1 |
    | character_set_server | latin1 |
    | character_set_system | utf8 |
    | character_sets_dir | /usr/share/mysql/charsets/ |

  4. 修改默認字符集

     

  5. 修改文件/etc/my.cnf內容

     

    在[client]下添加如下語句

     

    default-character-set=utf8  

     

    在[mysqld]下添加


    default-character-set=utf8

     

    init_connect='SET NAMES utf8'    ##設定連接mysql是使用UTF8編碼

     

    修改好後,重啓mysql服務即可


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