用SELECT... INTO OUTFILE語句導出MySQL數據的教程。本站提示廣大學習愛好者:(用SELECT... INTO OUTFILE語句導出MySQL數據的教程)文章只能為提供參考,不一定能成為您想要的結果。以下是用SELECT... INTO OUTFILE語句導出MySQL數據的教程正文
表數據導出到一個文本文件最簡略的辦法是應用SELECT... INTO OUTFILE語句的查詢成果直接導出到一個文件在辦事器主機上。
導出數據的SELECT...INTO OUTFILE聲明:
這句話的語法聯合了慣例的SELECT INTO OUTFILE文件名的末尾。默許的輸入格局是雷同的LOAD DATA,所以上面的語句導出tutorials_tbl的表制表符分隔的,換行開頭的文件到/tmp/tutorials.txt:
mysql> SELECT * FROM tutorials_tbl -> INTO OUTFILE '/tmp/tutorials.txt';
也能夠更改輸入格局,應用選項來指導若何援用和分隔列和記載。 CRLF終止線要導出tutorial_tbl的CSV格局的表格,應用如許的語句:
mysql> SELECT * FROM passwd INTO OUTFILE '/tmp/tutorials.txt' -> FIELDS TERMINATED BY ',' ENCLOSED BY '"' -> LINES TERMINATED BY '\r\n';
SELECT ... INTO OUTFILE具有以部屬性:
作為原始數據的導出表:
應用mysqldump法式復制或備份表和數據庫。它可以寫表輸入的原始數據文件或為一組的INSERT語句從新創立該表中的記載。
轉儲一個表,必需指定一個數據文件 - 選項卡上的選項,表現想要的MySQL辦事器寫入文件地點的目次。
應用mysqldump法式復制或備份表和數據庫。它可以寫表輸入的原始數據文件,或為一組的INSERT語句從新創立該表中的記載。
轉儲一個表,必需指定一個數據文件 - 選項卡上的選項,表現想要的MySQL辦事器寫入文件地點的目次。
$ mysqldump -u root -p --no-create-info \ --tab=/tmp TUTORIALS tutorials_tbl password ******
在SQL格局導出表的內容或界說:
一個表中的SQL格局導出到一個文件,應用如許的敕令:
$ mysqldump -u root -p TUTORIALS tutorials_tbl > dump.txt password ******
這將創立文件的內容以下:
-- MySQL dump 8.23 -- -- Host: localhost Database: TUTORIALS --------------------------------------------------------- -- Server version 3.23.58 -- -- Table structure for table `tutorials_tbl` -- CREATE TABLE tutorials_tbl ( tutorial_id int(11) NOT NULL auto_increment, tutorial_title varchar(100) NOT NULL default '', tutorial_author varchar(40) NOT NULL default '', submission_date date default NULL, PRIMARY KEY (tutorial_id), UNIQUE KEY AUTHOR_INDEX (tutorial_author) ) TYPE=InnoDB; -- -- Dumping data for table `tutorials_tbl` -- INSERT INTO tutorials_tbl VALUES (1,'Learn PHP','John Poul','2007-05-24'); INSERT INTO tutorials_tbl VALUES (2,'Learn MySQL','Abdul S','2007-05-24'); INSERT INTO tutorials_tbl VALUES (3,'JAVA Tutorial','Sanjay','2007-05-06');
要轉儲多個表,他們的名字一切的數據庫稱號參數。要轉儲全部數據庫,不指定任何表後的數據庫,以下所示:
$ mysqldump -u root -p TUTORIALS > database_dump.txt password ******
一切可用的數據庫備份主機上應用以下敕令:
$ mysqldump -u root -p --all-databases > database_dump.txt password ******
在SQL格局導出表的內容或界說:
這些辦法可用於完成數據庫的備份戰略。
表或數據庫復制到另外一台主機:
假如要復制的表或數據庫從一個MySQL辦事器,然後應用mysqldump數據庫名和表名。
在源主機上運轉以下敕令。這將轉儲完全的數據庫到dump.txt文件:
$ mysqldump -u root -p database_name table_name > dump.txt password *****
復制完全的數據庫,而不應用一個特定的表稱號,如下面所說明。
如今,FTP dump.txt文件在另外一台主機上,應用上面的敕令。在運轉此敕令之前,請確保已創立目的辦事器上的數據庫稱號。
$ mysql -u root -p database_name < dump.txt password *****
另外一種辦法,而無需應用一個中央文件來完成,mysqldump輸入直接經由過程收集發送到長途的MySQL辦事器。假如可以銜接到兩台辦事器的cookbook 數據庫地點的主機上,應用以下敕令:
$ mysqldump -u root -p database_name \ states | mysql -h other-host.com database_name
敕令mysqldump的一半銜接到當地辦事器,並寫入轉儲輸入管道。 MySQL的一半的敕令銜接到長途MySQL辦事器otherhost.com。它讀取輸出管和其他host.com辦事器發送的每一個語句。