首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在python中连接云SQL时出现问题

在python中连接云SQL时出现问题
EN

Stack Overflow用户
提问于 2020-12-27 21:44:37
回答 2查看 49关注 0票数 0

我正在尝试连接到Cloud SQL上的数据库,但我一直收到相同的错误。不确定它是什么,并尝试了几种方法。

输入:

代码语言:javascript
复制
import pymysql
connection = pymysql.connect(host='127.0.0.1',
                             user='',
                             password='XXXX',
                             db='cmcsql')

输出:

代码语言:javascript
复制
C:\Users\Ejer\anaconda3\envs\pythonProject\python.exe C:/Users/Ejer/PycharmProjects/pythonProject/CloudSQL_test.py
Traceback (most recent call last):
  File "C:\Users\Ejer\anaconda3\envs\pythonProject\lib\site-packages\pymysql\connections.py", line 569, in connect
    sock = socket.create_connection(
  File "C:\Users\Ejer\anaconda3\envs\pythonProject\lib\socket.py", line 808, in create_connection
    raise err
  File "C:\Users\Ejer\anaconda3\envs\pythonProject\lib\socket.py", line 796, in create_connection
    sock.connect(sa)
ConnectionRefusedError: [WinError 10061] Der kunne ikke oprettes forbindelse, fordi destinationscomputeren aktivt nægtede det

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "C:/Users/Ejer/PycharmProjects/pythonProject/CloudSQL_test.py", line 2, in <module>
    connection = pymysql.connect(host='127.0.0.1',
  File "C:\Users\Ejer\anaconda3\envs\pythonProject\lib\site-packages\pymysql\__init__.py", line 94, in Connect
    return Connection(*args, **kwargs)
  File "C:\Users\Ejer\anaconda3\envs\pythonProject\lib\site-packages\pymysql\connections.py", line 327, in __init__
    self.connect()
  File "C:\Users\Ejer\anaconda3\envs\pythonProject\lib\site-packages\pymysql\connections.py", line 619, in connect
    raise exc
pymysql.err.OperationalError: (2003, "Can't connect to MySQL server on '127.0.0.1' ([WinError 10061] Der kunne ikke oprettes forbindelse, fordi destinationscomputeren aktivt nægtede det)")

Process finished with exit code 1
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2020-12-28 07:12:15

不能使用127.0.0.1连接云sql实例。

127.0.0.1 (在大多数情况下)用于本地主机连接(当您在客户端所在的同一台计算机上本地运行数据库服务器时)。相反,您应该使用为云sql实例提供的ip地址。您可以在Connect to this instance下的sql实例的overview选项卡中找到它。

您还应该在users选项卡上创建用户,然后在代码中使用它。

不要忘记身份验证,请查看connections选项卡并阅读有关它的更多信息here

确保你有适当的ip,用户,现有的数据库和从授权的网络连接应该可以做到这一点。

票数 2
EN

Stack Overflow用户

发布于 2020-12-27 21:49:56

默认情况下,PyMysql连接到端口3306,如果您的进程在不同的端口上运行,它将无法连接。

除了主机、用户、密码参数之外,您还必须提供运行sql进程的端口。

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

https://stackoverflow.com/questions/65466392

复制
相关文章

相似问题

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