ModuleNotFoundError:尝试使用 python 连接器连接到 cloudsql 实例时没有名为“google”的模块

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

getconn 现在设置为私有 IP

对于下面的代码,我收到 ModuleNotFoundError: No module named 'google' at line number 2, 谁能告诉我我必须在这里安装什么 python 包。

from google.cloud.sql.connector import Connector, IPTypes
import sqlalchemy

def getconn():
    conn = connector.connect(
      "instancename", # ::
      "pymysql",
      user="root",
      password="secret",
      db="mysql",
      ip_type=IPTypes.PRIVATE
    )
    return conn

# create connection pool
pool = sqlalchemy.create_engine(
    "mysql+pymysql://",
    creator=getconn,
)

# connect to connection pool
with pool.connect() as db_conn:
    # query database and fetch results
    results = db_conn.execute("SHOW TABLES ")

    # show results
    for row in results:
        print(row)

# cleanup connector
connector.close()
google-cloud-platform google-cloud-sql
2个回答
1
投票

您可能还没有安装该库:

python3 -m venv venv
source venv/bin/activate

python3 -m pip install cloud-sql-python-connector==0.9.3

python3 -m pip freeze | grep cloud
# cloud-sql-python-connector==0.9.3

请参阅库的文档:

cloud-sql-python-connector


0
投票

我通过此回复找到了解决方案,所以首先谢谢你!

我想知道如何测试连接到 Cloud SQL postgres 实例的 google 函数?我的意思是代码有连接器和连接以及所有内容,我在里面放置了一个查询,但是如果唯一的方法是发送 json 对象来测试它,我如何在 GCP 控制台中测试它?

谢谢

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