MySQL安全体系的学习心得
(一)My SQL权限系统认证方式:
(1)对连接的用户进行身份验证,合法的用户通过认证,不合法的用户拒绝连接。
对身份的认证,My SQL是通过IP地址和用户名联合进行确认列入My SQL安装后默认创建的用户root@localhost表示用户root只能从本地(localhost)进行连接才可以通过认证,此用户从其他任何主机对数据库进行的连接都将被拒绝。也就是说,同样的一个用户名,如果来自不同的IP地址,则My SQL将其视为不同的用户名。
(2)对通过认证的合法用户赋予相应的权限,用户可以在这些权限范围内对数据库做出相应的操作。
(二)安全密码设置
设置密码:建议使用6位以上的字母,数字,下划线和一些特殊字符组合而成的字符串。
使用上的安全:使用密码期间尽量保证使用过程安全,不会被别人所窃取。
(三)root用户修改密码
root用户修改自己的密码
1、使用mysqladmin命令在命令行指定新密码
2、修改mysql数据库的user表
password('')函数用来加密用户密码。执行update之后需要执行flush privileges语句重新加载用户权限
3、使用SET语句修改root用户的密码
SET PASSWORD语句可以用来重新设置其他用户的登录密码或者自己使用的帐户密码
语法
新密码必须用PASSWORD函数加密
root用户修改普通用户密码
1、使用SET语句修改普通用户的密码
2、使用update语句修改普通用户的密码
执行完毕之后需要使用flush privileges语句或者重启MYSQL重新加载用户权限
3、使用GRANT语句修改普通用户密码
注意:使用GRANT语句和MYSQLADMIN设置密码,他们均会加密密码,这种情况下,不需要使用PASSWORD()函数
普通用户修改密码
使用SET语句修改自己的密码
root用户密码丢失的解决办法
使用--skip-grant-tables选项启动MYSQL服务
使用--skip-grant-tables选项启动MYSQL时,服务器将不加载权限判断,任何用户都能访问数据库