美文网首页
MySQL - 用户及权限

MySQL - 用户及权限

作者: 单刀恐惧者 | 来源:发表于2017-06-20 17:09 被阅读0次

创建用户

insert into mysql.user(Host,User,Password) values("localhost","test",password("123456"));
create user 'test'@'localhost' identified by '123456';
grant all privileges on db.* to 'test'@'localhost' identified by '123456';

删除用户

Delete FROM user Where User='test' and Host='localhost';

删除用户并取消权限

drop user 'test'@'localhost';

将删除user表的用户数据
将删除db表和table_priv表的权限数据

将权限授予一个已存在的用户

grant all privileges on db.* to 'test'@'localhost'

将权限授予用户
如果用户存在则更新密码,如果用户不存在则创建用户

grant all privileges on db.* to 'test'@'localhost' identified by '123456';

grant授权如果指定了数据库将在db表产生一条数据
grant授权如果指定了数据表将在table_priv产生一条数据

取消权限

revoke all privileges on *.* from 'test'@'%';

on 后面的作用范围必须小于或等于当前用户权限的作用范围
例如:
grant all privileges on dbname.* to 'test'@'localhost'
revoke select on *.* from 'test'@'%';//无效
revoke select on dbname.* from 'test'@'%';//有效
revoke select on dbname.tablename from 'test'@'%';//有效
revoke取消权限即使将全部权限取消也不会删除db表和table_priv表的权限数据

修改密码

update mysql.user set Password=password('123456') where User="test" and Host="localhost";
SET PASSWORD FOR 'test'@'localhost' = PASSWORD('123456');

查看 MySQL 用户权限

  • 查看当前用户(自己)权限:
    show grants;
  • 查看其他 MySQL 用户权限:
    show grants for 'test'@'localhost';

特别注意

  1. 如果需要一个空密码或者无密码的账户,必须先用Create User命令,然后通过grant来分配权限,grant只能创有密码的账户。
  2. 如果想让授权的用户,也可以将这些权限 grant 给其他用户,需要选项 "with grant option"
  3. grant, revoke修改完权限以后一定要刷新服务,或者重启服务,刷新服务用:flush privileges;

host说明

127.0.0.1 - 表示本机
localhost - 表示本机*
::1 - 表示ipv6地址的127.0.0.1
% - 表示任何地址

相关文章

  • Mysql创建用户分配权限

    mysql创建用户 mysql为用户分配权限 分配完权限刷新权限

  • MySQL用户及权限

    1. MySQL根据对象级别划分的权限类别: 常见的权限类别:库级别、表级别、字段级别、管理类权限、程序类权限 管...

  • MySQL - 用户及权限

    创建用户 删除用户 删除用户并取消权限 将删除user表的用户数据将删除db表和table_priv表的权限数据 ...

  • MySQL用户及权限

    引言 数据库保存着应用程序日积夜累记录下来的数据资产,安全级别特别高,所以只能让授权的用户可以访问,其他用户需一律...

  • Mysql 用户权限管理

    MYSQL 用户权限 MySQL之权限管理 用户权限管理 SQL脚本 1.创建用户 PARAMETER'scorp...

  • mysql用户权限与缓存

    mysql 用户权限与缓存 mysql用户和权限管理: 元数据数据库:mysql 用户帐号: 'USERNAME'...

  • note_21.4.4_mariadb用户

    用户账号及权限管理: 用户账号:'username'@'host'host:此用户访问当前mysql服务器时,允许...

  • Navicat连接mysql 2003 - Can't conn

    linux下mysql开启远程访问权限及防火墙开放3306端口 默认mysql的用户是没有远程访问的权限的,因此当...

  • linux xampp navicate 连接数据库 连接不上

    linux下mysql开启远程访问权限及防火墙开放3306端口 默认mysql的用户是没有远程访问的权限的,因此当...

  • mysql 用户及权限管理

    MySQL 默认有个root用户,但是这个用户权限太大,一般只在管理数据库时候才用。如果在项目中要连接 MySQL...

网友评论

      本文标题:MySQL - 用户及权限

      本文链接:https://www.haomeiwen.com/subject/xrhaqxtx.html