在mysql中我們的數據備份與還原都是用到了mysqldump命令來操作,下面給大家簡單總結一下.
目前 MySQL 支持的免費備份工具有:mysqldump、mysqlhotcopy,還可以用 SQL 語法進行備份:BACKUP TABLE 或者 SELECT INTO OUTFILE,又或者備份二進制日志(binlog),還可以是直接拷貝數據文件和相關的配置文件,MyISAM 表是保存成文件的形式,因此相對比較容易備份,上面提到的幾種方法都可以使用,Innodb 所有的表都保存在同一個數據文件 ibdata1 中(也可能是多個文件,或者是獨立的表空間文件),相對來說比較不好備份,免費的方案可以是拷貝數據文件、備份 binlog,或者用 mysqldump,代碼如下:
mysqldump --opt school>school.bbb
注釋:將數據庫school備份到school.bbb文件,school.bbb是一個文本文件,文件名任取,打開看看你會有新發現.
備份MySQL數據庫的命令,代碼如下:
mysqldump -hhostname -uusername -ppassword databasename > backupfile.sql
備份MySQL數據庫為帶刪除表的格式,備份MySQL數據庫為帶刪除表的格式,能夠讓該備份覆蓋已有數據庫而不需要手動刪除原有數據庫,代碼如下:
mysqldump -–add-drop-table -uusername -ppassword databasename > backupfile.sql
直接將MySQL數據庫壓縮備份,代碼如下:
mysqldump -hhostname -uusername -ppassword databasename | gzip > backupfile.sql.gz
備份MySQL數據庫某個(些)表,代碼如下:
mysqldump -hhostname -uusername -ppassword databasename specific_table1 specific_table2 > backupfile.sql
同時備份多個MySQL數據庫,代碼如下:
mysqldump -hhostname -uusername -ppassword –databases databasename1 databasename2 databasename3 > multibackupfile.sql
僅僅備份數據庫結構:
mysqldump –no-data –databases databasename1 databasename2 databasename3 > structurebackupfile.sql備份
服務器上所有數據庫,代碼如下:
mysqldump –all-databases > allbackupfile.sql
還原MySQL數據庫的命令,代碼如下:
mysql -hhostname -uusername -ppassword databasename < backupfile.sql
還原壓縮的MySQL數據庫,代碼如下:
gunzip < backupfile.sql.gz | mysql -uusername -ppassword databasename
將數據庫轉移到新服務器,代碼如下:
mysqldump -uusername -ppassword databasename | mysql –host=*.*.*.* -C databasename
新聞熱點
疑難解答