mysql有通過mysqldump備份和直接復制數據文件兩種備份方法。但直接復制方法有移植性不強的缺點,當你使用一種直接備份方法時,你必須保證表不在被使用。優點是適合備份大數據量文件。
mysqldump備份的優點:能夠移植到其他機器上,甚至不同硬件結構不同操作系統的機器上。
缺點:缺省地,mysqldump在寫入前將一個表的整個內容讀進內存。這通常確實不必要,並且實際上如果你有一個大
表,幾乎是失敗的。
mysql數據備份與還原命令:
備份:
mysqldump -uroot -p密碼 test test1 > test.sql
mysqldump 備份命令
root 用戶名(root管理員)
test 備份的數據庫名
test數據庫下需備份的表test1備份的表名
> 備份符號
test.sql 備份的路徑和文件名
注:以上命令只備份表test1,數據庫test下的其它表不進行備份
還原:
mysql -u root -p test< d:test.sql
mysql 還原命令
root 用戶名(root管理員)
test 備份的數據庫名;
< 還原符號
test.sql 還原的文件名
例子
mysqldump 遠程備份
mysqldump -h ip -uroot -proot database > c:data.sql
導出整個數據庫結構和數據
mysqldump -h localhost -uroot -p123456 database > dump.sql
導出單個數據表結構和數據
mysqldump -h localhost -uroot -p123456 database table > dump.sql
導出整個數據庫結構(不包含數據)
mysqldump -h localhost -uroot -p123456 -d database > dump.sql
導出單個數據表結構(不包含數據)
mysqldump -h localhost -uroot -p123456 -d database table > dump.sql
mysqldump按條件導出:
mysqldump -u用戶名 -p密碼 -h主機 數據庫 a --where "條件語句" --no-建表> 路徑
mysqldump -uroot -p1234 dbname a --where "tag='88'" --no-create-info> c:/a.sql