mysql的临时密码放在user权限表的authentication_string字段中。user表是MySQL中最重要的一个权限表,用来记录允许连接到服务器的账号信息。
修改用户临时密码时,实际就是修改user表中authentication_string字段的值。
5.7.6开始没有了password字段, 改为存储在 authentication_string 字段中官方手册中的描述:
The Password column of the mysql.user system table was removed in MySQL 5.7.6. All credentials are stored in the authentication_string column, including those formerly stored in the Password column.
html。
那个pasword为*是可以输出来的,如果要在mysql里面存储密码,可以考虑用字符串类型 char(32) 32位,
然后将前台html里面输入的密码用MD5多加密几次(加密一次很容易破解),然后将加密后的密码(32位)插入到数据库中。
如果以后要实现登陆验证功能,可以把用户登陆的密码MD5后再跟数据库比较。
扩展资料:
MySQL需要注意的地方
1、如果客户端和服务器端的连接需要跨越并通过不可信任的网络,那么就需要使用SSH隧道来加密该连接的通信。
2、用set password语句来修改用户的密码,三个步骤,先“mysql -u root”登陆数据库系统,
然后“mysql>update mysql.user set password=password('newpwd')”,最后执行“flush privileges”就可以了。
3、需要提防的攻击有,防偷听、篡改、回放、拒绝服务等,不涉及可用性和容错方面。对所有的连接、查询、其他 *** 作使用基于ACL即访问控制列表的安全措施来完成。也有一些对SSL连接的支持。
4、除了root用户外的其他任何用户不允许访问MySQL主数据库中的user表; 加密后存放在user表中的加密后的用户密码一旦泄露,其他人可以随意用该用户名/密码相应的数据库;
5、用grant和revoke语句来进行用户访问控制的工作;
6、不使用明文密码,而是使用md5()和sha1()等单向的哈系函数来设置密码;
7、不选用字典中的字来做密码;
8、采用防火墙来去掉50%的外部危险,让数据库系统躲在防火墙后面工作,或放置在DMZ区域中。
参考资料来源:百度百科-MySQL数据库
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)