我正在尝试将我的Google Colab连接到我的Postgres DB。当我尝试从Jupyter Notebook连接到时,它正在工作,所以我猜我的凭据很好。这是我得到的错误:
无法连接到服务器:没有这样的文件或目录
服务器是否在本地运行并接受Unix域套接字上的连接"/var/run/postgresql/.s.PGSQL.5432";?
如何解决它?我的Postgres在我的机器上运行。
谢谢!
您也可以在Colab中安装PostgreSQL。
# install
!apt install postgresql postgresql-contrib &>log
!service postgresql start
!sudo -u postgres psql -c "CREATE USER root WITH SUPERUSER"
# set connection
%load_ext sql
%config SqlMagic.feedback=False
%config SqlMagic.autopandas=True
%sql postgresql+psycopg2://@/postgres
然后您可以使用%sql
或%%sql
魔术进行查询
df = %sql SELECT * FROM pg_catalog.pg_tables
df
您的Jupyter
在本地工作,这就是它看到Postgres
的原因。Google Colab
在云中的某个地方,所以它不是:(
您需要将Colab
连接到本地运行时:
连接到本地运行时:在Colaboratory中,单击"连接"按钮,然后选择"连接到本地执行时…"。在显示的对话框中输入上一步的URL,然后单击"连接(Connect("按钮。在此之后,您现在应该连接到本地运行时。
(有关前一步的URL等详细信息,请参阅来源:https://research.google.com/colaboratory/local-runtimes.html)
然后你可以试试这样的东西:
%sql postgresql://username:@localhost:5432/username
但我不确定它是否有效。