mysql自动备份警告Warning: Using a password on the...

因为备份命令需要用到mysql的root账户和密码,而将账户和密码写入到脚本中无疑是不安全的,5.6.x版本执行备份脚本的时候会发生警告:Warning: Using a password on the command line interface can be insecure,真正安全的做法的是先登录一次将账户和密码加密到当前用户目录下,后续使用就引用即可:

#先输入下面命令,会提示输入对应用户的密码,下面设置了一个mysql的local的本地虚拟用户,注意密码不能用特殊符号
#会在当前用户目录下面生成一个 ~/.mylogin.cnf加密文件,重新设置可以直接删除此文件
mysql_config_editor set --login-path=local --host=localhost --user=root --password


#在脚本中使用root和密码,加一句--login-path=local即可,注意是local用户
mysql --login-path=local -e "showdatabases;"

#自动备份,注意--logn-path必须放到所有参数最前面(重要),不然会提示出错
mysqldump --logn-path=mysqldump --default-character-set=utf8 databaseName | gzip -f > /bakup/path/databaseName.sql.gz

参考:

http://stackoverflow.com/a/20854048

http://dongyado.com/mysql/2015/11/26/use-mysql-config-editor-to-backup-mysql-safely/

你可能感兴趣的:(mysql,备份,脚本)