我正在尝试通过pycharm中的sqlalchemy创建一个postgresql
数据库(运行python 3.6),但是无法连接/创建数据库。
我最初开始使用sqlalchemy
教程:
from sqlalchemy import create_table
engine =create_engine("postgresql+psycopg2://scott:tiger@localhost/test")
connection = engine.connect()
connection.close()
但它打印错误:could not connect to server: Connection refused (0x0000274D/10061)
Is the server running on host "localhost" (127.0.0.1) and accepting
TCP/IP connections on port 5432?
我应该如何打开端口或将其指向localhost?
在运行create_engine
之前,我是否需要做一些特定的事情才能创建数据库?
我也一直在网上搜索,发现也许我应该使用psycopg2
创建数据库,但我不明白这是怎么做的。
我想要的是在我的桌面上,在特定文件夹中创建一个postgresql
数据库。
答案 0 :(得分:1)
假设您已安装psycopg2
连接器,那么您需要在连接字符串中指定的所有内容都是postgresql
,因此您的连接字符串将类似于
postgresql://tim:xyzzy@somehost/somedb
默认情况下,PostgreSQL仅侦听localhost
IP地址127.0.0.1。因此,如果PostgreSQL服务器位于不同的系统上,则需要在postgresql.conf
中配置监听地址
在尝试使用SQLAlchemy连接数据库之前,您还需要创建数据库。因此,当您以PostgreSQL用户身份登录时,您需要createdb
。
tim@merlin:~$ sudo -i -u postgres
postgres@merlin:~$ createdb foo
postgres@merlin:~$