• <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 暗夜教父 閱讀(435) 評論(0)  編輯 收藏 引用 所屬分類: Linux & Unix

            <2009年9月>
            303112345
            6789101112
            13141516171819
            20212223242526
            27282930123
            45678910

            常用鏈接

            留言簿(2)

            隨筆分類

            隨筆檔案

            文章分類

            文章檔案

            搜索

            •  

            最新評論

            閱讀排行榜

            評論排行榜

            2022年国产精品久久久久| 成人国内精品久久久久影院VR| 99久久人人爽亚洲精品美女| 国产成人无码精品久久久免费| 亚洲国产精品热久久| 久久99精品国产麻豆蜜芽| 国产免费久久精品99re丫y| 久久午夜羞羞影院免费观看| 66精品综合久久久久久久| 婷婷久久精品国产| 亚洲国产精品久久久天堂| 九九久久精品无码专区| 久久久久国产精品嫩草影院| 久久国产精品99精品国产987| 久久一区二区三区99| 亚洲国产精品无码久久| 久久亚洲精品成人av无码网站| 国产精自产拍久久久久久蜜| 中文字幕日本人妻久久久免费 | 国产精品青草久久久久婷婷 | aaa级精品久久久国产片| 久久无码一区二区三区少妇| 国产精品久久久久影院嫩草| 女人高潮久久久叫人喷水| 久久亚洲国产精品一区二区| 日韩久久久久久中文人妻| 99久久亚洲综合精品网站| 一本色道久久99一综合| 无码人妻少妇久久中文字幕| 久久精品国产亚洲αv忘忧草 | 国产视频久久| 狠狠色丁香婷综合久久| 国内精品久久久人妻中文字幕| 伊人情人综合成人久久网小说| 久久精品免费网站网| 久久精品国产99久久丝袜| 久久中文字幕视频、最近更新 | 久久91精品综合国产首页| 91麻豆精品国产91久久久久久| 久久91精品国产91久久麻豆| 久久99国产精一区二区三区|