我刚安装了Postgressql(9.5.4 vc14_0)和Psycopg2(2.7.5 py36h74b6da3_0),我试图在Windows 10的Anaconda环境中使用它们。
每当我在python解释器中运行psycopg2.connect("host=localhost user=postgres")
或在命令行上运行psql
时,我都会收到此错误:
无法连接到服务器:连接被拒绝(0x0000274D / 10061)服务器是否在主机“localhost”(127.0.0.1)上运行并接受端口5432上的TCP / IP连接?
I've looked at other Stackoverflow questions regarding this,一些答案说要查看pg_hba.conf文件,虽然我无法找到任何文件。在哪里可以找到我的Anaconda Environment for Windows中的Postgresql的pg_hba.conf文件?如果我必须制作一个,应该怎么做呢?我还没有看到另一个使用我正在使用的Postgresql-Anaconda-Windows设置的SO问题。
我也研究过services.msc,但没有看到关于postgresql的服务。
我也遇到了这个错误。与您的操作类似,我按照安装页面运行conda install -c anaconda postgresql
并在您的帖子中收到相同的错误。
我之前通过直接安装使用postgresql,在osx中,据我所知,一旦安装完成,你可以将psql
放入数据库。
也许这不是anaconda安装的情况。我通过在一个新的空文件夹中初始化一个新的数据库系统来克服这个问题。在我的例子中,我在“\ AppData \ Local \ conda \”中创建了一个新文件夹
-- Initialize the database system
pg_ctl init -D <path_to_your_database_system>
-- Start the database
C:/Users/kerwei/AppData/Local/Continuum/anaconda3/envs/py36/Library/bin/pg_ctl -D <path_to_your_database_system> -l logfile start
注意:在玩了一段时间之后,我意识到一旦你退出conda环境,数据库实例也会被终止 - 没有正确关闭。因为我不把它用于制作东西,所以它并没有真正打扰我。但是,可以采取进一步的步骤,在conda activate
或conda deactivate
中包括数据库引导和关闭,以减少繁琐。