数据库备份策略,小规模数据库使用mysqldump命令写脚本
一般使用mysqldump写脚本备份时,常见的是直接将密码明文写在脚本。运行时MySQL客户端跳出警告:
mysqldump: [Warning] Using a password on the command line interface can be insecure.
明文的账号密码,只要有心人拿到,可以对你的数据库任意操作(觉得没人会管你的数据无所谓)。我们需要有一个安全登录解决的方法。mysql_config_editor的--login-path可以完成该工作。
mysql_config_editor命令使用:
mysql_config_editor set --login-path=mydb --host=local --user=backup --password
完成配置后,生成一个mydb的登录点(login-path),密钥保存在$HOME/.mylogin.cnf。以后访问数据库只要指定login-path的名称即可
mysql --login-path=mydb
下面使用一个简单脚本供参考学习使用
backup_dir="/home/data/data_backup"
database="crow"
filename="${backup_dir}/${database}_`date +%Y-%m-%d-%H%M`.sql"
mysqldump --login-path=mydb --single-transaction --set-gtid-purged=OFF --triggers --routines --events --dump-date --databases ivc-prod > $filename