首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Mysql没有列出根用户的所有数据库

Mysql没有列出根用户的所有数据库
EN

Stack Overflow用户
提问于 2022-10-04 13:55:48
回答 1查看 85关注 0票数 0

我在k8s集群上运行了一个mysql数据库。以前,当我通过mysql -u root -p登录并输入密码时,它列出了所有的数据库。但我的应用程序无法连接到该数据库,并向1045, "Access denied for user 'root'@'ipaddress' (using password: YES)"显示只有一台主机,即%,而用户是root用户

我也更新了秘密并重新启动部署,但仍然显示了上述错误。

然后运行此命令将所有权限授予root用户。

代码语言:javascript
复制
GRANT ALL ON root.* TO 'root'@'localhost' IDENTIFIED BY 'password';

它为根用户再创建一个主机,即本地主机。现在当我尝试用

代码语言:javascript
复制
mysql -u root -p

它不是列出我的数据库,只是显示

现在宿主是本地宿主。我该怎么做才能拿回我的数据库。

EN

回答 1

Stack Overflow用户

发布于 2022-10-04 17:41:45

在MySQL中,对由用户名和主机名[1]。组成的“帐户”授予权限,因此在授予方面:

代码语言:javascript
复制
myuser@127.0.0.1
myuser@192.168.1.1

以上是两个不同的用户。权限方面的通配符是%。然而,正如解释的那样,%localhost是相互排斥的。

因此,考虑到这一点,您需要运行一些类似于:

代码语言:javascript
复制
CREATE USER 'root'@'%' IDENTIFIED BY 'changeme';
GRANT ALL PRIVILEGES ON your_database_name.* TO 'root'@'%';

以便启用来自不同主机的连接。请记住,应该避免使用用户名根。相反,使用专用用户来满足您的需要。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/73949032

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档