mysqldump -uusername -ppassword database [table] [-w "id<100"][-n][-t][-d][--skip-add-drop-table][--default-character-set=xxx] > out.sqlmysql
[-w "id<100"]:-w指定查詢條件,這須要指定[table]sql
-n:不導出create database語句spa
- t:不導出create table語句.net
-d:只導出結構,不到出數據(沒有Insert語句)xml
--skip-add-drop-table:默認導出的sql是帶有drop table的,此選項能夠去掉drop tableip
--default-character-set:設置字符集,默認爲utf8get
mysqldump -uroot -proot demo contacts --tab="d:/" --fields-terminated-by="," --fields-enclosed-by="'"table
--tab:讀取--tab="xxx" xxx 目錄下的sql文件(select * from tablename where ...) 並將結果寫入和xxx同目錄下的txt文件。sed
--fields-terminated-by:字段分隔符file
--fields-enclosed-by:字段包裹符
mysqldump -uroot -proot demo contacts -t -X > d:/demo.xml
-X:導出xml格式數據
MySQL -uroot -proot database < dump.sql > data.csv
默認導出的csv是以tab符分割字段的,若是要導出其餘符號分割的,能夠在dump.sql裏面寫select concat(field1, '#' , field2, '#' ......) from tab...
mysql db_name -uroot -proot -e"select * from contacts" > d:/data.csv
導出以tab分隔符分割的csv
select * from contacts into outfile "d:/contacts.csv" fields terminated by "," enclosed by "'"
直接執行sql並寫入外部文件,有的時候這種方式行不通。