mysql資料匯出

2021-09-01 13:51:12 字數 1828 閱讀 9297

遇到了大批量匯入匯出資料的時候真的比較麻煩,動則幾g的資料,操作起來也是比較慢的,而且如果稍有不慎,還要重寫處理,最簡單的方法也是效率最低 的方法就是使用php寫匯入匯出資料程式,用shell來跑php,可是大家一直忽略了mysqldump和mysql的into outfile與load data,如果這幾個命令使用靈活了,對於資料庫匯入匯出以及備份是很方便的。下面簡單講解一下,高手飄過,因為對於資料庫操作我也是小白。

使用mysqldump 和 source匯入匯出備份資料

如果要匯出整個資料庫 或者某乙個資料庫的乙個表,並且保持資料庫中表的名字不變,再次匯入到另外乙個資料庫的時候,可以使用mysqldump和source的方法。 mysqldump的具體使用引數可以使用mysqldump --help來檢視,這裡我簡單說下我常用的幾種引數。

1、mysqldump匯出整個表的資料,包括建表資訊,這也是最基礎的用法

mysqldump -uusername -ppassword databasename tablename > /home/db/db_bak2012

其中-u -p 和mysql的引數是一樣的,分別代表了使用者名稱和密碼,後面跟著是資料庫名和表明,>之後的是要匯出的路徑。

上面的匯出資料要匯入資料庫的時候可以進入mysql,然後使用下面的命令來實現

source /home/db/db_bak2012

ps:這種方法是匯出整個表資料,並且帶著建表資訊,假如匯入的資料庫有同名的表,會被替換

2、使用mysqldump匯出固定條件的資料庫

mysqldump有乙個引數where可以設定匯出固定條件的資料庫,where有個簡寫就是w,前者使用方法是–where後者是-w

例如,我要匯出名字為data0資料庫table0中status為1的記錄,可以使用下面的命令

mysqldump -uusername -ppassword data0 table0 -wstatus=1 > /home/db/db_bak2012

3、前兩種方法匯出的資料都有建表資料,如果匯出的資料只是追加,那麼使用mysqldump的兩個引數–no-create-info和–no-create-db,也就是下面的例子:

mysqldump -uusername -ppassword databasename tablename --no-create-db --no-create-info > /home/db/db_bak2012

使用into outfile 和 load data infile匯入匯出備份資料

如果要匯出乙個表中的部分字段或者部分符合條件的記錄,需要用到了mysql的into outfile 和 load data infile。

例如下面的mysql命令是把select的mytable表中的資料匯出到/home/db_bak2012檔案。

select * from mytable where status!=0 and name!='' into outfile '/home/db_bak2012' fields terminated by '|' enclosed by '"' lines terminated by '\r\n' ;

假如要匯入剛才備份的資料,可以使用load file方法,例如下面的mysql命令,把匯出的資料匯入了mytable_bak的表中:

load data infile  '/home/db_bak2012' into table mytable_bak fields terminated by '|' enclosed by '"' lines terminated by '\r\n' ;

這種方法的好處是,匯出的資料可以自己規定格式,並且匯出的是純資料,不存在建表資訊,你可以直接匯入另外乙個同資料庫的不同表中,相對於mysqldump比較靈活機動。

mysql 匯出資料

方法一 select.into outfile mysql select from mytbl into outfile tmp mytbl.txt 檢視mytbl.txt中內容如下 mysql system cat tmp mytbl.txt1 name1 2 name2 3 n 匯出的檔案中資料...

MySQL資料匯出

方法一 select.into outfile mysql select from mytbl into outfile tmp mytbl.txt query ok,3 rows affected 0.00 sec 檢視mytbl.txt中內容如下 mysql system cat tmp myt...

MySql資料匯出

mysql use caida 選擇要操作的資料庫 mysql select ip,node,physical cpu,cpu cores,processor,cpumodel,throughtput,use processor,use memory,use disk from three open...