免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 1573 | 回复: 4
打印 上一主题 下一主题

[其他] sheel解析日志保存mysql数据库中乱码问题!!! [复制链接]

论坛徽章:
3
程序设计版块每日发帖之星
日期:2016-02-27 06:20:00程序设计版块每日发帖之星
日期:2016-03-03 06:20:00数据库技术版块每日发帖之星
日期:2016-05-06 06:20:00
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2016-02-23 10:25 |只看该作者 |倒序浏览
大家好,sheel解析的日志,在Xsheel中执行,ECHO打印出来是中文,保存到阿里云的mysql数据库中,是乱码,还请大家帮忙看下,非常感谢!
Sheel代码   :WT.cg_page表示“车辆信息”

#!/bin/sh
a=9x2w_adc_02_15_2016
HOSTNAME="rdsydasdfsa97a.mysql.rds.aliyuncs.com"
PORT="3306"
USERNAME="username"
PASSWORD="mima"
DBNAME="test"
TABLENAME="tabletest"

while read c1 c2 c3 c4 c5 c6 c7 c8 c9
do

cg_n=$(echo $c8 | iconv -f gbk -t utf8 |grep -oP '(?<=WT.cg_page=)[^&]*')

cg_s=$(echo $c8|grep -oP '(?<=WT.cg_page=)[^&]*')

cg_page=$(echo $c8 | iconv -f gb2312 -t utf8 |grep -oP '(?<=WT.cg_page=)[^&]*')

cg_onclick=$(echo $c8 | iconv -f gb2312 -t gbk |grep -oP '(?<=WT.cg_onclick=)[^&]*')

insert_sql="insert into ${TABLENAME}(cg_n,cg_s,cg_page,cg_onclick,createdate)
values('"$cg_n"','"$cg_s"','"$cg_page"','"$cg_onclick"',now())"

echo  "sql======" $insert_sql
mysql -h${HOSTNAME} -P${PORT} -u${USERNAME} -p${PASSWORD} ${DBNAME} -e  "${insert_sql}"

done <$a


MYSQL字符集:
xuhao        Variable_name                Value
1        character_set_client                utf8
2        character_set_connection        utf8
3        character_set_database        utf8
4        character_set_filesystem        binary
5        character_set_results                utf8
6        character_set_server                utf8
7        character_set_system                utf8

Xshell 字符集:
[root@iZ23f125zkuZ /]# echo $LANG
en_US.UTF-8

执行sheel,控制台echo打印出 WT.cg_page= 车辆信息,但插入到阿里云MYSQL中,显示的数据格式为:
è&frac12;&brvbar;è&frac34;†&auml;&iquest;&iexcl;&aelig;&macr;        &sup3;&micro;&Aacute;&frac34;&ETH;&Aring;&Iuml;&cent;        è&frac12;&brvbar;è&frac34;†&auml;&iquest;&iexcl;&aelig;&macr;
&aring;Ÿ&ordm;&aelig;œ&not;&auml;&iquest;&iexcl;&aelig;&macr;        &raquo;ù±&frac34;&ETH;&Aring;&Iuml;&cent;        &aring;Ÿ&ordm;&aelig;œ&not;&auml;&iquest;&iexcl;&aelig;&macr;

还请大家帮忙查看下,多谢!


论坛徽章:
1
程序设计版块每日发帖之星
日期:2015-12-17 06:20:00
2 [报告]
发表于 2016-02-23 10:51 |只看该作者
mysql --default-character-set=utf8  -h${HOSTNAME} -P${PORT} -u${USERNAME} -p${PASSWORD} ${DBNAME} -e  "${insert_sql}"  试下

论坛徽章:
25
程序设计版块每日发帖之星
日期:2016-05-03 06:20:0015-16赛季CBA联赛之八一
日期:2018-07-05 10:34:09黑曼巴
日期:2018-07-06 15:19:5015-16赛季CBA联赛之佛山
日期:2018-08-03 13:19:3315-16赛季CBA联赛之山西
日期:2018-08-07 19:46:2315-16赛季CBA联赛之广夏
日期:2018-08-08 19:31:5015-16赛季CBA联赛之青岛
日期:2018-11-26 15:21:5015-16赛季CBA联赛之上海
日期:2018-12-11 09:45:3219周年集字徽章-年
日期:2020-04-18 23:54:5215-16赛季CBA联赛之深圳
日期:2020-04-19 21:40:19黑曼巴
日期:2022-04-03 17:55:1315-16赛季CBA联赛之八一
日期:2018-07-03 16:56:46
3 [报告]
发表于 2016-02-23 11:21 |只看该作者
由于显示中文乱码,你可以用gbk字符集试试:

mysql -h${HOSTNAME} -P${PORT} -u${USERNAME} -p${PASSWORD} ${DBNAME}  --default-character-set=gbk -e  "${insert_sql}"

论坛徽章:
3
程序设计版块每日发帖之星
日期:2016-02-27 06:20:00程序设计版块每日发帖之星
日期:2016-03-03 06:20:00数据库技术版块每日发帖之星
日期:2016-05-06 06:20:00
4 [报告]
发表于 2016-02-23 11:34 |只看该作者
多谢回复 2# vagrant_1220


   

论坛徽章:
3
程序设计版块每日发帖之星
日期:2016-02-27 06:20:00程序设计版块每日发帖之星
日期:2016-03-03 06:20:00数据库技术版块每日发帖之星
日期:2016-05-06 06:20:00
5 [报告]
发表于 2016-02-23 11:35 |只看该作者
多谢回复 3# wh7211


   
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP