我无法在本地调试PsyNet实验,因为我在终端中看到以下错误(我使用的是带有Dallinger 7.7的PsyNet v5.0.2(:
Exception: Failed to connect to Postgres at postgresql://dallinger:dallinger@localhost/dallinger. Is Postgres running on port 5432?
我尝试重新加载postgres,但没有修复它。
不幸的是,由于隐私限制,我无法在这里分享完整的实验代码,但我希望有人熟悉错误消息。
我找到了上面问题的解决方案。有时,PostgresSQL会崩溃,你可能会得到上面或下面的错误:
❯❯ There was a problem connecting to the Postgres database!
这个问题可能是由于几个原因造成的,但我发现以下程序可以有力地解决这个问题:
您可以使用postgres -D /usr/local/var/postgres
检查PostgreSQL是否正常运行;如果以上操作不起作用,将返回一个错误。
如果出现错误,则说明您的数据库已因崩溃而损坏。尝试以下操作:
rm /usr/local/var/postgres/postmaster.pid
如果这不起作用,或者你找不到文件(postmaster.pid(。然后按照相同的顺序尝试以下步骤:
- 停止postgress服务:
brew services stop postgresql
- 完全卸载计算机中的postgress:并删除计算机中的所有postgress数据库和postgress文件夹:
brew uninstall postgresql
rm -rf /usr/local/var/postgres
rm -rf .psql_history .psqlrc .psql.local .pgpass .psqlrc.local
- 再次安装postgress:
brew install postgresql
- 开始进度:
brew services start postgresql
- 按照dallinger文档中的说明安装数据库,以创建新的用户数据库(因为计算机崩溃可能会导致数据库被删除(:
createuser -P dallinger --createdb
(Password: dallinger)
createdb -O dallinger dallinger
createdb -O dallinger dallinger-import
这应该能解决问题。