日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > 数据库 >内容正文

数据库

mysql 导出中文乱码_sqoop导出到mysql中文乱码问题总结、utf8、gbk

發布時間:2025/4/16 数据库 42 豆豆
生活随笔 收集整理的這篇文章主要介紹了 mysql 导出中文乱码_sqoop导出到mysql中文乱码问题总结、utf8、gbk 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

今天使用sqoop1.4.5版本的(hadoop使用cdh5.4)因為亂碼問題很是頭痛半天。下面進行一一總結

命令:

[root@sdzn-cdh01 etc]# sqoop export --connect "jdbc:mysql://192.168.200.40:3306/otherdb?useUnicode=true&characterEncoding=utf-8" -m 1 ?--username root --password root --table use_02 --export-dir /sdzn_yhhx/user0/ --input-null-string "\\\\N" --input-null-non-string "\\\\N" --input-fields-terminated-by "," --input-lines-terminated-by "\\n"

一.連接數據庫主機失敗

異常表象:

com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: Communications link failure

The last packet sent successfully to the server was 0 milliseconds ago. The driver has not received any packets from the server.

1.沒有mysql-connect-jdbc.jar的驅動jar包

2.不能ping通訪問的主機

二.訪問權限問題

異常:

Error executing statement: java.sql.SQLException: Access denied for user 'root'@'sdzn-cdh01.zhiyoubao.com' (using password: YES)

問題分析出現上述權限異常,說明200.40所屬的mysql中的otherdb數據庫沒有設置sdzn-cdh01主機的訪問權限。換句話,192.168.200.40所在的mysql禁止sdzn-cdh01主機訪問,或者訪問數據庫的名稱、密碼有誤。因為在默認情況下mysql的中的數據庫的訪問信息為:root@‘localhost’,所以要重置其訪問權限。需要說明一點數據庫的訪問登錄名和密碼與其進入數據庫操作平臺的登錄名和密碼完全是兩回事不要將二者混為一談

操作如下:

首先進入mysql 命令操作平臺查看用戶權限,以確保是否存在該用戶的權限

#mysql -u root -p

