posts - 0, comments - 77, trackbacks - 0, articles - 356
            BlogJava :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理

          用mysqldump 來備份數據庫

          Posted on 2007-01-27 17:58 semovy 閱讀(325) 評論(0)  編輯  收藏 所屬分類: My SQL數據庫方面
          用mysqldump 來備份數據庫

          寫在前面:
          -----------------------------------------------------------------
          有時候經常要把數據庫轉來轉去,或者導入導出,以前記得命令,后來又忘記了,現在寫出來備忘!
          ------------------------------------------------------------------

          注意:mysqldump比直接拷貝數據庫文件夾速度要慢
          但,直接復制文件夾不能100%轉移到其它機子上用,我說的不是windows下 :)

          #mysqldump db_name >/path/name.sql

          上面的命令意思是把一個庫導出到一個SQL文件. 當然,你直接在有ROOT密碼的機子上執行以上命令一定會報錯.所以,請用

          #mysqldump db_name >/path/name.sql -uroot -p

          這回會要求你輸入密碼,輸入正確,找找/path下是不是有name.sql文件了?

          數據庫太大了,想壓縮一下?好,用這個命令就行

          #mysqldump db_name |gzip >/path/name.gz -uroot -p

          想備份全部的庫呢?

          #mysqldump --all-databases? >/path/name.sql -uroot -p

          #mysqldump --all-databases |gzip >/path/name.gz -uroot -p (很明顯,這條命令是加壓縮的意思)

          只想備份一個單獨或者幾個表?

          有時候數據庫很大很大,整個庫備份就不好管理,那就單獨備份

          #mysqldump?db_name tab_name?>/path/sqlname.sql -uroot -p

          備份做好了.遇到問題的時候.怎么用備份恢復數據?

          再簡單不過了,

          mysql?db_name?<?backup-file.sql -uroot -p

          注意:如果你想恢復的數據庫是包含授權表的mysql數據庫,你需要用--skip-grant-table選項運行服務器。否則,它會抱怨不能找到授權表。在你已經恢復表后,執行mysqladmin flush-privileges告訴服務器裝載授權標并使用它們?

          恢復單個表

           恢復單個表較為復雜,如果你用一個由mysqldump生成的備份文件,并且它不包含你感興趣的表的數據,你需要從相關行中提取它們并將它們用作mysql的輸入。這是容易的部分。難的部分是從只運用于該表的更新日志中拉出片斷。你會發覺mysql_find_rows實用程序對此很有幫助,它從更新日志中提取多行查詢。

          好了,就這些,看起來并不難,

          主站蜘蛛池模板: 洛南县| 大方县| 安徽省| 江阴市| 平阳县| 扎鲁特旗| 崇信县| 绥中县| 商水县| 常德市| 从江县| 马关县| 封丘县| 涡阳县| 敖汉旗| 六盘水市| 定安县| 内黄县| 怀仁县| 原阳县| 北京市| 洪湖市| 桓仁| 仁寿县| 基隆市| 漳州市| 项城市| 鹤峰县| 万全县| 蓬莱市| 蒲江县| 河源市| 若尔盖县| 昌都县| 赫章县| 嵩明县| 团风县| 天门市| 灌云县| 客服| 巴东县|