<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    posts - 495,comments - 227,trackbacks - 0

    還原一個(gè)數(shù)據(jù)庫(kù):mysql -h localhost -u root -p123456 www

    備份一個(gè)數(shù)據(jù)庫(kù):mysqldump -h localhost -u root -p123456 www > d:\www2008-2-26.sql

    其中WWW為數(shù)據(jù)庫(kù)名

    //以下是在程序中進(jìn)行測(cè)試

    //$command = “mysqldump –opt -h $dbhost -u $dbuser -p $dbpass $dbname | gzip > $backupFile”;
    $command=”mysqldump -h localhost -u root -p123456 guestbook > guestbook2-29.sql”;
    system($command);
    echo “success”;

    ************************************************

    備份MySQL數(shù)據(jù)庫(kù)的命令

    mysqldump -hhostname -uusername -ppassword databasename > backupfile.sql
    備份MySQL數(shù)據(jù)庫(kù)為帶刪除表的格式
    備份MySQL數(shù)據(jù)庫(kù)為帶刪除表的格式,能夠讓該備份覆蓋已有數(shù)據(jù)庫(kù)而不需要手動(dòng)刪除原有數(shù)據(jù)庫(kù)。

    mysqldump –add-drop-table -uusername -ppassword databasename > backupfile.sql
    直接將MySQL數(shù)據(jù)庫(kù)壓縮備份

    mysqldump -hhostname -uusername -ppassword databasename | gzip > backupfile.sql.gz
    備份MySQL數(shù)據(jù)庫(kù)某個(gè)(些)表

    mysqldump -hhostname -uusername -ppassword databasename specific_table1 specific_table2 > backupfile.sql
    同時(shí)備份多個(gè)MySQL數(shù)據(jù)庫(kù)

    mysqldump -hhostname -uusername -ppassword –databases databasename1 databasename2 databasename3 > multibackupfile.sql
    僅僅備份數(shù)據(jù)庫(kù)結(jié)構(gòu)

    mysqldump –no-data –databases databasename1 databasename2 databasename3 > structurebackupfile.sql
    備份服務(wù)器上所有數(shù)據(jù)庫(kù)

    mysqldump –all-databases > allbackupfile.sql
    還原MySQL數(shù)據(jù)庫(kù)的命令

    mysql -hhostname -uusername -ppassword databasename < backupfile.sql
    還原壓縮的MySQL數(shù)據(jù)庫(kù)

    gunzip < backupfile.sql.gz | mysql -uusername -ppassword databasename
    將數(shù)據(jù)庫(kù)轉(zhuǎn)移到新服務(wù)器

    mysqldump -uusername -ppassword databasename | mysql –host=*.*.*.* -C databasename

    幾個(gè)常用用例:
    1.導(dǎo)出整個(gè)數(shù)據(jù)庫(kù)
    mysqldump -u 用戶(hù)名 -p 數(shù)據(jù)庫(kù)名 > 導(dǎo)出的文件名
    mysqldump -u root -p dataname >dataname.sql
    這個(gè)時(shí)候會(huì)提示要你輸入root用戶(hù)名的密碼,輸入密碼后dataname數(shù)據(jù)庫(kù)就成功備份在mysql/bin/目錄中.

    2.導(dǎo)出一個(gè)表
    mysqldump -u 用戶(hù)名 -p 數(shù)據(jù)庫(kù)名 表名> 導(dǎo)出的文件名
    mysqldump -u root -p dataname users> dataname_users.sql

    3.導(dǎo)出一個(gè)數(shù)據(jù)庫(kù)結(jié)構(gòu)
    mysqldump -u wcnc -p -d –add-drop-table smgp_apps_wcnc >d:\wcnc_db.sql
    -d 沒(méi)有數(shù)據(jù) –add-drop-table 在每個(gè)create語(yǔ)句之前增加一個(gè)drop table

    4.導(dǎo)入數(shù)據(jù)庫(kù)
    常用source 命令
    進(jìn)入mysql數(shù)據(jù)庫(kù)控制臺(tái),
    如mysql -u root -p

    mysql>use 數(shù)據(jù)庫(kù)

    然后使用source命令,后面參數(shù)為腳本文件(如這里用到的.sql)
    mysql>source d:\wcnc_db.sql

    mysqldump支持下列選項(xiàng):
    –add-locks
    在每個(gè)表導(dǎo)出之前增加LOCK TABLES并且之后UNLOCK TABLE。(為了使得更快地插入到MySQL)。

    –add-drop-table
    在每個(gè)create語(yǔ)句之前增加一個(gè)drop table。

    –allow-keywords
    允許創(chuàng)建是關(guān)鍵詞的列名字。這由表名前綴于每個(gè)列名做到。

    -c, –complete-insert
    使用完整的insert語(yǔ)句(用列名字)。

    -C, –compress
    如果客戶(hù)和服務(wù)器均支持壓縮,壓縮兩者間所有的信息。

    –delayed
    用INSERT DELAYED命令插入行。

    -e, –extended-insert
    使用全新多行INSERT語(yǔ)法。(給出更緊縮并且更快的插入語(yǔ)句)

    -#, –debug[=option_string]
    跟蹤程序的使用(為了調(diào)試)。

    –help
    顯示一條幫助消息并且退出。

    –fields-terminated-by=…

    –fields-enclosed-by=…

    –fields-optionally-enclosed-by=…

    –fields-escaped-by=…

    –fields-terminated-by=…

    這些選擇與-T選擇一起使用,并且有相應(yīng)的LOAD DATA INFILE子句相同的含義。
    LOAD DATA INFILE語(yǔ)法。

    -F, –flush-logs
    在開(kāi)始導(dǎo)出前,洗掉在MySQL服務(wù)器中的日志文件。

    -f, –force,
    即使我們?cè)谝粋€(gè)表導(dǎo)出期間得到一個(gè)SQL錯(cuò)誤,繼續(xù)。

    -h, –host=..
    從命名的主機(jī)上的MySQL服務(wù)器導(dǎo)出數(shù)據(jù)。缺省主機(jī)是localhost。

    -l, –lock-tables.
    為開(kāi)始導(dǎo)出鎖定所有表。

    -t, –no-create-info
    不寫(xiě)入表創(chuàng)建信息(CREATE TABLE語(yǔ)句)

    -d, –no-data
    不寫(xiě)入表的任何行信息。如果你只想得到一個(gè)表的結(jié)構(gòu)的導(dǎo)出,這是很有用的!

    –opt
    同–quick –add-drop-table –add-locks –extended-insert –lock-tables。
    應(yīng)該給你為讀入一個(gè)MySQL服務(wù)器的盡可能最快的導(dǎo)出。

    -pyour_pass, –password[=your_pass]
    與服務(wù)器連接時(shí)使用的口令。如果你不指定“=your_pass”部分,mysqldump需要來(lái)自終端的口令。

    -P port_num, –port=port_num
    與一臺(tái)主機(jī)連接時(shí)使用的TCP/IP端口號(hào)。(這用于連接到localhost以外的主機(jī),因?yàn)樗褂?Unix套接字。)

    -q, –quick
    不緩沖查詢(xún),直接導(dǎo)出至stdout;使用mysql_use_result()做它。

    -S /path/to/socket, –socket=/path/to/socket
    與localhost連接時(shí)(它是缺省主機(jī))使用的套接字文件。

    -T, –tab=path-to-some-directory
    對(duì)于每個(gè)給定的表,創(chuàng)建一個(gè)table_name.sql文件,它包含SQL CREATE 命令,和一個(gè)table_name.txt文件,它包含數(shù)據(jù)。注意:這只有在mysqldump運(yùn)行在mysqld守護(hù)進(jìn)程運(yùn)行的同一臺(tái)機(jī)器上的時(shí)候才工 作。.txt文件的格式根據(jù)–fields-xxx和 –lines–xxx選項(xiàng)來(lái)定。

    -u user_name, –user=user_name
    與服務(wù)器連接時(shí),MySQL使用的用戶(hù)名。缺省值是你的Unix登錄名。

    -O var=option, –set-variable var=option
    設(shè)置一個(gè)變量的值。可能的變量被列在下面。

    -v, –verbose
    冗長(zhǎng)模式。打印出程序所做的更多的信息。

    -V, –version
    打印版本信息并且退出。

    -w, –where=’where-condition’
    只導(dǎo)出被選擇了的記錄;注意引號(hào)是強(qiáng)制的!
    “–where=user=’jimf’” “-wuserid>1″ “-wuserid<1″

    最常見(jiàn)的mysqldump使用可能制作整個(gè)數(shù)據(jù)庫(kù)的一個(gè)備份:
    mysqldump –opt database > backup-file.sql

    但是它對(duì)用來(lái)自于一個(gè)數(shù)據(jù)庫(kù)的信息充實(shí)另外一個(gè)MySQL數(shù)據(jù)庫(kù)也是有用的:
    mysqldump –opt database | mysql –host=remote-host -C database
    由于mysqldump導(dǎo)出的是完整的SQL語(yǔ)句,所以用mysql客戶(hù)程序很容易就能把數(shù)據(jù)導(dǎo)入了:

    shell> mysqladmin create target_db_name
    shell> mysql target_db_name < backup-file.sql
    就是
    shell> mysql 庫(kù)名 < 文件名



    最近這兩天,因?yàn)橹霸O(shè)計(jì)數(shù)據(jù)庫(kù)的 時(shí)候沒(méi)有注意到有的表是要建在另外一臺(tái)服務(wù)器上面的(測(cè)試服務(wù)器數(shù)據(jù)庫(kù)是分布式的,不同的表可能在不同服務(wù)器上)。現(xiàn)在里面已經(jīng)有很多測(cè)試數(shù)據(jù)了,又不想 重新添加一遍。所以就想能不能備份出來(lái),再恢復(fù)到目標(biāo)機(jī)器上去。然后昨天的話就折騰了一下,請(qǐng)教同事,上網(wǎng)查資料。這里把用法記錄一下。
    mysqldump命令:MySQL數(shù)據(jù)庫(kù)備份還原
     
    一、常用操作:
    備份整個(gè)數(shù)據(jù)庫(kù)
    格式:
    mysqldump -h主機(jī)名  -P端口 -u用戶(hù)名 -p密碼 (–database) 數(shù)據(jù)庫(kù)名 > 文件名.sql
    mysqldump -h{hostname} -P{port} -u{username} -p{password} {databasename} > {backupfile.sql}
    例如:
     
    代碼如下:
    1
    mysqldump -hlocalhost -P3306 -uzhuchao -p123456 db_test > backfile1.sql
    備份MySQL數(shù)據(jù)庫(kù)為帶刪除表的格式
    備份MySQL數(shù)據(jù)庫(kù)為帶刪除表的格式,能夠讓該備份覆蓋已有數(shù)據(jù)庫(kù)而不需要手動(dòng)刪除原有數(shù)據(jù)庫(kù)。
    格式:mysqldump -–add-drop-table -u{username} -p{password} {databasename} > {backfile.sql}
    例如:
     
    代碼如下:
    1
    mysqldump -–add-drop-table –uzhuchao -p123456 db_test > backfile2.sql
    直接將MySQL數(shù)據(jù)庫(kù)壓縮備份
    格式:mysqldump -h{hostname} -u{username} -p{password} {databasename} | gzip > {backfile.sql.gz}
    例如:
     
    代碼如下:
    1
    mysqldump –hlocalhost –uzhuchao –p123456 db_test1 | gzip > backfile3.sql.gz
    備份MySQL數(shù)據(jù)庫(kù)某個(gè)(些)表
    格式:mysqldump -h主機(jī)名  -P端口 -u用戶(hù)名 -p密碼 (–tables | –quick) 數(shù)據(jù)庫(kù)名 表名1 (表名2 …) > 文件名.sql (括號(hào)中的可缺省)。
    mysqldump -h{hostname} (-P{port}) -u{user} -p{password} (–tables | –quick) {databasename} {table1} {table2} > {backfile.sql}
    例如:
     
    代碼如下:
    1
    2
    3
    4
    mysqldump -hlocalhost -uzhuchao -p123456 db_test tbl_test > backfile4-1.sql
    mysqldump -hlocalhost -P3306 -uzhuchao -p123456 db_test tbl_test > backfile4-2.sql
    mysqldump -hlocalhost -P3306 -uzhuchao -p123456 --quick db_test tbl_test > backfile4-3.sql
    mysqldump -hlocalhost -P3306 -uzhuchao -p123456 --tables db_test tbl_test1 tbl_test2 > backfile4-4.sql
    同時(shí)備份多個(gè)MySQL數(shù)據(jù)庫(kù)
    格式:mysqldump -h{hostname} (-P{port}) -u{username} -p{password} –databases {databasename1} {databasename2} {databasename3} > multibackfile.sql
    例如:
     
    代碼如下:
    1
    mysqldump -hlocalhost -uzhuchao -p123456 –databases db_test1 db_test2 db_test3 > multibackfile.sql
    僅僅備份數(shù)據(jù)庫(kù)結(jié)構(gòu)
    格式:mysqldump –no-data –databases {databasename1} {databasename2} > {structurebackfile.sql}
    例如:
     
    代碼如下:
    1
    mysqldump –no-data –databases db_test1 db_test2 > structurebackfile.sql
    備份服務(wù)器上所有數(shù)據(jù)庫(kù)
    格式:mysqldump –all-databases > allbackupfile.sql
     
    ========================================================================
     
    還原MySQL數(shù)據(jù)庫(kù)的命令
    格式:mysql -h{hostname} -u{username} -p{password} {databasename} < {backfile.sql}
    例如:
     
    代碼如下:
    1
    mysql -hlocalhost -uroot -p123456 db_test4 < back_file1.sql
    還原壓縮的MySQL數(shù)據(jù)庫(kù)
    格式:gunzip < {backfile.sql.gz} | mysql –u{username} –p{password} {databasename}
    例如:
     
    代碼如下:
    1
    gunzip < backfile.sql.gz | mysql –uzhuchao –p123456 db_test5
    將數(shù)據(jù)庫(kù)轉(zhuǎn)移到新服務(wù)器
    mysqldump –u{username} –p{password} {databasename} | mysql –host=*.*.*.* –C {databasename}
     
    二、其他:
    1、如果端口為默認(rèn)的3306時(shí),可省略 -P {端口號(hào)} 這一項(xiàng)。
     
    2、命令行格式中 { } 中的內(nèi)容都是變量
    主機(jī)名 : {hostname}
    端   口:{port}    (一般默認(rèn)3306,可缺省)
    用戶(hù)名:{user} {username} (如root)
    密   碼:{password}
    數(shù)據(jù)庫(kù)名 :{databasename}
    表   名:{table}  {table1}  {table2}
    文件名:{backfile.sql}
    posted on 2011-10-24 11:46 SIMONE 閱讀(1337) 評(píng)論(0)  編輯  收藏 所屬分類(lèi): mysql
    主站蜘蛛池模板: 亚洲欧美日韩中文高清www777| 免费一级毛片在线播放视频| 亚洲高清在线视频| 免费看大黄高清网站视频在线| 最好免费观看高清在线| 免费在线人人电影网| 亚洲综合在线一区二区三区| 亚洲短视频男人的影院| 成人亚洲性情网站WWW在线观看| 精品久久久久久久免费加勒比| 精品久久久久成人码免费动漫| 久久午夜夜伦鲁鲁片免费无码| 国产VA免费精品高清在线| 日本亚洲中午字幕乱码| 亚洲黄页网在线观看| 亚洲毛片无码专区亚洲乱| 久久精品亚洲一区二区| 狠狠综合久久综合88亚洲| 亚洲国产精品不卡毛片a在线| 国产精品免费看久久久久| 成人午夜免费福利| 久久这里只有精品国产免费10| xxxxx免费视频| 永久免费在线观看视频| 91制片厂制作传媒免费版樱花| 日韩内射激情视频在线播放免费 | 四虎精品免费永久免费视频| 亚洲中文字幕久久无码| 久久亚洲国产最新网站| 亚洲AV无码一区二区三区牛牛| 亚洲高清一区二区三区| 国产精品亚洲片在线va| 亚洲免费电影网站| 亚洲一区二区三区免费观看| 久久精品国产亚洲av麻豆蜜芽| 2020年亚洲天天爽天天噜| wwwxxx亚洲| 亚洲av永久中文无码精品综合 | 在线免费观看视频你懂的| 成人无遮挡毛片免费看| 免费亚洲视频在线观看|