MySQL到CSV几种方法是怎样的
MySQL到CSV几种方法是怎样的,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。
数据的导出导入,最常用的方法:
导出:
省资源型:
mysql -e "select * from aa" -s -s >aa.txt
导入:
load data infile '/tmp/user_type_2017-08-21.txt' into table aa fields terminated by '\t'
##耗资源型:
SETNAMES"utf8"
select * from ricci_var into outfile'/tmp/var.csv'fields terminated by ',' optionally enclosed by '"' lines terminated by '\n'
导入:
SETNAMES"utf8"
load data infile "/tmp/var.csv"into tablericci_varfields terminated by ',' optionally enclosed by '"' lines terminated by '\n'
在某些特殊的情况下,是无法这么操作的,如垃圾的RDS,就需要这么操作了:
导出:
usr/local/mysql/bin/mysql-h292.168.1.10-udlan-proot123test-e"SELECT*FROMmanufactor_user_infowheredate(create_time)<='2017-05-02'"-N-s|sed's/\t/","/g;s/^/"/;s/$/"/;s/\n//g'>/tmp/test.csv导入:SETNAMES"utf8"loaddatainfile'/tmp/test.csv'intotablemanufacturer_logfieldsterminatedby','optionallyenclosedby'"'linesterminatedby'\n'###具体的导出条件自己懂的。在导出的数据需要进行简单的清洗,有可能会碰到某某行的数据段数据错误或者定义错误这样的提示.Wrongdataorcolumndefinition.Row:69697,field:43.这样的提示主要是由于数据存在问题的需要清洗,从MYSQL导入infobright会这样提示,可以设置SET@BH_REJECT_FILE_PATH='/tmp/reject_file';SET@BH_ABORT_ON_COUNT=10;(自定定义错误条数)可以通过这个观察数据问题所在。再者就是导出的时候,有权限问题,如:ERROR1290(HY000):TheMySQLserverisrunningwiththe--secure-file-privoptionsoitcannotexecutethisstatement解决办法:1.设置安全目录:vi/etc/my.cnfsecure-file-priv=/home/自己的目录/2.有权限写入目录/home/自己的目录/(5.7的需要设置)
再办法是:
mysqldump 导成SQL文件
最后办法:
导出:mysql -udlan -proot123 --database=test --execute='SELECT a, b FROM aaa LIMIT 0, 10000 ' -X > file.csv
导入:
SETNAMES"utf8"
load xml infile '/tmp/file.csv' into table user_info1
看完上述内容,你们掌握MySQL到CSV几种方法是怎样的的方法了吗?如果还想学到更多技能或想了解更多相关内容,欢迎关注亿速云行业资讯频道,感谢各位的阅读!
声明:本站所有文章资源内容,如无特殊说明或标注,均为采集网络资源。如若本站内容侵犯了原著者的合法权益,可联系本站删除。