mysql用户权限与账号创建方法
一、mysql权限
1、mysql的权限系统主要用来验证用户的操作权限。
2、在mysql内部,权限信息存放在mysql数据库的granttable里。当mysql启动后,granttable里的信息会写入内存。
3、mysql 使用user name 加 host name 来作为标识符。
通过这种标识符,可以用来区分不同host上的相同的user name。
4、mysql 权限控制有2种策略:
1)根据密码是否正确来控制客户端的连接。
2)假设可以正常connect,server还可以检查每个satement是否有权限去执行。如果只有某张表的select 权限,就不能进行drop 操作。
5、如果用户的权限改变,当前已连接的会话用户不会受影响,下次登录才会生效。
二、mysql有关权限表的含义:
三、mysql用户账号的创建规则
用户名@主机
用户名:16字符以内
主机:
主机名:www.test.com,mysql
ip:192.168.2.1
网络地址:192.168.0.0/255.255.0.0
通配符:%,192.168.%.%,%.test.com
四、mysql的用户权限级别
服务管理类:super
库:create
表:delete、alter
列:insert、select、update
更多级别可参考mysql官方文档
五、与权限相关的几个命令
六、权限的操作命令举例
查看当前数据库的所有用户:
给用户赋予super权限(super和all privileges都可以):
删除用户的super权限(super和all privileges都可以):
查看赋予用户的权限
七、mysql的问题处理
1、mysql登录密码忘记时的恢复操作
启动mysql_safe时传递两个参数:
登录方式一:
修改/etc/init.d/mysql
登录方式二:
直接在my.cnf配置
而后修改密码:
通过更新授权表方式直接修改其密码,而后移除此两个选项重启服务器
2、客户端连接mysql数据库速度慢的问题
直接在my.cnf配置,关闭dns的反向解析参数