• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            教父的告白
            一切都是紙老虎
            posts - 82,  comments - 7,  trackbacks - 0
            數據庫備份是很重要的。如果定期做好備份,這樣就可以在發生系統崩潰時恢復數據到最后一次正常的狀態,把損失減小到最少。
            以前在FREEBSD系統里面都先把MYSQL停掉,然后直接用tar命令直接把數據庫文件打包,下載到本地。如果要恢復數據庫,也是直接上傳,用tar解壓,然后設置下權限就可以用了。

            現在在windows下,本來用PHPmyadmin管理數據庫是很好,但是本地的服務器,死活連不上數據庫,新版的2.11的我都不知道怎么配置,汗死!用MySQL Control Center 等客戶端軟件也不行,暈死了! 無奈,只好用mysqldump 來備份了!

            因為沒有好好的準備 ,以為mysqldump 是 MYSQL解析器里面的命令-_-!! 死活運行不起來。
            使用了之后,才發現。。原來,MYSQL的備份可以這么美的。哈哈。。(漸遠!)

            好了,收集了一些mysqldump命令的語法,先學學!
            用mysqldump對MySQL數據庫進行數據備份與恢復

            MySQLl提供了一個mysqldump命令,我們可以用它進行數據備份,下面假設要備份yejihao_agent這個數據庫:

            #mysqldump -u root -p yejihao_agent > yejihao_agent.sql

            按提示輸入密碼,這就把yejihao_agent數據庫所有的表結構和數據備份到yejihao_agent.sql了,因為要總進行備份工作,如果數據量大會占用很大空間,這時可以利用gzip壓縮數據,命令如下:

            #mysqldump -u root -p yejihao_agent | gzip > yejihao_agent.sql.gz

            系統崩潰,重建系統時,可以這樣恢復數據:

            #mysql -u root -p yejihao_agent < yejihao_agent.sql

            從壓縮文件直接恢復:

            #gzip < yejihao_agent.sql.gz | mysql -u root -p yejihao_agent

            /*************************************/
            命令解釋 
            /************************************/

            導出要用到MySQL的mysqldump工具,基本用法是:   

            shell> mysqldump [OPTIONS] database [tables]   

            如果你不給定任何表,整個數據庫將被導出。   

            通過執行mysqldump --help,你能得到你mysqldump的版本支持的選項表。   

            注意,如果你運行mysqldump沒有--quick或--opt選項,mysqldump將在導出結果前裝載整個結果集到內存中,如果你正在導出一個大的數據庫,這將可能是一個問題。   

            mysqldump支持下列選項:   

            --add-locks   
            在每個表導出之前增加LOCK TABLES并且之后UNLOCK TABLE。(為了使得更快地插入到MySQL)。   
            --add-drop-table   
            在每個create語句之前增加一個drop table。   
            --allow-keywords   
            允許創建是關鍵詞的列名字。這由表名前綴于每個列名做到。   
            -c, --complete-insert   
            使用完整的insert語句(用列名字)。   
            -C, --compress   
            如果客戶和服務器均支持壓縮,壓縮兩者間所有的信息。   
            --delayed   
            用INSERT DELAYED命令插入行。   
            -e, --extended-insert   
            使用全新多行INSERT語法。(給出更緊縮并且更快的插入語句)   
            -#, --debug[=option_string]   
            跟蹤程序的使用(為了調試)。   
            --help   
            顯示一條幫助消息并且退出。   
            --fields-terminated-by=...   
                
            --fields-enclosed-by=...   
                
            --fields-optionally-enclosed-by=...   
                
            --fields-escaped-by=...   
                
            --fields-terminated-by=...   
            這些選擇與-T選擇一起使用,并且有相應的LOAD DATA INFILE子句相同的含義。   
            LOAD DATA INFILE語法。   
            -F, --flush-logs   
            在開始導出前,洗掉在MySQL服務器中的日志文件。   
            -f, --force,   
            即使我們在一個表導出期間得到一個SQL錯誤,繼續。   
            -h, --host=..   
            從命名的主機上的MySQL服務器導出數據。缺省主機是localhost。   
            -l, --lock-tables.   
            為開始導出鎖定所有表。   
            -t, --no-create-info   
            不寫入表創建信息(CREATE TABLE語句)   
            -d, --no-data   
            不寫入表的任何行信息。如果你只想得到一個表的結構的導出,這是很有用的!   
            --opt   
            同--quick --add-drop-table --add-locks --extended-insert --lock-tables。   
            應該給你為讀入一個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=path-to-some-directory   
            對于每個給定的表,創建一個table_name.sql文件,它包含SQL CREATE 命令,和一個table_name.txt文件,它包含數據。 注意:這只有在mysqldump運行在mysqld守護進程運行的同一臺機器上的時候才工作。.txt文件的格式根據--fields-xxx和--lines--xxx選項來定。   
            -u user_name, --user=user_name   
            與服務器連接時,MySQL使用的用戶名。缺省值是你的Unix登錄名。   
            -O var=option, --set-variable var=option設置一個變量的值。可能的變量被列在下面。   
            -v, --verbose   
            冗長模式。打印出程序所做的更多的信息。   
            -V, --version   
            打印版本信息并且退出。   
            -w, --where='where-condition'   
            只導出被選擇了的記錄;注意引號是強制的!   
            "--where=user='jimf'" "-wuserid>1" "-wuserid<1"  

            最常見的mysqldump使用可能制作整個數據庫的一個備份:  

            mysqldump --opt database > backup-file.sql   

            但是它對用來自于一個數據庫的信息充實另外一個MySQL數據庫也是有用的:   

            mysqldump --opt database | mysql --host=remote-host -C database   

            由于mysqldump導出的是完整的SQL語句,所以用mysql客戶程序很容易就能把數據導入了:   

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

            posted on 2010-03-31 22:15 暗夜教父 閱讀(428) 評論(0)  編輯 收藏 引用 所屬分類: Linux & Unix

            <2009年10月>
            27282930123
            45678910
            11121314151617
            18192021222324
            25262728293031
            1234567

            常用鏈接

            留言簿(2)

            隨筆分類

            隨筆檔案

            文章分類

            文章檔案

            搜索

            •  

            最新評論

            閱讀排行榜

            評論排行榜

            69久久夜色精品国产69| 精品亚洲综合久久中文字幕| 久久久国产精品| 久久无码AV中文出轨人妻| 狠狠色婷婷久久综合频道日韩 | 久久久久久极精品久久久| 亚洲精品tv久久久久久久久久| 国产精品久久久香蕉| 青青草国产精品久久| 午夜精品久久久久久| A狠狠久久蜜臀婷色中文网| 久久久久亚洲AV无码专区桃色| 亚洲精品国产字幕久久不卡| 情人伊人久久综合亚洲| 国产69精品久久久久久人妻精品 | 国产精品久久久久久久久久影院| 久久青青草原精品国产| 久久久久亚洲精品无码网址 | 久久青青草原亚洲av无码| 色综合久久久久久久久五月| 久久青青草原亚洲av无码| 久久精品a亚洲国产v高清不卡| 青春久久| 日韩精品无码久久一区二区三| 久久精品国产亚洲AV麻豆网站| 三级三级久久三级久久| 品成人欧美大片久久国产欧美... 品成人欧美大片久久国产欧美 | 久久久久久久综合狠狠综合| 国产激情久久久久影院老熟女免费| 久久久久久午夜成人影院| 奇米影视7777久久精品人人爽| 久久一本综合| 欧美精品九九99久久在观看| 久久影院午夜理论片无码| 久久婷婷色综合一区二区| 久久婷婷五月综合色99啪ak| 久久精品视频免费| 国产精品成人无码久久久久久 | 色欲综合久久躁天天躁蜜桃| 久久久无码精品亚洲日韩京东传媒| 亚洲国产成人久久综合一区77|