MySQL grant 语句中用户名区分大小写

问题描述 投票:0回答:1

我的印象是MySQL一般不区分大小写,尤其是在MS Windows中。在 MySQL 8.0.34 中,我运行了以下语句,但最后一条语句出现错误。错误消息为“错误代码:1410。不允许您使用 GRANT 创建用户”。一旦我将“USER1”更改为“user1”,它就可以工作。你能解释一下为什么吗?非常感谢。

DROP SCHEMA IF EXISTS db1;
CREATE SCHEMA db1;
USE db1;
CREATE TABLE Table1(
  productID INT primary key
);
DROP USER IF EXISTS user1;
CREATE USER user1 IDENTIFIED BY 'password111';
GRANT SELECT ON DB1.TABLE1 TO USER1;

我的系统的字符集和排序规则分别是'utf8mb4','utf8mb4_0900_ai_ci'。

mysql account case-sensitive sql-grant
1个回答
0
投票

https://dev.mysql.com/doc/refman/8.0/en/account-names.html

出于访问检查的目的,用户值的比较区分大小写。主机值的比较不区分大小写。

© www.soinside.com 2019 - 2024. All rights reserved.