首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >无法使用SQLAlchemy连接到MYSQL

无法使用SQLAlchemy连接到MYSQL
EN

Stack Overflow用户
提问于 2019-04-22 17:42:25
回答 1查看 1.5K关注 0票数 1

我无法连接到我的mysql。我正在使用pymysql连接到Mysql。

下面是我在Flask中的代码:

代码语言:javascript
复制
app.config["SQLALCHEMY_DATABASE_URI"] = "mysql+pymysql://"+config.get_config("MYSQL_DATABASE_USER")+":"\
                                        + config.get_config("MYSQL_DATABASE_PASSWORD")+"@"\
                                        + config.get_config("SERVER_HOST_NAME")+":"\
                                        + config.get_config("MYSQL_DATABASE_PORT")+"/"\
                                        + config.get_config("MYSQL_DATABASE_DB")

这是我的docker合成文件

代码语言:javascript
复制
version: "3"
services:
  db:
    build: ./db
    restart: always
    ports:
      - "3308:3306"
    environment:
      - MYSQL_USER=root
      - MYSQL_ROOT_PASSWORD=root@123
  flask:
    build: ./python-backend
    links:
      - db
    depends_on:
      - db
    ports: 
      - "7000:7000"
  angular:
    build: ./angular-template
    depends_on:
      - flask
    ports:
      - "4200:4200"

当我到达某条路线时,它会说

代码语言:javascript
复制
"(pymysql.err.OperationalError) (2003, \"Can't connect to MySQL server on '0.0.0.0' ([Errno 111] Connection refused)\")\n(Background on this error at: http://sqlalche.me/e/e3q8)"

我到底做错了什么,有什么线索吗?

这是我的配置文件

代码语言:javascript
复制
"SERVER_SECRET":"winter is coming",
            "MYSQL_DATABASE_USER": "root",
            "MYSQL_DATABASE_PASSWORD": "root@123",
            "MYSQL_DATABASE_DB": "template",
            "MYSQL_DATABASE_HOST": "172.17.0.1", #localhost
            "MYSQL_DATABASE_CHARSET": "utf-8",
            "MYSQL_DATABASE_PORT": "3306",
            "SERVER_HOST_NAME": "0.0.0.0", #localhost
            "SERVER_PORT": 7000,
            "SERVER_DEBUG": True
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-04-22 17:44:43

更改配置文件中的DB主机名-

代码语言:javascript
复制
"MYSQL_DATABASE_HOST": "db", #docker compose service name

似乎您正在使用SERVER_HOST_NAME来返回DB主机,请更改以下内容-

代码语言:javascript
复制
"SERVER_HOST_NAME": "db", #docker compose service name
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/55792373

复制
相关文章

相似问题

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