這個時候mysqldump可能就不大好使了,使用下面的方法則可以解決這個問題。
方法一、insert和select結合使用
1、新建一個表,比如new-table,包含所要導出的字段的名稱,比如a,b,c
2、使用insert into new-table (a,b,c) select a,b,c from old-table;
3、剩下的步驟就是導出這個新的表,然後進行文本的處理
方法二、使用MySQL的SELECT INTO OUTFILE 備份語句(推薦)
在下面的例子中,生成一個文件,各值用逗號隔開。這種格式可以被許多程序使用。
復制代碼 代碼如下:
SELECT a,b,a+b INTO OUTFILE ‘/tmp/result.text'
FIELDS TERMINATED BY ‘,' OPTIONALLY ENCLOSED BY ‘"'
LINES TERMINATED BY ‘\n'
FROM test_table;
詳細見select的使用方法
復制代碼 代碼如下:select subject into outlifile ‘/tmp/xiaoruizi.text' fields terminated by ‘\t' optionally enclosed by ‘"' lines terminated by ‘\n' from pw_blog;
方法三、使用mysqldump
很奇妙的是我發現了mysqldump其實有個很好用的參數“—w”
幫助文檔上說明:
復制代碼 代碼如下:
-w|–where=
dump only selected records; QUOTES mandatory!
那麼是不是可以利用這個參數來導出某些值呢?比如我只要導出id大於2312387的某些數據:
復制代碼 代碼如下:mysqldump -u root -p bbscs6 BBSCS_USERINFO –where "ID>2312387" > BBSCS_USERINFO-par.sql