$ mysqldump -h localhost -u root -p database >backup.sql
上述命令表示使用 mysqldump 工具备份本地 MySQL 数据库中的 database 数据库,并将备份数据保存在 backup.sql 文件中。其中,-h 选项指定数据库所在的主机地址,-u 选项指定备份用户,-p 选项表示输入密码。执行此命令后,系统会提示输入备份用户的密码。
备份过程中,还可以使用其他选项,如下所示:
$ mysqldump -h localhost -u root -p --single-transaction database | gzip >backup.sql.gz
上述命令表示开启事务备份模式,将备份数据压缩并保存在 backup.sql.gz 文件中。备份文件将更小,因此可以节省磁盘空间。事务备份模式可以确保备份的完整性。
当数据库中存在大量数据时,备份数据可能会非常庞大。因此,通常使用分段备份方式,如下所示:
$ mysqldump -h localhost -u root -p database --tables table1 table2 >backup.sql
上述命令表示备份 database 数据库中的 table1 和 table2 表
在备份数据库时,还可以指定备份日期。通过设置备份周期,可以自动进行备份。例如,如下命令表示在每天的凌晨 2 点进行备份:
0 2 * * * /usr/bin/mysqldump -uusername -ppassword --all-databases >/backup_file_path/backup_date.sql
上述命令表示在 crontab 中添加 mysqldump 备份任务。备份周期是每天凌晨 2 点。备份的所有数据库将保存在 /backup_file_path/backup_date.sql 文件中。
总之,MySQL 命令行备份非常灵活和实用。在备份数据库时,大家可以选择不同的选项和方法。备份完成后,可以保证数据库的完整性和安全性。