mysql>SELECT DISTINCT CONCAT('User: ''',user,'''@''',host,''';') AS query FROM mysql.user;

如沒有再去為該主機的用戶添加權限

添加相應權限

grant ?權限? on? 數據庫名.表名 to 用戶名@'可以訪問的地址' identified by "密碼"

設置之后要刷新mysql>flush privileges;

三.數據格式問題

如下所示:

Caused by: java.lang.RuntimeException: Can't parse input data: '1,i'

at use_02.__loadFromFields(use_02.java:249)

at use_02.parse(use_02.java:192)

at org.apache.sqoop.mapreduce.TextExportMapper.map(TextExportMapper.java:83)

異常分析:

同步的為mysql結構化數據,對數據格式有固定的要求。所以說當集群文件中數據格式與mysql表中存在沖突時,會導致數據傳輸異常。

問題解決:1.查看hdfs中文件數據是否與mysql表中對應的表字段數據類型一致(hdfs中string對應mysql中varchar或者char類型等等)

2.查看sqoop命令中分隔符是否與hdfs相應文件中分隔符一致

四.中文亂碼問題

最后在說亂碼問題,萬事俱備只欠東風。亂碼問題是同步數據中最常見的問題之一。

具體的亂碼顯示不在貼出。

問題分析:亂碼問題由于兩個平臺數據編碼不一致造成的。或者遠程連接平臺編碼問題以及sqoop命令中編碼問題

1.修改sqoop編碼[root@sdzn-cdh01 etc]# sqoop export --connect "jdbc:mysql://192.168.200.40:3306/otherdb?useUnicode=true&characterEncoding=utf-8"

2.在創建數據庫時指定編碼,

mysql>?CREATE?DATABASE?`otherdb`?DEFAULT?CHARACTER?SET?utf8?COLLATE?utf8_general_ci;

mysql>use?otherdb;

mysql> create table ?use_02 (remark varchar(20),groupName varchar(225)) charset utf8 collate utf8_general_ci;

3.修改mysql數據編碼

4.修改遠端訪問平臺編碼

五.源數據中存在特殊字符

原:

[root@sdzn-cdh01 ~]# sqoop export --connect "jdbc:mysql://192.168.0.197:3306/otherdb?useUnicode=true&characterEncoding=utf-8" -m 1 ?--username root --password root --table order_raw_info ?--export-dir '/user/hive/warehouse/zyb.db/order_raw_info/' --input-null-string "\\\\N" --input-null-non-string "\\\\N" --input-fields-terminated-by "\001" --in^Ct-lines-terminated-by "\\n"

異常:

Caused by: java.io.IOException: java.sql.SQLException: Incorrect string value: '\xF0\x9F\x90\xB025...' for column 'link_name' at row 52

at org.apache.sqoop.mapreduce.AsyncSqlRecordWriter.write(AsyncSqlRecordWriter.java:233)

at org.apache.sqoop.mapreduce.AsyncSqlRecordWriter.write(AsyncSqlRecordWriter.java:46)

at org.apache.hadoop.mapred.MapTask$NewDirectOutputCollector.write(MapTask.java:655)

at org.apache.hadoop.mapreduce.task.TaskInputOutputContextImpl.write(TaskInputOutputContextImpl.java:89)

at org.apache.hadoop.mapreduce.lib.map.WrappedMapper$Context.write(WrappedMapper.java:112)

at org.apache.sqoop.mapreduce.TextExportMapper.map(TextExportMapper.java:84)

... 10 more

Caused by: java.sql.SQLException:?Incorrect string value: '\xF0\x9F\x90\xB025...' for column 'link_name' at row 52

at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:957)

at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3878)

at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3814)

at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:2478)

at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:2625)

at com.mysql.jdbc.ConnectionImpl.execSQL(ConnectionImpl.java:2551)

at com.mysql.jdbc.PreparedStatement.executeInternal(PreparedStatement.java:1861)

at com.mysql.jdbc.PreparedStatement.execute(PreparedStatement.java:1192)

at org.apache.sqoop.mapreduce.AsyncSqlOutputFormat$AsyncSqlExecThread.run(AsyncSqlOutputFormat.java:233)

方案:

[root@sdzn-cdh01 ~]# sqoop export --connect "jdbc:mysql://192.168.0.197:3306/otherdb?useUnicode=true&characterEncoding=gbk" -m 1 ?--username root --password root --table order_raw_info ?--export-dir '/user/hive/warehouse/zyb.db/order_raw_info/' --input-null-string "\\\\N" --input-null-non-string "\\\\N" --input-fields-terminated-by "\001" --in^Ct-lines-terminated-by "\\n"

在sql中如圖:

SQL語句:

create table ?order_raw_info (id int,create_time varchar(50),order_code varchar(50),link_name varchar(225),sex varchar(50),city varchar(50),tel varchar(50),certificate_no varchar(50),close_total_price double,popnum int,occ_date varchar(50),tourname varchar(50)) charset gbk ;

總結

以上是生活随笔為你收集整理的mysql 导出中文乱码_sqoop导出到mysql中文乱码问题总结、utf8、gbk的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 成人教育av | 精品日韩在线观看 | 国产精品果冻传媒潘 | 午夜肉伦伦| 日韩中文字幕在线观看 | 亚洲人成免费电影 | 淫品色影院 | 成年人免费网站在线观看 | 一级黄色视屏 | 寂寞人妻瑜伽被教练日 | 初尝黑人巨炮波多野结衣 | 亚洲精品一线二线三线 | 日韩精品1区 | 亚洲a免费| 天堂中文av在线 | 亚洲精品在线观看网站 | 日韩在线免费 | 51吃瓜网今日吃瓜 | 超碰影院在线 | 国产精品mm | 动漫美女被x | 欧美成人午夜视频 | 男人操女人网站 | 国产牛牛| 性感美女被爆操 | 成人精品一区二区三区在线 | av国产一区| 亚洲在线网站 | 精品国产一二三 | 另类小说一区二区 | 日本在线精品 | 免费无码毛片一区二三区 | 久久久999| 欧美性猛交7777777 | 久久精品午夜 | 一本色道综合久久欧美日韩精品 | 麻豆亚洲 | 国产成人一区在线观看 | 亚洲啊v | 青娱乐av在线 | 91九色在线播放 | 天天爱天天爽 | 黑人专干日本人xxxx | 国产伦精品一区二区三区88av | 亚洲天堂手机版 | 午夜av不卡 | 在线观看黄色片网站 | 黄色欧美网站 | 尤物av在线| 黄色录像a| 久久精品国产熟女亚洲AV麻豆 | 国产又好看的毛片 | 欧美综合成人 | 日韩女优中文字幕 | 色香欲综合网 | 国产精品视频大全 | 97人人爽人人爽人人爽人人爽 | 久久久久久久久久影院 | 黄色一级在线观看 | 黄色片www | 亚洲男女一区二区三区 | 夜夜嗨一区二区 | 一级免费视频 | 荒岛淫众女h文小说 | 波多野结衣亚洲天堂 | 亚洲精品成人在线 | 日韩精品高清在线 | 91原创国产 | 日韩激情av | 国产精品天堂 | 天天操夜夜操 | 精品无码人妻一区二区三区品 | 黄色图片小说 | 午夜做爰xxxⅹ性高湖视频美国 | 亚洲av成人精品日韩在线播放 | 无套内谢少妇毛片 | 国产精品高潮呻吟久久av黑人 | 国产成人久久77777精品 | 中文字字幕码一二三区 | 亚洲欧美成人一区二区三区 | 麻豆影视 | 日日色av | 在线你懂的视频 | 久久精品欧美一区 | 美女黄污网站 | 日韩精品成人无码专区免费 | 精品久久五月天 | 五月天婷婷综合 | 少妇视频一区二区三区 | 久久久久人妻一区精品色欧美 | 肉大榛一进一出免费视频 | 99免费精品 | 成人永久免费视频 | 百合sm惩罚室羞辱调教 | 日韩欧美一级视频 | 天天国产视频 | 欧美日韩激情在线一区二区三区 | 麻豆黄色片 | 无码国产精品96久久久久 |