本文目录一览:
mysql如何查询某个数据库都有哪些用户具有哪些操作权限???
mysql中所有使用者的权限是记录在mysql这个数据库的users资料表中
所以你只要先use
mysql
再select
*
from
users
你可以看到所有的使用者权限
有关db的数据是记录在db(大小写要注意)这个数据表中
所以只要呼叫出db的资料
select
*
from
db
就可以看到你要的答案
或者你可以用
select
*
from
db
where
db='phplampdb'找出你要的答案
教您如何查看MySQL用户权限
查看MySQL用户权限:
show grants for 你的用户比如:
show grants for root@'localhost';Grant 用法GRANT USAGE ON *.* TO 'discuz'@'localhost' IDENTIFIED BY PASSWORD '*C242DDD213BE9C6F8DA28D49245BF69FC79A86EB';
GRANT ALL PRIVILEGES ON `discuz`.* TO 'discuz'@'localhost';
我先按我的理解解释一下上面两句的意思
建立一个只可以在本地登陆的 不能操作的用用户名 discuz 密码为 ***** 已经加密了的
然后第二句的意思是 ,给这个discuz用户操作discuz数据库的所有权限使用GRANTGRANT命令用来建立新用户,指定用户口令并增加用户权限。其格式如下:
mysql GRANT privileges ON what
- TO user [IDENTIFIED BY password]
- [WITH GRANT OPTION];
正如你看到的源码天空
,在这个命令中有许多待填的内容。让我们逐一地对它们进行介绍,并最终给出一些例子以让你对它们的协同工作有一个了解。
privileges是一个用逗号分隔的你想要赋予的MySQL用户权限的列表。你可以指定的权限可以分为三种类型:
数据库/数据表/数据列权限: Alter: 修改已存在的数据表(例如增加/删除列)和索引。
Create: 建立新的数据库或数据表。
Delete: 删除表的记录。
Drop: 删除数据表或数据库。
INDEX: 建立或删除索引。
Insert: 增加表的记录。
Select: 显示/搜索表的记录。
Update: 修改表中已存在的记录。
全局管理MySQL用户权限:
file: 在MySQL服务器上读写文件。
PROCESS: 显示或杀死属于其它用户的服务线程。
RELOAD: 重载访问控制表,刷新日志等。
SHUTDOWN: 关闭MySQL服务。
特别的权限:
ALL: 允许做任何事(和root一样)。
mysql 8.0 创建新的数据库、用户并授权,以及相关查看并删除操作
以创建wordpress网站的数据库为例
1、创建数据库
创建可指定字符,或者不指定字符,如果不指定字符,默认为 utf8mb4 和 utf8mb4_0900_ai_ci
2、创建用户
可自行指定用户可访问的IP地址范围。
3、授权用户
4、直接一步到位
或者 这种方法 :创建并授权用户,是二和三的合并。
1、查看数据库
show databases可查询所有存在的数据库
2、查看用户信息
用户信息在系统数据库mysql中的user表中。密码查询不会显示明文密码,而是显示为加密后的密文。
3、查看用户权限
有两种方式查看。
第一种方式 : show grants for 'userwordpress';
第二种方式: select * from mysql.user where user='userwordpress'G;
g 相当于’;’
G使每个字段打印到单独的行,也有 ’;' 的作用
只能查出哪个数据库的哪张表的权限,如查userwordpress在mysql数据库的user表的权限,显示都是N(no),没有权限,如果查root用户就都是Y(yes)选择了。
用drop而非delete,简单的区分就是,drop是删除【表】,truncate与delete则是删除表中【记录】。
删除用户
同理,删除数据库
用drop删除时,会有确认信息,为了防止误删。(删库跑路,请谨慎操作)