mysql> GRANT INSERT ON mydatabase.electricity TO 'root'@'117.141.0.18'; 1142 - INSERT command denied to user 'root'@'117.141.0.18' for table 'electricity' 还是报错怎么回事?
时间: 2023-07-06 10:35:21 浏览: 63
如果你执行了 GRANT 命令后,还是无法插入数据并报错,那么可能是因为你没有刷新权限。你可以使用以下命令刷新权限后再试一下:
```
FLUSH PRIVILEGES;
```
这个命令会重新加载 MySQL 的权限表,使新的授权设置生效。执行完该命令后,再尝试插入数据,看看是否还会报错。如果还有问题,请提供详细的错误信息,我会尽力帮你解决。
相关问题
mysql> INSERT INTO `mydatabase`.`electricity` (`data`, `room_no`, `value`) VALUES ('04-01-01', '119710', 140); 1142 - INSERT command denied to user 'root'@'117.141.0.18' for table 'electricity'
这个错误提示是因为当前 MySQL 用户(即 'root'@'117.141.0.18')没有向 'electricity' 表中插入数据的权限。你需要给该用户授予相应的权限才能执行 INSERT 操作。
你可以使用以下命令来授予该用户对 'electricity' 表的 INSERT 权限:
```
GRANT INSERT ON mydatabase.electricity TO 'root'@'117.141.0.18';
```
执行完上述命令后,该用户就能够向 'electricity' 表中插入数据了。如果你想给该用户授予其他操作权限,可以使用类似的 GRANT 命令进行设置。
1142 - INSERT command denied to user 'root'@'117.141.0.18' for table 'electricity' 还是报错怎么回事?
如果你执行了 GRANT 命令并刷新了权限,但还是无法插入数据并持续报错,那么可能是因为你的 MySQL 用户 'root'@'117.141.0.18' 没有被授予足够的权限,无法执行 INSERT 操作。
你可以检查一下该用户的权限设置,看看是否有 INSERT 权限和足够的其它权限,可以使用以下命令查看:
```
SHOW GRANTS FOR 'root'@'117.141.0.18';
```
如果你发现该用户没有足够的权限,可以使用 GRANT 命令进行授权,例如:
```
GRANT ALL PRIVILEGES ON mydatabase.* TO 'root'@'117.141.0.18';
```
该命令将授予用户 'root'@'117.141.0.18' 在 mydatabase 数据库中的所有表的所有权限。注意:授予过多的权限可能存在安全风险,因此请根据实际情况进行设置。
如果以上方法仍然无法解决问题,请提供更多详细的错误信息,我会尽力帮你解决。
阅读全文