MYSQL 用户的操作
admin
2023-05-04 01:40:53
0

MYSQL 用户的授权
为什么要授权?
MYSQL 的默认用户是 root ,由于 root 的权限太大,也是为了安全方面考虑,一般只在管理数据库的时候才用,如果在项目中要连接一个MYSQL数据库,则建议新建一个权限较小的用户
作用:限制指定的用户可以登陆哪台主机、访问哪个数据库和对某个数据库有什么样的权限。

一、创建用户    (mysql 不区分大小写)

    命令格式: create user  "username"@"host" identified by "password";
            --username   你将创建的用户名
            --host       指定该用户可以在哪个主机上登陆,如果是本地用户则可以用localhost,如果想让该用户可以任意远程主机登陆,则可以使用通配符 “%” 
            --password   该用户的密码,密码可以为空,为空则代表用户不需要密码就可以登陆
            下面写几种例子:
                                        create user "china"@"192.168.8.128" identified by "123456";
                                        create user "china"@"localhost" identified by "123456";
                                        create user "china"@"%" identified by "123456";
                                        create user "china"@"%" identified by "";
                                        create user "china"@"%";

二、授权

    命令的格式: grant privileges on dataname.tablename to "username"@"host" ;
    --privileges      用户的权限,如 select   insert    update 等, 如果要授予所有权限的话就使用 all 
    --dataname.tablename   库.表名   指定该用户对哪个数据库的表有操作的权限,如果要授予该用户对所有数据库和表的相应操作权限则可用*表示, 如*.*
    在客户端登陆时: mysql -h"服务端的IP"  -u"指定的用户"  -p"密码"
    grant select,insert on db1.table1 to "china"@"localhost" ;
    grant all on db1.table1 to "chian"@"localhost";
注意:用以上名令授权的用户是没有授权的权限,让该用户拥有授权的权限,可以在后面加上  with grant option
                    例子:grant all on db1.table1 to "china"@"localhost"  with grant option;

三、设置与更改用户密码

命令格式: set password for "username"@"host" = password ("new password");  这是未登陆的用户
                                         set password = password ("new password");

四、撤销用户的权限

            命令格式: revoke privileges on db1.table1 from "username"@"host";
            例子: revoke select on  *.*  from "china"@"%";

            注意:  撤销权限后,用户名会保存下来,但若在撤销权限前把用户给删除了的话,那么用户的权限也会删除

五、删除用户

         命令格式: drop user  "username"@"host";

附录:
查看用户的权限: show grants for "username";

权限列表:
ALTER: 修改表和索引。
CREATE: 创建数据库和表。
DELETE: 删除表中已有的记录。
DROP: 抛弃(删除)数据库和表。
INDEX: 创建或抛弃索引。
INSERT: 向表中插入新行。
REFERENCE: 未用。
SELECT: 检索表中的记录。
UPDATE: 修改现存表记录。
FILE: 读或写服务器上的文件。
PROCESS: 查看服务器中执行的线程信息或杀死线程。
RELOAD: 重载授权表或清空日志、主机缓存或表缓存。
SHUTDOWN: 关闭服务器。
ALL: 所有权限,ALL PRIVILEGES同义词。
USAGE: 特殊的 "无权限" 权限。
用 户账户包括 "username" 和 "host" 两部分,后者表示该用户被允许从何地接入。tom@'%' 表示任何地址,默认可以省略。还可以是 "tom@192.168.1.%"、"tom@%.abc.com" 等。数据库格式为 db@table,可以是 "test." 或 ".*",前者表示 test 数据库的所有表,后者表示所有数据库的所有表。
子句 "WITH GRANT OPTION" 表示该用户可以为其他用户分配权限

相关内容

热门资讯

Google在港推出AI代理G... 观点网讯:7月29日,Google在香港推出AI代理Gemini Spark,该代理可全天候在后台运...
5G+165Hz!联想新品官宣... 近两年来,小屏平板一直是比较有趣的一个品类。 不同于大平板注重效率、手机追求万能的特点,拯救者Y70...
原创 马... 马斯克又出来了。这次说2036年钱就没用了。 理由是人工智能加机器人,东西多到你用不完,还拿钱干嘛...
美的集团:我国智能家居互联互通... IT之家 7 月 30 日消息,美的集团今日发布公告,7 月 21 日至 23 日,智能家居互联互通...
华为新款MatePad Pro... 【CNMO科技消息】7月30日,@华为终端 官宣全新旗舰平板华为MatePad Pro。 新款华为...
从实验室到实景验证:6G光子太... 全息通信是第六代移动通信(6G)的典型应用场景之一,旨在通过融合无线传输与全息三维成像技术,实现超大...
从“能对话”到“能干活”——人... 【经济界面】 光明日报记者 刘坤 李晓东 周洪双 人工智能(AI)眼镜化身为个人“助理”,实时进行...
【全新发布】UminiP Pr... (来源:洲明科技)
日本通过“H3火箭8号”发射失... △H3火箭(资料图) 日本文部科学省30日召开关于去年“H3火箭8号”发射失败的会议。会议通过的最终...
互联网巨头抢滩健康硬件,上游芯... 封面新闻记者 付文超 当下,互联网巨头对健康硬件的押注,正在成为产业现实,加速拉动整个产业链步入新一...