1. 程式人生 > >關於解決使用sqoop匯出資料到mysql中文亂碼問題!!!

關於解決使用sqoop匯出資料到mysql中文亂碼問題!!!

當我們使用mysql的時候一般情況下都會出現亂碼情況,出現這種情況的主要原因一般就是匯入的資料和mysql資料的原始編碼方式不同造成的,下面就是我的亂碼案例:

咱們先看下自己的編碼表

一般輸入下面這個命令:show variables like 'character%';能檢視到以下內容

 

不管你的是不是和上面這張表一樣,但是一定在你修改之後要和下面這張表一樣,

所以在你對需要的字符集編碼格式進行修改之後要和這個表格一樣

分為win和linux的(看紅字):

win版本如下:

 

        (1):進入mysql的安裝目錄,找到my-default.ini或者my.ini配置檔案,你可以將my-default.ini修改成my.ini,影響不大的;

        (2):我的my.ini只有一個[mysqld]標籤,其他均處於註釋狀態,我們在my.ini裡面做兩件事

                在[mysqld]標籤下新增:character-set-server=utf8

                增加一個[client]標籤,並且在[client]標籤下新增:default-character-set=utf8

        (3):到任務列表中重啟mysql服務;

        (4):進入dos介面,登入資料庫,輸入命令:show variables like "%char%";如果dos介面出現的下

linux的如下(centos7)

:mysqld]
#
# Remove leading # and set to the amount of RAM for the most important data

datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
character-set-server = utf8

#ql  Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0

# Recommended in standard MySQL setup
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES

[mysqld_safe]
log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid
 

執行完上面的步驟時候一定要重啟mysql服務:

service mysqld start

再次進去輸入:show variables like 'character%';

出現第三張圖片  就ok了    有什麼問題  可以在下方留言!!!