用mysqldump 來備份數據庫
|
寫在前面: 注意:mysqldump比直接拷貝數據庫文件夾速度要慢 #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實用程序對此很有幫助,它從更新日志中提取多行查詢。 好了,就這些,看起來并不難, |