使用SSL问题的create_engine问题SQLAlchemy

时间:2019-06-16 08:53:36

标签: python postgresql sqlalchemy

我正在尝试使用sqlaclhemy通过node.rightChild = Node(data)方法创建引擎。在ssl之前,我使用了以下命令:

!pip install webbrowser
import webbrowser
URL = "http://www.naver.com"
webbrowser.open(URL)

但是在开始使用ssl之后,它停止了工作。我尝试寻找类似的问题,发现debugger

但是当我尝试使用答案create_engin()时,我会得到一个错误

用户“ root”的密码身份验证失败

即使我的密码正确无误。我能够使用 psychopg2 api进行如下连接:

conn_string = r'postgresql://root:my_pass@hostname/db_name'
self.engine = create_engine(conn_string)

这对我有用,但是不好,因为我有使用sqlalchemy引擎的自己的api,而且我不想破坏它。 我试图找到一种方法来使用上面创建的conn创建引擎,但是我唯一能找到的是How do I connect to Postgresql using SSL from SqlAchemy+pg8000?,并且我不需要线程池,psycopg2也没有.pool。反正方法

在sqlalchemy失败的情况下,psycopg2如何成功?

1 个答案:

答案 0 :(得分:0)

因此,显然问题出在密码上。 当传递connect_args参数时,如果密码中包含一些特殊字符[对我来说是%],则sqlalchemy严重分析了字符串,因此您将获得针对用户“ root”错误的密码验证失败

[例如以下密码无法使用

kltgg2dds$fdslkj%3

但对于不带%的密码,它将起作用]