psql连接字符串dbname参数显然不起作用?

时间:2018-06-19 14:47:21

标签: postgresql homebrew psql

我正在尝试使用第三方应用程序来运行数据库迁移。应用程序使用以下字符串启动连接(当前在开发人员模式下为无密码):

host=localhost port=5432 user=myuser dbname=desired_database sslmode=disable

尽管使用dbname参数,但用于迁移的数据最终存储在“ myuser”数据库中。

我以为这是软件的一个错误,直到我尝试按如下方式从外壳连接:

psql "host=localhost port=5432 user=myuser dbname=desired_database sslmode=disable"

这使我以与用户同名的身份进入数据库:

myuser=#

在psql shell中,我仍然可以连接到所需的数据库:

\c desired_database
You are now connected to database "desired_database" as user "myuser".
desired_database=#

此外,我可以直接从命令行进行如下连接:

psql -U myuser desired_database
desired_database=#

这可能是一条红线,但是我相信,如果我能解决命令行问题,那么我的软件问题将会得到解决。对于它的价值,我尝试使用超级用户进行连接以得到相同的结果。这是在通过Homebrew安装的使用PSQL 10.4的Macbook上。在我的Linux安装上,一切正常。我希望这是一个简单的配置问题。

0 个答案:

没有答案