MySQL8.0+创建用户设置用户密码、授权
在 MySQL 8 中,创建用户、设置用户密码以及授权的步骤如下:
1. 创建用户
使用 CREATE USER
语句创建新用户。语法如下:
CREATE USER '用户名'@'主机名' IDENTIFIED BY '密码';
• 用户名:新用户的名称。 • 主机名:指定用户可以从哪些主机连接到数据库。可以使用 %
表示任何主机,localhost
表示仅限本地主机。• 密码:为新用户设置的密码。
示例
创建一个用户 testuser
,允许从本地主机连接,密码为 testpassword
:
CREATE USER 'testuser'@'localhost' IDENTIFIED BY 'testpassword';
2. 设置用户密码
在 MySQL 8 中,可以使用 ALTER USER
语句来修改用户密码。语法如下:
ALTER USER '用户名'@'主机名' IDENTIFIED BY '新密码';
示例
将用户 testuser
的密码修改为 newpassword
:
ALTER USER 'testuser'@'localhost' IDENTIFIED BY 'newpassword';
3. 授权
使用 GRANT
语句为用户授予权限。语法如下:
GRANT 权限 ON 数据库名.表名 TO '用户名'@'主机名';
• 权限:可以是 SELECT
、INSERT
、UPDATE
、DELETE
、ALL PRIVILEGES
等。• 数据库名.表名:指定授权的数据库和表。如果授权整个数据库,可以使用 数据库名.*
;如果授权所有数据库,可以使用*.*
。
示例
• 授予用户 testuser
对数据库testdb
的所有权限:GRANT ALL PRIVILEGES ON testdb.* TO 'testuser'@'localhost';
• 授予用户 testuser
对数据库testdb
中的表testtable
的查询权限:GRANT SELECT ON testdb.testtable TO 'testuser'@'localhost';
4. 刷新权限
在修改用户权限后,需要刷新权限以使更改生效。使用以下命令:
FLUSH PRIVILEGES;
完整示例
以下是一个完整的示例,创建用户、设置密码并授权:
-- 创建用户
CREATEUSER'testuser'@'localhost' IDENTIFIED BY'testpassword';
-- 修改用户密码
ALTERUSER'testuser'@'localhost' IDENTIFIED BY'newpassword';
-- 授权
GRANTALL PRIVILEGES ON testdb.*TO'testuser'@'localhost';
-- 刷新权限
FLUSH PRIVILEGES;
注意事项
1. 安全性:确保密码复杂且安全,避免使用简单密码。 2. 权限最小化原则:只授予用户完成其任务所需的最小权限,避免授予过多权限。 3. 主机名限制:如果用户需要从其他主机连接,需要将主机名设置为 %
或具体的 IP 地址。

优网科技秉承"专业团队、品质服务" 的经营理念,诚信务实的服务了近万家客户,成为众多世界500强、集团和上市公司的长期合作伙伴!
优网科技成立于2001年,擅长网站建设、网站与各类业务系统深度整合,致力于提供完善的企业互联网解决方案。优网科技提供PC端网站建设(品牌展示型、官方门户型、营销商务型、电子商务型、信息门户型、微信小程序定制开发、移动端应用(手机站、APP开发)、微信定制开发(微信官网、微信商城、企业微信)等一系列互联网应用服务。