MySQL(十六)之MySQL用户管理
一、MySQL用户管理概述
MySQL是一个多用户的数据库,MYSQL的用户可以分为两大类: 超级管理员用户(root),拥有全部权限 普通用户,由root创建,普通用户只拥有root所分配的权限
二、MySQL的权限数据库
权限数据库:在MySQL中的mysql数据库。 与权限相关的数据表:user,db,host,tables_priv,columns_priv,procs_priv等。
2.1、user表
1)user表存储的信息
用户的信息:hots(用户所在的主机),user(用户名),password(密码) 用户的权限信息:_priv 安全性相关的信息:ssl_,x509,记录用户登录的验证操作等 与资源分配相关的信息:max_, max_questions:表示用户在一个小时内最多可以进行的查询次数。 max_updates:表示用户在一个小时内最多可以进行的更新次数,也包括增加数据、删除数据。 max_connections:表示用户最多可以建立的连接数。
2)查看用户信息
select host,user, authentication_string from mysql.user;
三、MySQL数据库用户的增删改
3.1、创建用户
create user u_name@’%’(所有的主机都能够登录) identified by 'passwd';
identified by 会将纯文本密码加密作为散列值存储。
3.2、修改用户
修改用户信息:rename user old_u_name to new_u_name;
mysql 5之后可以使用,之前需要使用update 更新user表.
3.3、删除用户
删除用户信息:drop user u_name;
mysql5之前删除用户时必须先使用revoke删除用户权限,然后删除用户,mysql5之后drop命令可以删除用户的同时删除用户的相关权限。
3.4、更改用户密码
set password for zx_root =password('xxxxxx'); update mysql.user set authentication_string=password('xxxx') where user='u_name';
四、MySQL的权限管理
4.1、权限设置相关的命令
1)查看用户权限信息
show grants for u_name; 2)授予用户权限信息
grant select on db_name.* to u_name; 3)回收用户权限信息
revoke select on db_name.* from u_name; //如果权限不存在会报错
注意:
1)上面的命令也可使用多个权限同时赋予和回收,权限之间使用逗号分隔: grant select,update,delete,insert on db_name.* to u_name; 立即生效:flush privileges;(5.7可以不用写,自动更新)
2)设置权限时必须给出以下信息: 要授予的权限 被授予访问权限的数据库或表 用户名
4.2、grant和revoke可以在几个层次上控制访问权限
整个服务器,使用 grant ALL 和revoke ALL 整个数据库,使用on database.* 特定表,使用on database.table
4.3、MySQL权限表
注意:
1)MySQL命令行中的命令:tee file_name,可以将接下来所有敲入的内容以及显示的内容全部记录到某一个文件中。 2)在MySQL终端中,当有换行命令输错之后可以使用“c”结束输入,然后会显示刚才输入的命令在一行,可在修改之后继续。
- 排序还可以这样做
- 韩政府公布虚拟货币投机行为打击对策
- SqlServer2005数据库文件损坏的拯救过程
- 2017年,人类在自己设计的所有游戏中都败给了AI,无一幸免
- 测试组,请用VSS命令行获取最新版本
- 想起温习一下JS中的this apply call arguments
- 学习利用JSON 摆脱表单与业务对象双向转换的繁琐工作
- 代码也疯狂:diagram生成流程图
- 设置你的Gravatar头像的方法
- 阅读Ext 学习Javascript(二)Core/Ext.extend 从继承说起
- IronPython资料
- WordPress免插件仅代码实现“返回顶部、返回底部、评论”效果(样式一)
- encodeURIcomponent编码和ASP.NET之间编码转换
- WordPress免插件仅修改代码去掉评论/留言里的链接
- MySQL 教程
- MySQL 安装
- MySQL 管理与配置
- MySQL PHP 语法
- MySQL 连接
- MySQL 创建数据库
- MySQL 删除数据库
- MySQL 选择数据库
- MySQL 数据类型
- MySQL 创建数据表
- MySQL 删除数据表
- MySQL 插入数据
- MySQL 查询数据
- MySQL where 子句
- MySQL UPDATE 查询
- MySQL DELETE 语句
- MySQL LIKE 子句
- mysql order by
- Mysql Join的使用
- MySQL NULL 值处理
- MySQL 正则表达式
- MySQL 事务
- MySQL ALTER命令
- MySQL 索引
- MySQL 临时表
- MySQL 复制表
- 查看MySQL 元数据
- MySQL 序列 AUTO_INCREMENT
- MySQL 处理重复数据
- MySQL 及 SQL 注入
- MySQL 导出数据
- MySQL 导入数据
- MYSQL 函数大全
- MySQL Group By 实例讲解
- MySQL Max()函数实例讲解
- mysql count函数实例
- MYSQL UNION和UNION ALL实例
- MySQL IN 用法
- MySQL between and 实例讲解