注:摘自<<Openstack实战指南>>
Openstack的数据库默认为Mysql,一般安装在控制节点上。该数据库保存了Nova,Glace、Cinder和Keystone的关键数据。这些数据集中保持在一个数据库中,备份起来比较容易。
#mysqldump --opt -- all-databases > openstack.sql
也可以备份某个数据库:
#mysqldump --opt nova >nova.sql
在运维阶段,可以建立一个cron定时任务,每天自动备份一次,例如:
#!/bin/bash
backup_dir="/var/lib/backups/mysql"
filename="${backup_dir}/mysql-'hostname'-'eval date +%Y%m%d' .sql.gz"
#Dump the entire Mysql database
/usr/bin/mysqldump --opt --all-databases | gzip > $flename
#Delete backups older than 7 days
find $backup_dir -ctime +7 -type -f -delete
它会导出整个openstack数据库,并自动删除早于7天的备份数据。