一、关于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的几个有关权限表的含义:

user:用户账号、全局权限

db:库级别权限

host:废弃

tables_priv:表级别权限

colums_priv:列级别权限

procs_priv:存储过程和存储函数相关的权限

proxies_priv:代理用户权限

三、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官方文档

五、与权限相关的几个命令

GRANT 权限,... ON [对象类型] db.{table|routine} TO 'username'@'host' [INDENTIFIED BY 'password'];

REVOKE 权限,... ON [对象类型] db.{table|routine} FROM 'username'@'host';

SHOW GRANTS FOR 'username'@'host';

CREATE USER 'username'@'host' [IDENTIFIED BY 'password'];

DROP USER 'username'@'host';

RENAME USER old_name TO new_name;

六、权限的操作命令举例

查看当前数据库的所有用户:

select user,host,password from mysql.user;

给用户赋予super权限(super和ALL PRIVILEGES都可以):

GRANT super ON *.* TO 'mysql'@'localhost';

GRANT ALL PRIVILEGES ON *.* TO 'mysql'@'localhost';

删除用户的super权限(super和ALL PRIVILEGES都可以):

REVOKE super ON *.* FROM 'mysql'@'localhost';

REVOKE ALL PRIVILEGES ON *.* FROM 'mysql'@'localhost';

查看赋予用户的权限

SHOW GRANTS FOR 'mysql'@'localhost';

七、MySQL的问题处理

1、MySQL登录密码忘记时的恢复操作

启动mysql_safe时传递两个参数:

--skip-grant-tables      跳过授权表

--skip-networking       为了安全,防止网络登录

登录方式一:

修改/etc/init.d/mysql

登录方式二:

直接在my.cnf配置

[mysqld]

skip-grant-tables

skip-networking

而后修改密码:

通过更新授权表方式直接修改其密码,而后移除此两个选项重启服务器

UPDATE user SET PASSWORD=PASSWORD('123456') WHERE User='root'

2、客户端连接MySQL数据库速度慢的问题

直接在my.cnf配置,关闭DNS的反向解析参数

[mysqld]

skip-name-resolve

转载于:https://blog.51cto.com/shengjian/1581854

MySQL的用户和权限介绍相关推荐

  1. 3、MySQL 高级-用户与权限管理

    3.MySQL 高级-用户与权限管理 3.1.用户管理 3.1.1.创建用户 # 表示创建名称为 zhang3 的用户,密码设为 123123: create user 'username' iden ...

  2. mysql 给用户取消权限_MySQL创建用户并授权及撤销用户权限

    这篇文章主要介绍了MySQL创建用户并授权及撤销用户权限.设置与更改用户密码.删除用户等等,需要的朋友可以参考下 MySQL中创建用户与授权的实现方法. 运行环境:widnows xp profess ...

  3. 改变mysql数据库用户的权限

    mysql> grant all on *.* to test@'%';Query OK, 0 rows affected (0.00 sec) mysql> flush privileg ...

  4. MYSQL为用户指定权限有哪些

    在分配用户的权限的时候,无非查询,修改,删出,还有些mysql其他的操作命令,下面总结一下所有的命令. Select_priv 查询命令 Insert_priv 插入命令 Update_priv 修改 ...

  5. mysql添加用户及权限

    一.增加权限 mysql> grant 权限1,权限2,...权限n on 数据库名称.表名称 to 用户名@用户地址 identified by '连接口令'; mysql>flush ...

  6. MySql的用户管理权限

    登陆连接 1.127.0.0.1/其他远程数据库 mysql -u admin -p -h 127.0.0.1 -P 3306 -D t_user 注:-u 代表用户,-p代表密码 ,-h代表host ...

  7. MySQL创建用户添加权限

    新建用户 格式: create user "username"@"host" identified by "password"; 示例: c ...

  8. Mysql添加用户设置权限

    1.使用MySQL root用户登录MySQL 2.使用命令创建一个用户 命令:CREATE USER 'username'@'localhost' IDENTIFIED BY 'password' ...

  9. mysql 给用户赋予权限

    1.进入数据库 C:\Users\Administrator> mysql -u root -p Enter password: ****** 2.查看数据库用户表 mysql> SELE ...

最新文章

  1. 同一个IP不同端口号使用session失效
  2. RabbitMQ消息队列(二):”Hello, World“
  3. 检测xcode工程中配置信息是否正确
  4. vue知识总结第一篇vue组件的定义以及父子组件的传值。
  5. 《犯罪心理学》读书笔记(part11)--犯罪心理的性别差异(中)
  6. 笔记本电脑排名2015_2015-2026全球及中国AC-DC电源适配器市场发展现状调研及未来前景行业展望...
  7. 【渝粤题库】广东开放大学 外贸会计1 形成性考核
  8. php获取网页js中的json,从php获取json数据使用js读取显示到网页笔记
  9. 诺基亚收购了阿朗:那与 TCL 的“阿尔卡特”品牌授权协议到期后咱办?
  10. penpyxl 格式_【上海校区】数据集.npy格式与png格式互换
  11. 小网站静态资源CDN加速实践记录
  12. 辨析:工作路径与脚本路径
  13. 程序员自曝接私活:10个月时间接了30多个单子,纯收入40万
  14. 一对一视频直播APP开发要点
  15. TVP周年庆:“用科技影响世界”,一起出发!
  16. 前端学习笔记 - px,em,rem,%,vw,vh,vm
  17. numpy.corrcoef 计算相关系数
  18. 全面解析jQuery $(document).ready()和JavaScript onload事件
  19. CentOS 之 libffi-devel 安装
  20. 给老鼠大脑注入光纤能控制老鼠酗酒了?!|技术前沿洞察

热门文章

  1. js获取浏览器的参数
  2. Angular 2 Pipe
  3. Java微信对账接口返回值解析
  4. ASP.NET 获取上一个页面的Url链接
  5. 第二章:制作 yum 仓库和配置MTA-Postfix
  6. RHEL 5 设置 YUM
  7. PHP中不被注意但是比较重要的函数用法集合
  8. HTTP长连接和短连接以及推送服务原理(转)
  9. qt android 开发之wifi开发篇
  10. 趋势型指标——MACD