IT技術互動交流平台

极速快乐十分官网

發(fa)布日期︰2020-02-26 14:39:07

導出mysql數據(ju)庫(ku)教程

  以下實例(li)中咱們將數據(ju)表 runoob_tbl 數據(ju)導出到(dao) /tmp/runoob.txt 文(wen)件中:

  mysql> SELECT * FROM runoob_tbl

  -> INTO OUTFILE '/tmp/runoob.txt';

  你能夠經過指(zhi)令選項來設置(zhi)數據(ju)輸出的指(zhi)定(ding)格局,以下實例(li)為導出 CSV 格局︰

  mysql> SELECT * FROM passwd INTO OUTFILE '/tmp/runoob.txt'

  -> FIELDS TERMINATED BY ',' ENCLOSED BY '"'

  -> LINES TERMINATED BY '\r\n';

  鄙人面的比(bi)如中,生成一個文(wen)件,各值用(yong)逗號離(li)隔。這種zhi)窬幟芄槐恍磯喑絛蛟擻yong)。

  SELECT a,b,a+b INTO OUTFILE '/tmp/result.text'

  FIELDS TERMINATED BY ',' OPTIONALLY ENCLOSED BY '"'

  LINES TERMINATED BY '\n'

  FROM test_table;

  SELECT ... INTO OUTFILE 句(ju)子(zi)有以下特(te)點:

  LOAD DATA INFILE是SELECT ... INTO OUTFILE的逆操作,SELECT句(ju)法(fa)。為了si) 桓鍪ju)庫(ku)的數據(ju)寫入一個文(wen)件,運用(yong)SELECT ... INTO OUTFILE,為了si) wen)件讀回數據(ju)庫(ku),運用(yong)LOAD DATA INFILE。

  SELECT...INTO OUTFILE 'file_name'方式的SELECT能夠把被挑選的行寫入一個文(wen)件中。該文(wen)件被創立(li)到(dao)服務器主機上(shang),因而(er)您有必要具有FILE權限,才干運用(yong)此(ci)語法(fa)。

  輸出不能是一個已存在的文(wen)件。避免文(wen)件數據(ju)被篡改。

  你需求有一個登陸(lu)服務器的賬號來檢索文(wen)件。不然 SELECT ... INTO OUTFILE 不會起(qi)任何效(xiao)果(guo)。

  在UNIX中,該文(wen)件被創立(li)後是可讀的,權限由MySQL服務器所(suo)具有。這意味著,盡管你就能夠讀取該文(wen)件,但或許無法(fa)將其刪去(qu)。

  導出表作為原始數據(ju)

  mysqldump 是 mysql 用(yong)于轉存儲(chu)數據(ju)庫(ku)的實用(yong)程序。它(ta)首要發(fa)生一個 SQL 腳本(ben),其間包括從頭從頭創立(li)數據(ju)庫(ku)所(suo)必需的指(zhi)令 CREATE TABLE INSERT 等。

  運用(yong) mysqldump 導出數據(ju)需求運用(yong) --tab 選項來指(zhi)定(ding)導出文(wen)件指(zhi)定(ding)的目錄,該方針有必要是可寫的。

  以下實例(li)將數據(ju)表 runoob_tbl 導出到(dao) /tmp 目錄中︰

  $ mysqldump -u root -p --no-create-info \

  --tab=/tmp RUNOOB runoob_tbl

  password ******

  導出 SQL 格局的數據(ju)

  導出 SQL 格局的數據(ju)到(dao)指(zhi)定(ding)文(wen)件,如下所(suo)示︰

  $ mysqldump -u root -p RUNOOB runoob_tbl > dump.txt

  password ******

  以上(shang)指(zhi)令創立(li)的文(wen)件內容如下︰

  -- MySQL dump 8.23

  --

  -- Host: localhost Database: RUNOOB

  ---------------------------------------------------------

  -- Server version 3.23.58

  --

  -- Table structure for table `runoob_tbl`

  --

  CREATE TABLE runoob_tbl (

  runoob_id int(11) NOT NULL auto_increment,

  runoob_title varchar(100) NOT NULL default '',

  runoob_author varchar(40) NOT NULL default '',

  submission_date date default NULL,

  PRIMARY KEY (runoob_id),

  UNIQUE KEY AUTHOR_INDEX (runoob_author)

  ) TYPE=MyISAM;

  --

  -- Dumping data for table `runoob_tbl`

  --

  INSERT INTO runoob_tbl

  VALUES (1,'Learn PHP','John Poul','2020-02-26');

  INSERT INTO runoob_tbl

  VALUES (2,'Learn MySQL','Abdul S','2020-02-26');

  INSERT INTO runoob_tbl

  VALUES (3,'JAVA Tutorial','Sanjay','2020-02-26');

  假如你需求導出整個數據(ju)庫(ku)的數據(ju),能夠運用(yong)以下指(zhi)令︰

  $ mysqldump -u root -p RUNOOB > database_dump.txt

  password ******

  假如需求備份一切數據(ju)庫(ku),能夠運用(yong)以下指(zhi)令︰

  $ mysqldump -u root -p --all-databases > database_dump.txt

  password ******

  --all-databases 選項在 MySQL 3.23.12 及今後版別參加(jia)。

  該辦法(fa)可用(yong)于完成數據(ju)庫(ku)的備份戰略(lue)。

  將數據(ju)表及數據(ju)庫(ku)復制(zhi)至其他主機

  假如你需求將數據(ju)復制(zhi)至其他的 MySQL 服務器上(shang), 你能夠在 mysqldump 指(zhi)令中指(zhi)定(ding)數據(ju)庫(ku)名(ming)及數據(ju)表。

  在源主機上(shang)履行以下指(zhi)令,將數據(ju)備份至 dump.txt 文(wen)件中:

  $ mysqldump -u root -p database_name table_name > dump.txt

  password *****

  假如完好備份數據(ju)庫(ku),則無需運用(yong)特(te)定(ding)的表稱號。

  假如你需求將備份的數據(ju)庫(ku)導入到(dao)MySQL服務器中,能夠運用(yong)以下指(zhi)令,運用(yong)以下指(zhi)令你需求承(cheng)認數據(ju)庫(ku)現已創立(li)︰

  $ mysql -u root -p database_name < dump.txt

  password *****

  你也能夠運用(yong)以下指(zhi)令將導出的數據(ju)直(zhi)接導入到(dao)長(chang)途的服務器上(shang),但請(qing)保(bao)證(zheng)兩台服務器是相通的,是能夠彼此(ci)拜訪(fang)的︰

  $ mysqldump -u root -p database_name \

   mysql -h other-host.com database_name

  以上(shang)指(zhi)令中運用(yong)了管道來將導出的數據(ju)導入到(dao)指(zhi)定(ding)的長(chang)途主機上(shang)。

极速快乐十分官网

    • 极速快乐十分官网

    About IT165 - 廣告服務 - 隱(yin)私(si)聲明 - 版權申明 - 免責條款 - 網(wang)站(zhan)地圖 - 網(wang)友投稿 - 聯系方式
    本(ben)站(zhan)內容來自于互聯網(wang),僅供用(yong)于網(wang)絡技術學(xue)習,學(xue)習中請(qing)遵循相關法(fa)律法(fa)規
    极速快乐十分官网 | 下一页