Can';无法在Rstudio中连接到PostgreSQL,可能存在权限问题?

Can';无法在Rstudio中连接到PostgreSQL,可能存在权限问题?,r,postgresql,rstudio,R,Postgresql,Rstudio,我已经阅读了db.rstudio.com和其他网站上的文档,无法从rstudio连接到我的Postgres数据库。我在macos 10.14上。运行: con <- DBI::dbConnect(odbc::odbc(), Driver = "PostgreSQL Driver", Database = "mydatabase", UID = "myus

我已经阅读了db.rstudio.com和其他网站上的文档,无法从rstudio连接到我的Postgres数据库。我在macos 10.14上。运行:

con <- DBI::dbConnect(odbc::odbc(),
                       Driver = "PostgreSQL Driver",
                       Database = "mydatabase",
                       UID = "myuser",
                       PWD = "mypassword",
                       Host = "localhost",
                       Port = 5432)
起初,我在运行
odbcListDrivers()
时得到一个空列表,但是我能够通过将
odbcinst.ini
从全局
/etc
复制到我的用户(
cp/etc/odbcinst.ini~/.odbcinst.ini
)来让它显示postgres驱动程序的位置/值

类似地,
odbcListDataSources()
也没有返回任何内容,直到我做了同样的事情(
cp/etc/odbc.ini~/.odbc.ini

odbc.ini
odbcinst.ini
通过Finder被锁定,无法编辑,但可以通过nano/terminal进行编辑

我还试图通过Postgres的stack builder安装数据库驱动程序来解决这个问题,但没有改变任何事情

总的来说,我怀疑这是一个权限问题,但我不太确定下一步该怎么办

谢谢你的帮助


odbc.ini
的权限为:

-rw-rw-rw-@ 1 root  wheel   139B Mar 31 12:57 odbc.ini
我改为:

-rwxr-xr-x@ 1 myuser  wheel   139B Mar 31 12:57 odbc.ini
但这并没有解决问题,错误是一样的


odbcinst.ini
的内容是:

[PostgreSQL Driver]
Driver = /usr/local/lib/psqlodbcw.so
[PostgreSQL]
Driver = PostgreSQL Driver
Database = mydatabase
Servername = localhost
UserName = myuser
Password = mypassword
Port = 5432
odbc.ini
的内容是:

[PostgreSQL Driver]
Driver = /usr/local/lib/psqlodbcw.so
[PostgreSQL]
Driver = PostgreSQL Driver
Database = mydatabase
Servername = localhost
UserName = myuser
Password = mypassword
Port = 5432

odbc::odbcListDrivers()
提供:

 name       attribute
1 PostgreSQL Driver          Driver
2      ODBC Drivers Amazon Redshift
3   Amazon Redshift          Driver
                                                           value
1                                    /usr/local/lib/psqlodbcw.so
2                                                      Installed
3 /opt/amazon/redshift/lib/universal/libamazonredshiftodbc.dylib
        name       description
1 PostgreSQL PostgreSQL Driver
odbc::odbcListDataSources()
提供:

 name       attribute
1 PostgreSQL Driver          Driver
2      ODBC Drivers Amazon Redshift
3   Amazon Redshift          Driver
                                                           value
1                                    /usr/local/lib/psqlodbcw.so
2                                                      Installed
3 /opt/amazon/redshift/lib/universal/libamazonredshiftodbc.dylib
        name       description
1 PostgreSQL PostgreSQL Driver

我用信息更新了问题并删除了评论,谢谢。由于区分大小写(例如,驱动程序、数据库等),请尝试使用小写连接参数。或者,尝试DSN连接:
con,它现在可以正常工作了。数据库将显示在“连接”窗格中。我不知道发生了什么变化。我已经尝试了小写和DSN连接。无论如何,非常感谢你的帮助!我建议的哪个版本的试验有效?您能否重新尝试args的有标题的案例,看看是否失败?当然,我可以正式回答,以帮助将来遇到你同样问题的读者。然而,现在有效的方法在15分钟前就不起作用了。但是:控制台中的小写和大写以及连接GUI/对话都可以工作。DSN也可以工作。所以我仍然不知道是什么解决了这个问题。我用信息更新了问题并删除了评论,谢谢。由于区分大小写,请尝试使用连接参数的小写形式(即驱动程序、数据库等)。或者,尝试DSN连接:
con,它现在可以正常工作了。数据库将显示在“连接”窗格中。我不知道发生了什么变化。我已经尝试了小写和DSN连接。无论如何,非常感谢你的帮助!我建议的哪个版本的试验有效?您能否重新尝试args的有标题的案例,看看是否失败?当然,我可以正式回答,以帮助将来遇到你同样问题的读者。然而,现在有效的方法在15分钟前就不起作用了。但是:控制台中的小写和大写以及连接GUI/对话都可以工作。DSN也可以工作。所以我仍然不知道是什么解决了这个问题。