• 使用MySQLdump备份整个数据库 mysqldump备份数据库语句:
    mysqldump -u user -h host -p password dbname > filename.sql
    
  • 使用MySQLdump备份数据库中的某个表 ```sql mysqldump -u user -h host -p password dbname [tbname,[tbname…]] > filename.sql
- 使用MySQLdump备份多个数据库
```sql
mysqldump -u user -h host -p password --databases [dbname,[dbname...]  > filename.sql

*使用--databases参数时,必须指定至少一个数据库名称,多个数据库名称之间用空格隔开,使用--all-databases是备份所有数据库*
  • MySQLdump其他常用选项
    • –add-drop-database:在每个Create Database语句前添加Drop DATABASE语句
    • –add-drop-tables:在每个Create table语句前添加Drop table语句
    • –add-locking:锁表,重载转储文件时插入更快
    • –comments[=0 1]:如果设置为0,禁止转储文件中的其他信息,例如程序版本,服务器版本和主机等
    • –compact:产生少量输出

恢复数据

  • 使用MySQL命令恢复
    mysql -u user -p [dbname] < filename.sql
    
  • 登录服务器,使用source恢复 ```sql mysql> use book; mysql> source /opt/bookbackup.sql

## 数据库迁移

- 相同版本的MySQL数据库之间的迁移
```sql
mysqldump -h www.abc.com -uroot -ppassword dbname |
mysql -h www.bac.com -u root -ppassword