1044 - 用户“user”@“localhost”对数据库“db”的访问被拒绝

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

我尝试了很多方法,在我托管的新站点中通过 phpmyadmin 导入 sql 脚本来创建数据库和表。但我收到了错误,

1044 - 用户“user”@“localhost”访问数据库“db”被拒绝

我尝试直接创建一个示例数据库:

create database sampled;
我遇到了相同的访问被拒绝错误。

我也无法向用户授予权限,我收到相同的访问被拒绝错误。

以下是 show grants 命令的输出。

show grants;
GRANT USAGE ON . TO 'someuser'@'localhost' IDENTIFIED BY PASSWORD 'somepw' 

GRANT ALL PRIVILEGES ON someuser\_%.* TO 'someuser'@'localhost' 

如有任何帮助,我们将不胜感激。谢谢你。

mysql database phpmyadmin
8个回答
18
投票

如果您使用Godaddy,那么不要直接进入phpMyAdmin并运行sql命令。

您必须转到 MySQL® Databases 部分并在那里创建一个数据库。 然后创建一个用户并授予其权限来访问您刚刚创建的数据库。 现在您可以转到 phpMyAdmin 并编写 SQL 命令。

希望这有帮助


6
投票

这个错误在创建

user account
时就可以避免。必须使用以下命令来创建具有所有
user account
PRIVILEDGES

CREATE USER 'demouser'@'localhost' IDENTIFIED WITH mysql_native_password BY '***';

GRANT ALL PRIVILEGES ON *.* TO 'demouser'@'localhost' WITH GRANT OPTION;

ALTER USER 'demouser'@'localhost' REQUIRE NONE WITH MAX_QUERIES_PER_HOUR 0 MAX_CONNECTIONS_PER_HOUR 0 MAX_UPDATES_PER_HOUR 0 MAX_USER_CONNECTIONS 0;

CREATE DATABASE IF NOT EXISTS 'demouser';

GRANT ALL PRIVILEGES ON `demouser`.* TO 'demouser'@'localhost';

2
投票

很明显,用户

someuser
对数据库
db
没有适当的权限。您需要授予用户对数据库的权限才能纠正此问题。

如果您的机器人拥有管理权限,请联系您的管理员,向

someuser
授予权限
db


2
投票

对我来说,问题是我没有权限创建新的数据库名称,甚至没有权限修改数据库的名称。您可以联系您的管理员以获取权限,或者如果您想快速导入

.sql
文件...那么您可以使用文本编辑器打开 .sql 文件并找到以下行:

CREATE DATABASE IF NOT EXISTS `enter the existing db name` DEFAULT CHARACTER SET latin1 COLLATE latin1_swedish_ci;
USE `enter the existing db name`;

之后尝试导入

.sql
文件。现在您可以成功导入所有表格了!


1
投票

我遇到了同样的问题,我解决了它,购买更改了GRANTEE,并使用户可以在 PhpMyAdmin 中执行所有操作,请按照以下步骤操作:

  1. 以root权限进入mysql但是:

    sudo mysql 输入密码,然后输入:

    从 information_schema.user_privileges 中选择*; 并查看 IS_GRANTABLE 中的用户是或否。 如果他是,那么查看 PRIVILEGE_TYPE 可能是什么,如果它是真的,则可能只是两个操作,然后添加最后的操作。 并查看此链接将 IS_GRANTABLE 从 no 更改为 yes。 我希望这可以帮助你。


1
投票

必须确保您的用户名、密码和数据库名称正确。 如果您要处理数据库“sampled”,则在查询中键入“sampled”而不是“db”,还必须确保您不必在Statement中使用quota(')。


0
投票

您尚未从本地主机或 Web 服务器正确导出数据库,请按照以下步骤转到本地主机数据库,单击导出选项卡,然后选择“自定义 - 显示所有可能的选项”复选框,“输出”部分将打开几个选项,将压缩“无”更改为“压缩”,然后现在单击底部的“执行”按钮,它将正确导出您的数据库,您现在可以导入到托管或您想要的任何地方,不会出现错误


0
投票

我开始无缘无故地收到此错误消息。通过使用 MySQL 和

Server menu option;
解决了问题,选择了我的
bitnami_wordpress schema;
选择了
bn_wordpress user;
,然后选择了
Administrative Roles
选项卡并授予了该用户的访问权限。我必须对所有被删除访问权限的用户执行此操作。

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