熱點推薦:
您现在的位置: 電腦知識網 >> 編程 >> MySQL >> 正文

MySQL數據的導出和導入工具mysqldump

2013-11-23 20:55:19  來源: MySQL 

  MySQL數據的導出和導入工具:mysqldump
  導出要用到MySQL的mysqldump工具基本用法是
  
  shell> mysqldump [OPTIONS] database [tables]
  
  如果你不給定任何表整個數據庫將被導出
  
  通過執行mysqldump help你能得到你mysqldump的版本支持的選項表
  
  注意如果你運行mysqldump沒有quick或opt選項mysqldump將在導出結果前裝載整個結果集到內存中如果你正在導出一個大的數據庫這將可能是一個問題
  
  mysqldump支持下列選項
  
  addlocks
  在每個表導出之前增加LOCK TABLES並且之後UNLOCK TABLE(為了使得更快地插入到MySQL)
  adddroptable
  在每個create語句之前增加一個drop table
  allowkeywords
  允許創建是關鍵詞的列名字這由表名前綴於每個列名做到
  c completeinsert
  使用完整的insert語句(用列名字)
  C compress
  如果客戶和服務器均支持壓縮壓縮兩者間所有的信息
  delayed
  用INSERT DELAYED命令插入行
  e extendedinsert
  使用全新多行INSERT語法(給出更緊縮並且更快的插入語句)
  # debug[=option_string]
  跟蹤程序的使用(為了調試)
  help
  顯示一條幫助消息並且退出
  fieldsterminatedby=
   
  fieldsenclosedby=
   
  fieldsoptionallyenclosedby=
   
  fieldsescapedby=
   
  fieldsterminatedby=
  這些選擇與T選擇一起使用並且有相應的LOAD DATA INFILE子句相同的含義
  LOAD DATA INFILE語法
  F flushlogs
  在開始導出前洗掉在MySQL服務器中的日志文件
  f force
  即使我們在一個表導出期間得到一個SQL錯誤繼續
  h host=
  從命名的主機上的MySQL服務器導出數據缺省主機是localhost
  l locktables
  為開始導出鎖定所有表
  t nocreateinfo
  不寫入表創建信息(CREATE TABLE語句)
  d nodata
  不寫入表的任何行信息如果你只想得到一個表的結構的導出這是很有用的!
  opt
  同quick adddroptable addlocks extendedinsert locktables
  應該給你為讀入一個MySQL服務器的盡可能最快的導出
  pyour_pass password[=your_pass]
  與服務器連接時使用的口令如果你不指定=your_pass部分mysqldump需要來自終端的口令
  P port_num port=port_num
  與一台主機連接時使用的TCP/IP端口號(這用於連接到localhost以外的主機因為它使用 Unix套接字
  q quick
  不緩沖查詢直接導出至stdout使用mysql_use_result()做它
  S /path/to/socket socket=/path/to/socket
  與localhost連接時(它是缺省主機)使用的套接字文件
  T tab=pathtosomedirectory
  對於每個給定的表創建一個table_namesql文件它包含SQL CREATE 命令和一個table_nametxt文件它包含數據 注意這只有在mysqldump運行在mysqld守護進程運行的同一台機器上的時候才工作txt文件的格式根據fieldsxxx和linesxxx選項來定
  u user_name user=user_name
  與服務器連接時MySQL使用的用戶名缺省值是你的Unix登錄名
  O var=option setvariable var=option設置一個變量的值可能的變量被列在下面
  v verbose
  冗長模式打印出程序所做的更多的信息
  V version
  打印版本信息並且退出
  w where=wherecondition
  只導出被選擇了的記錄注意引號是強制的!
  where=user=jimf wuserid> wuserid backupfilesql
  
  但是它對用來自於一個數據庫的信息充實另外一個MySQL數據庫也是有用的
  
  mysqldump opt database | mysql host=remotehost C database
  
  由於mysqldump導出的是完整的SQL語句所以用mysql客戶程序很容易就能把數據導入了
  
  shell> mysqladmin create target_db_name
  shell> mysql target_db_name mysql 庫名 < 文件名
  

From:http://tw.wingwit.com/Article/program/MySQL/201311/29302.html
  • 上一篇文章:

  • 下一篇文章:
  • 推薦文章
    Copyright © 2005-2013 電腦知識網 Computer Knowledge   All rights reserved.