首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >将MySQL数据库连接到Apache

问将MySQL数据库连接到Apache
EN

Stack Overflow用户
提问于 2018-01-15 08:44:15
回答 1查看 10K关注 0票数 3

我试图将MySQL数据库连接到Apache,但是报告了以下错误:

代码语言:javascript
复制
sqlalchemy.exc.OperationalError: (_mysql_exceptions.OperationalError) (1045, "Access denied for user 'supersetuser'@'localhost' (using password: YES)")

我正在使用MAMP,MySQL在端口8889上本地运行。我试图使用用户apache_superset的凭据连接数据库supersetuser。我试图在Apache中传递的SQLAlchemy URI如下所示:

代码语言:javascript
复制
mysql://supersetuser:superset@localhost:8889/apache_superset

我确信凭据是正确的,因为我刚刚创建了它们。此外,我还尝试将所需的特权分配给用户。

代码语言:javascript
复制
GRANT ALL PRIVILEGES ON `apache_superset`.* TO 'supersetuser'@'localhost' WITH GRANT OPTION;

但是,我仍然无法将数据库连接到Apache Superset。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-01-15 10:50:54

我设法通过用localhost替换127.0.0.1来找到解决方案。

因此,完整的SQLAlchemy URI变成:

代码语言:javascript
复制
mysql://supersetuser:superset@127.0.0.1:8889/apache_superset 

根据文档

在Unix上,MySQL程序特别对待主机名localhost,这种方式可能与其他基于网络的程序不同。对于到本地主机的连接,MySQL程序试图使用Unix文件连接到本地服务器。即使给出一个-端口或-P选项来指定端口号,也会发生这种情况。要确保客户端与本地服务器建立TCP/IP连接,请使用--host或-h指定主机名值为127.0.0.1,或指定本地服务器的IP地址或名称。

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

https://stackoverflow.com/questions/48259453

复制
相关文章

相似问题

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