mysql怎么创建普通用户_MySQL创建普通用户、分配权限、删除用户、修改用户密码...

本文详细介绍了如何在MySQL中创建普通用户,包括设置密码、分配权限、修改用户密码以及删除用户的方法。通过CREATE USER语句创建用户,GRANT语句授权,mysqladmin命令或SET PASSWORD命令修改密码,以及DROP USER语句删除用户。同时,文章还强调了权限管理的重要性,提供了精准控制用户权限的示例。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1)MySQL中创建普通用户:

语法:

CREATE USER `username`@`host` [IDENTIFIED BY [PASSWORD] `password`];

其中,IDENTIFIED BY   语句用来设置密码,默认时密码为空。

其他参数:

username : 表示创建的用户名

host : 表示指定用户登陆的主机名,如是本地用户可使用 “localhost”,

如该用户可登陆任何远程主机,可使用通配符 “%”。

PASSWORD : 表示使用哈希值设置密码,为可选项。

password : 表示用户登陆时使用的明文密码。

例如创建本地用户 teacher 密码123456,本地用户,不需要密码。SQL如下

CREATE USER `teacher`@`localhost` IDENTIFIED BY `123456`;  //有密码

CREATE USER `teacher`@`localhost`;  //没有密码

注意:

DOS窗口下需要先登陆MySQL 服务器

创建之后查看:

切换到mysql数据库下:use mysql

查询所有用户及所有权限:select * from user

6666e4f974ef6e9d103969e5b1073ee4.png

反斜杠\G 防止格式乱

77b07f2cf5429da0a6fe5a6d0b853cd1.png

N : 表示没有权限    Y :表示拥有此权限

2)执行 GRANT 语句创建用户并授权

语法:

CRANT priv_type ON databasename.tablename TO `username`@`host` [IDENTIFIED BY [PASSWORD] `password`]

[WITH GRANT OPTION];

priv_type : 表示设置的用户操作权限,如果授予所有权限可使用ALL 。

MySQL中的权限有多,以下列出常用的数据库或表操作权限

@CRANT 和 DROP 权限,可以创建数据库,或删除已有数据库和表。

@INSERT / DELECT / SELECT 和 UPDATE 权限,允许在一个数据库现有的表上实施增,删,查,改操作。

@ALTER 权限,可以用 ALTER  ALTER来更改表的结构和重命名表。

@databasename.tablename 表示所创建用户账号的权限范围,及只能在指定数据库和表上使用此权限,

如果给所有数据库和授权,则可使用 *.*

@WITH GRANT OPTION 表示新建立的用户赋予 GRANT 权限,可选

@其他部分与 CRANT USER 语句一致

1.  grant 权限 on数据库.数据表 to '用户' @ '主机名' IDENTIFIED BY 密码;

例:

1.1 给 xiaogang 分配所有的权限

grant all on *.* to 'xiaogang'@'localhost';

1.2 如何更精准的控制用户的权限呢?

grant 权限 on数据库.数据表 to '用户' @ '主机名';

例:

让 xiaogang 有查询 tmp 数据库 tmp1 表的权限;

grantselecton temp.temp1 to 'xiaogang'@'localhost';

//这个时候 xiaogang 就具有查询temp小的temp1的权限了。

3)使用mysqladmin 命令修改root账户密码:

语法:

mysqladmin -u username -p password "newpassword"  //输入新密码

Enter password: //输入旧密码

c78d09cbf088f3eea79a9dcead23dfb7.png

4)使用SET命令修改用户密码:

用户登陆MySQL服务器后,可使用SET命令修改当前用户密码:语法如下

语法:

SET PASSWORD [FOR `username`@`host`]= PASSWORD (`newpassword`);

其中,PASSWORD ()函数是对密码加密,“newpassword”是设置的新密码。

如果修改非当前登陆用户密码,则需要使用FOR指定要修改的帐户名。

注意:

只有超级管理员用户(如root用户)才能修改其他用户密码,如果是普通用户,可省略FOR子句修改自己的密码。

#修改当前登录账户密码

SET PASSWORD = PASSWORD("0000");

75a0b10363cc73f298da16ebbcdc6a34.png

#修改其他用户

SET PASSWORD FOR `teacher`@`localhost`=PASSWORD("88888");

a500d39ab2cdc8f7e9e15cfbe95ce167.png

5)删除普通用户

语法:

DROP USER `username`@`localhos` ,[`username1`@`localhost`.........];

例:

DROP USER `text1`@`localhost`;

0a02250eab240fb774895a1a9e92c880.png

注意:

要使用DROP USER 语句,必须拥有MySQL 数据库的全局 CREATE USER 权限或 DELECT权限,

一般由数据库管理员(DBA)来执行此操作。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值