gpt4 book ai didi

mysql - 缺乏 SQL 经验 - 访问冲突

转载 作者:行者123 更新时间:2023-11-29 22:49:48 26 4
gpt4 key购买 nike

我在一家从事网络托管的 IT 公司工作,而且我个人对 SQL 非常缺乏经验*。

*看起来很糟糕

我的一个客户正在尝试将 Epos 系统与其 magento 网站集成,在 Epos 集成过程中,他们遇到了以下错误。

exception 'PDOException' with message 'SQLSTATE[42000]: Syntax error or access violation:

他向我发送了以下询问,以表明他声称应该纠正这种情况:

GRANT CREATE TEMPORARY TABLES on * to 'cl54-cslstores'@'%';
GRANT CREATE VIEW on * to 'cl54-cslstores'@'%';
GRANT CREATE ROUTINE on * to 'cl54-cslstores'@'%';
GRANT CREATE TRIGGER on * to 'cl54-cslstores'@'%';

显然,这四个片段应该可以解决他的问题,但是,当我运行命令时,我收到以下错误:

SQL query:

GRANT CREATE TEMPORARY TABLES ON * TO 'cl54-cslstores'@'%';

MySQL said: Documentation

1044 - Access denied for user 'cl54-cslstores'@'%' to database 'cl54-cslstores'

我以管理员身份使用数据库,因此我不明白如何存在权限/访问问题。

再次...我在使用 SQL 时完全没有任何线索,所以这可能是一个非常简单的修复,但我在 t'interwebs 上浏览了一下,找不到我能理解的解决方案,更不用说跟随了。

任何人都可以提供有关如何解决此问题的帮助吗?

提前谢谢您。

最佳答案

首先,您需要检查您登录的用户:

select user();

select_user 将显示您尝试登录的身份。然后运行此查询:

select current_user();

这将向您显示您实际连接的身份。您需要确认您是否以 root 用户身份登录 - 所以 root@localhost 在 mysql 中 - 如果不是,您应该注销并以 root 用户身份登录。

现在使用以下查询检查您的用户的授予权限:

SELECT host, user, password, Grant_priv, Super_priv FROM mysql.user;

这将生成一个用户列表,最后会将授予权限设置为 Y 或 N。如果设置为 N,则可以按如下方式更改权限:

UPDATE mysql.user SET Grant_priv='Y', Super_priv='Y' WHERE User='root';

然后,您需要刷新以前的权限并运行以下 sql 命令。

FLUSH PRIVILEGES;
GRANT ALL ON *.* TO 'root'@'localhost';

此链接可能对您有用:https://dba.stackexchange.com/questions/36008/error-1044-access-denied-to-user

希望有帮助!

编辑

您需要重置您的根用户帐户,然后按照上述说明进行操作,有关如何在 PhpMyAadmin 中执行此操作的信息如下:

http://dev.mysql.com/doc/refman/5.0/en/resetting-permissions.html

或者

https://askubuntu.com/questions/118772/how-to-change-root-password-for-mysql-and-phpmyadmin

关于mysql - 缺乏 SQL 经验 - 访问冲突,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28944951/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com