本文章介紹了用mysql into outfile命令來導入指定表中指定數據的方法.
按條件導出mysql表的數據,代碼如下:
theyestoday=`date -d “-1 day” +%y%m%d` #前天日期
將查詢語句寫入sql文件.
linux中導出,代碼如下:
- echo “SELECT NULL, coder, clicknum, time FROM stat.yl_clicks WHERE time = unix_timestamp(‘$theyestoday2 00:00:00′) into outfile ‘/var/lib/mysql/stat/yl_clicks.sql’;” > cmd_yl_clicks.sql
window系統下導出,代碼如下:
- SELECT ITEM1_1,ID,ITEM2_1,ITEM11_1,ITEM9_1,ITEM7_1,ITEM8_1,ITEM4_1,ITEM4_2,ITEM6_1,ITEM6_2,ITEM5_1,ITEM5_2,ITEM5_3,ITEM5_4,ITEM5_5,ITEM5_6,ITEM5_7 FROM `ID_7_vote_insert` WHERE `VoteID`='7' order by ITEM1_1 asc into outfile '/tmp/test_new.txt' fields terminated by ',' enclosed by '"'; --Vevb.com
刪除上次生成的,代碼如下:
rm -rf /var/lib/mysql/stat/yl_clicks.sql
執行sql文件中的語句,代碼如下:
mysql -u用戶名 -p密碼 -hlocalhost < cmd_yl_clicks.sql
執行完成后將生成查下結果數據文件 yl_clicks.sql.
導入數據,導入數據并生成導入日志,記錄的導入的數據情況,如導入多少條記錄,代碼如下:
mysqlimport -u用戶名 -p密碼 -f -i stat “D:systemMySqlMySQL Server 5.0datastatyl_clicks.sql” >> Synchronization2.log
總結:字符串要處理好,不然容易出錯,使用select into outfile "filename"語句,前提必須擁有文件的權限.
比如,數據庫是mysql,代碼如下:
mysql> select * from user into outfile "a.txt";
上面就可以完成將表user從數據庫中卸到a.txt文件中,注意文件名要加單引號,那么a.txt文件就在mysql目錄下有一個 data目錄,它即是數據庫文件所放的地方,在這里就是mysql下面就會存在一個a.txt的文件,a.txt的內容就是:
localhost root *6F7418838FC8B9085D8B2E7484D471E34710F635 Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y 0 0 0 0
新聞熱點
疑難解答