相关疑难解决方法(0)

给定数据库和用户的 search_path 是什么?

我可以看到电流search_path

show search_path ;
Run Code Online (Sandbox Code Playgroud)

我可以search_path当前会话设置:

set search_path = "$user", public, postgis;
Run Code Online (Sandbox Code Playgroud)

同样,我可以search_path为给定的数据库永久设置:

alter database mydb set search_path = "$user", public, postgis ;
Run Code Online (Sandbox Code Playgroud)

我可以使用以下命令永久设置search_path给定角色(用户):

alter role johnny set search_path = "$user", public, postgis ;
Run Code Online (Sandbox Code Playgroud)

但我想知道如何在更改数据库角色设置search_path之前确定它们是什么(相对于)?

postgresql configuration

73
推荐指数
3
解决办法
12万
查看次数

\dt 说“没有找到任何关系。”

我已经成功地使用了 Postgres 14,但现在我被难住了。我有一个abc包含表的数据库和架构。

\c abc
\dt     -- shows tables
Run Code Online (Sandbox Code Playgroud)

我创建了一个新的数据库/架构xyz,但我看不到我创建的表:

\c xyc
\dt
Did not find any relations.
Run Code Online (Sandbox Code Playgroud)

如果我使用 PgAdmin4 我可以看到xyz的表格。如果我使用 DbVisualizer 我可以看到xyz的表格。但是,如果我使用psql我得到的所有内容,那么我是用户还是我自己(也是超级用户)Did not find any relations. 似乎并不重要。我在 PgAdmin4 中创建了这些表。这是一个错误吗?我尝试更改数据库或架构中所有对象的所有者,但无论我尝试什么,如果我使用.postgrespsqlxyzxyzpsql

不确定这是否有任何启发:

xyz-# \conninfo
You are connected to database "xyz" as user "postgres" via socket in "/tmp" at port "5432".
xyz=# \l
                 List of databases
   Name    |  Owner   | Encoding |  Collate   |   Ctype    | …
Run Code Online (Sandbox Code Playgroud)

postgresql psql

4
推荐指数
1
解决办法
3万
查看次数

标签 统计

postgresql ×2

configuration ×1

psql ×1