mysql数据导出导入

1. 从mysql查询出数据导入 txt 文件

mysql -h 10.3.20.251 -u addata_r -P 3417 -pARreBOEhw9MijIEN_eP6BYKOxkTikUnl ad_data -e "select id, advertiser_id,date,cost,0 as cash_cost, 0 as reward_cost, 0 as return_goods_cost, income,balance, create_time, ad_count, 'show',click,deal_base,'grant',compensation,frozen,transfer_out,transfer_in,income_all, DATE_FORMAT(date,'%Y%m%d') as 'datetime' from daily_accounting_new where date>='2017-11-27' and date<='2018-03-12' " > /home/chenxiaolong.rd/repos/test/daily_accounting_new.txt

2.    将第一步导出的文件数据导入mysql

     mysqlimport -h 101.3.20.198 -u aad_plat_w -P 3884 -ptest_pwd --local ad_plat /home/chenxiaolong.rd/repos/test/daily_accounting_new.txt

    这适用txt文件里的字段和被导入库的字段一一对应的情况,如果不对应,可以试用类似如下命令

 mysqlimport -h 127.0.0-u root -P -p8731787


3.   如果是从 hive  导数据到 mysql,则将sql 语句写入到文件,然后命令行执行 hive -f hive.sql > data.txt ,然后和第二步相同


注意⚠️:导出的文件名字需要和被导入的表名字相同,如daily_accounting_new.log,后缀没关系(我也不知道为什么,命令中未指定表名)


以上命令是增量导入,如果不改动 txt 文件,两次执行相同的导入命令,mysql库里数据不变,如果改动了txt数据,则mysql会新增改变了的数据,相同的数据不会改变


猜你喜欢

转载自blog.51cto.com/chenxiaolong/2154180
今日推荐