mysql/mariadb删除长用户名用户失败

wlp8pajw  于 2021-06-15  发布在  Mysql
关注(0)|答案(3)|浏览(439)

我正在为osx10.13运行mysql ver15.1distrib10.3.9-mariadb,有一批用户(大约14个)的用户名显然太长,请参见下面的内容。

MariaDB [(none)]> SELECT Host, User FROM mysql.user;
+-----------+-------------------------+
| Host      | User                    |
+-----------+-------------------------+
| 127.0.0.1 | tenant_2SxSBywyXh3QW5L4 |
| 127.0.0.1 | tenant_4j3CWVXjgtDD2OrI |
| 127.0.0.1 | tenant_5OOBxRgjSvFehwI2 |
| 127.0.0.1 | tenant_6C3vAqBTVns8rMTT |
| 127.0.0.1 | tenant_9PVCY1Msa61u43Oh |
| 127.0.0.1 | tenant_RyFspluIGEi3Fkby |
| 127.0.0.1 | tenant_SQtfEQZmWRFfKmHy |
| 127.0.0.1 | tenant_VC8pYaJ3it1LdYK3 |
| 127.0.0.1 | tenant_Zr84h3vkLdwkqR33 |
| 127.0.0.1 | tenant_cvifD1I2Rjghjnpu |
| 127.0.0.1 | tenant_jO1tUJJokremTW5P |
| 127.0.0.1 | tenant_p6Bhzhi0OqMH4gc9 |
| 127.0.0.1 | tenant_rjyOX1NqEN6k6mk4 |
| 127.0.0.1 | tenant_xfcHjsn0mHBfURAw |
| 127.0.0.1 | test_testing_local      |
| localhost | mysql.session           |
| localhost | mysql.sys               |
| localhost | root                    |
+-----------+-------------------------+
18 rows in set (0.000 sec)

当我尝试使用以下命令删除这些用户时,我遇到了以下错误:

MariaDB [(none)]> DROP USER 'tenant_5OOBxRgjSvFehwI2@127.0.0.1';
ERROR 1470 (HY000): String 'tenant_5OOBxRgjSvFehwI2@127.0.0.1' is too long for user name (should be no longer than 32)
MariaDB [(none)]> DROP USER 'tenant_5OOBxRgjSvFehwI2@localhost';
ERROR 1470 (HY000): String 'tenant_5OOBxRgjSvFehwI2@localhost' is too long for user name (should be no longer than 32)

你知道我该怎么删除这些用户吗?
最恼人的副作用是打开sequalpro时,我收到14个错误(一个接一个)通知我这个用户名太长。

另外,另一个奇怪的问题,我很感兴趣的是,为什么当这些用户名只有22-24个字符长时,他们会导致。。。太长的用户名(应该不超过32)错误,因为他们没有违反32个字符的限制?
感谢您的帮助:)

2ic8powd

2ic8powd1#

你可以尝试几种选择。可以尝试最新的sequelpro测试版本。测试构建(3477d22)似乎解决了我的长名称问题。测试生成如下:https://sequelpro.com/test-builds
或者是最新的开发版本。http://nightly.sequelpro.com/ 对我来说,使用mariadb 10.x服务器和每夜构建,它对我也很有用。

zvms9eto

zvms9eto2#

我无法重现这个问题:

MariaDB [(none)]> SELECT VERSION();
+-----------------+
| VERSION()       |
+-----------------+
| 10.3.11-MariaDB |
+-----------------+
1 row in set (0.000 sec)

MariaDB [(none)]> DESC mysql.user; -- User char(80)
+------------------------+-----------------------------------+------+-----+----------+-------+
| Field                  | Type                              | Null | Key | Default  | Extra |
+------------------------+-----------------------------------+------+-----+----------+-------+
| Host                   | char(60)                          | NO   | PRI |          |       |
| User                   | char(80)                          | NO   | PRI |          |       |
.
.
.
+------------------------+-----------------------------------+------+-----+----------+-------+
47 rows in set (0.001 sec)

MariaDB [(none)]> CREATE USER 'tenant_5OOBxRgjSvFehwI2'@'127.0.0.1';
Query OK, 0 rows affected (0.001 sec)

MariaDB [(none)]> DROP USER 'tenant_5OOBxRgjSvFehwI2@127.0.0.1';
ERROR 1396 (HY000): Operation DROP USER failed for 'tenant_5OOBxRgjSvFehwI2@127.0.0.1'@'%'

MariaDB [(none)]> DROP USER 'tenant_5OOBxRgjSvFehwI2I'@'127.0.0.1'; -- Wrong user
ERROR 1396 (HY000): Operation DROP USER failed for 'tenant_5OOBxRgjSvFehwI2I'@'127.0.0.1'

MariaDB [(none)]> DROP USER 'tenant_5OOBxRgjSvFehwI2'@'127.0.0.1';
Query OK, 0 rows affected (0.001 sec)
7uhlpewt

7uhlpewt3#

您必须注解“username”@“host”。。。
用途:

DROP USER 'tenant_5OOBxRgjSvFehwI2'@'127.0.0.1';

相关问题