MySQL 密码安全

当执行的SQL语句中包含密码的时候(例如执行  CREATE USER,  GRANT ,   SET PASSWORD),或者调用PASSWORD() 函数时,这些语句都可能被MYSQL服务器日志所记录,如此一来任何可以访问日志的人都可以看到这些密码,这是非常危险的。


好在在MySQL 5.6.3之后,上述涉及密码的语句日志会被重写处理,将密码部分用...代替。但是不幸的是,INSERT、UPDATE等语句日志并不会被特殊处理,因此如果对mysql.user表进行INSERT/UPDATE等操作日志仍旧会明文记录密码,所以必须避免此类操作。


刚才说了,5.6.3版本以后会对用户密码语句的日志进行重写处理,但是如果在启动MYSQL的时候使用了  --log-raw选项,那么MYSQL就不会进行密码重写了,所以这个选项不要在生产环境使用,仅作为开发调试诊断时使用。


另一方面就是对日志本身的保护,控制日志文件的访问权限,如果日志不是以文件形式,而是存储在mysql库的日志表中,则要控制对此表的访问权限。主从环境下,slave也会存储密码用于同步master数据,也是存储在文件或者表中,需要同样加以保护。



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值