用户管理

用户数据所在位置:

mysql中的所有用户,都存储在系统数据库(mysql)中的user表中——不管哪个数据库的用户,都存储在这里。

mysql赋全部权 mysql赋权给所有地址登录_mysql用户权限跟登录权限

表初始内容如下:

mysql赋全部权 mysql赋权给所有地址登录_数据库_02

创建用户:

形式:

create  user  ‘用户名’@’允许登录的地址/服务器’  identified  by  ‘密码’;

说明:

1,允许登录的地址/服务器就是,允许该设定的位置,来使用该设定的用户名和密码登录,其他位置不行;

2,可见,mysql的安全身份验证,需要3个信息。

举例:

mysql赋全部权 mysql赋权给所有地址登录_mysql赋全部权_03

查看mysql中的user表:

mysql赋全部权 mysql赋权给所有地址登录_mysql_04

则某同学登录的结果为:

mysql赋全部权 mysql赋权给所有地址登录_用户名_05

删除用户:

drop  user  ‘用户名’@’允许登录的地址或服务器名’;

修改用户密码:

修改自己的密码:

set password = password('密码');

修改他人的密码(前提是有权限):

set passwordfor'用户名'@'允许登录的地址' = password('密码');

权限管理

权限是什么?

mysql数据库,将其中所能做的所有事情,都分门别类分配到大约30多个权限中去了,其中每个权限,都是一个“单词”而已!,比如:

select:代表可以查询数据;

update:代表可以修改数据;

delete:代表可以删除数据;

.......

其中,有一个权限名叫做“all”:表示所有权限;

有如下权限:

mysql赋全部权 mysql赋权给所有地址登录_用户名_06

另一个表现形式(带中文说明):

mysql赋全部权 mysql赋权给所有地址登录_数据库_07

授予权限:

形式:

grant  权限列表on某库.某个对象to‘用户名’@’允许登录的位置’  【identified  by  ‘密码’】;

说明:

1,权限列表,就是,多个权限的名词,相互之间用逗号分开,比如:  select,  insert,  update

也可以写:all

2,某库.某个对象,表示,给指定的某个数据库中的某个“下级单位”赋权;

下级单位有:表名,视图名,存储过程名;  存储函数名;

其中,有2个特殊的语法:

*.*: 代表所有数据库中的所有下级单位;

某库.* :代表指定的该库中的所有下级单位;

3,【identified  by‘密码’】是可省略部分,如果不省略,就表示赋权的同时,也去修改它的密码;

但:如果该用户不存储,此时其实就是创建一个新用户;并此时就必须设置其密码了

剥夺权限:

形式:

revoke  权限列表on某库.某个对象from‘用户名’@’允许登录的位置’

其含义,跟grant中完全一样;