MySQL:学校服务器上的错误 1227 (42000)

标签 mysql linux unix

您好,我想创建一个用户,但因为我没有权限而失败了?我使用“mysql –u huraibz001 –p”登录 这是我收到的以下错误消息:

ERROR 1227 (42000): Access denied; you need (at least one of) the CREATE USER privilege(s) for this operation

我也无法创建数据库,当然这也与我的权限有关。 然后我尝试了“展示补助金”;它向我展示了这一点:

Grants for huraibz001@localhost
GRANT USAGE ON *.* TO 'huraibz001'@'localhost' IDENTIFIED BY PASSWORD 'blablabla'

我还可以执行以下操作“select user(), current_user();”这给了我:

+----------------------+----------------------+
| user()               | current_user()       |
+----------------------+----------------------+
| huraibz001@localhost | huraibz001@localhost |
+----------------------+----------------------+
1 row in set (0.00 sec)

我也曾尝试使用“mysql -uroot -p”登录,但这不起作用,因为我认为 huraibz001 是根。有人可以逐步告诉我解决方案吗?

最佳答案

首先要做的是运行这个:

SHOW GRANTS;

您很快就会看到您被分配给了匿名用户以对 mysql 进行身份验证。

而不是用

登录mysql
mysql

这样登录:

mysql -uroot

默认情况下,root@localhost 拥有所有权限且没有密码。

如果您没有密码就无法以 root 身份登录,请执行以下操作:

步骤01)在my.ini的mysqld部分添加两个选项:

[mysqld]
skip-grant-tables
skip-networking

步骤02)重启mysql

net stop mysql
<wait 10 seconds>
net start mysql

步骤03)连接到mysql

mysql

步骤 04)从 root@localhost 创建密码

UPDATE mysql.user SET password=password('whateverpasswordyoulike')
WHERE user='root' AND host='localhost';
exit

步骤05)重启mysql

net stop mysql
<wait 10 seconds>
net start mysql

步骤 06) 使用密码以 root 身份登录

mysql -uroot -p

你应该从那里开始。

警告:Please remove anonymous users !!!

Source

关于MySQL:学校服务器上的错误 1227 (42000),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21811748/

相关文章:

MySQL从另一个具有可变增量的表插入

linux - AWK 每隔一列打印一次,从最后一列(和最后一列的旁边)开始进行 N 次交互(从右到左打印)

c++ - SNMP 类型 Unsigned32 的正确编码是什么?

linux - 使用 Sed 交换两个字符串

c - 制作模拟 UNIX shell

C、UNIX。通过 UNIX 套接字从 execlp 发送输出

mysql - 下面哪个数据库表设计比较好?

mysql myisam datetime 5.6.10 到 5.5.10 表损坏

mysql - 列名 'User ID' 的简单 WHERE 子句?

linux - 如何使用一个命令创建一组多个文件?