Postgresql 如何列出Postgres中的所有会话变量?
我想知道对于当前经过身份验证的Postgresql 如何列出Postgres中的所有会话变量?,postgresql,variables,Postgresql,Variables,我想知道对于当前经过身份验证的psql用户是否有会话变量 但接下来我想知道一个更广泛的问题——我如何才能看到所有会话变量是什么? 如果我能看到一个完整的变量列表,我可能会发现一些有趣的变量 我只是在网上看到如何得到一个变量的值。不是列表…PostgreSQL没有服务器端会话变量,因此不清楚您在问什么 一些PL(如PL/Python、PL/Perl)具有会话变量(例如PL/Perl中的%\u SHARED、PL/Python中的GD和SD),但它们是PL的内部变量,而不是服务器本身的一部分 psq
psql
用户是否有会话变量
但接下来我想知道一个更广泛的问题——我如何才能看到所有会话变量是什么?
如果我能看到一个完整的变量列表,我可能会发现一些有趣的变量
我只是在网上看到如何得到一个变量的值。不是列表…PostgreSQL没有服务器端会话变量,因此不清楚您在问什么 一些PL(如PL/Python、PL/Perl)具有会话变量(例如PL/Perl中的
%\u SHARED
、PL/Python中的GD
和SD
),但它们是PL的内部变量,而不是服务器本身的一部分
psql
也有变量,您可以使用\set
进行设置,并且可以使用相同的命令获得列表。我想那不是你想要的
也许您指的是所谓的自定义
GUC
配置参数,它们有时被滥用为会话变量。您可以使用SHOW ALL
或SELECT*FROM pg_catalog获得这些参数的列表。pg_settings
Alvaro回答了如何列出当前参数值的问题
要获取经过身份验证的用户,可以调用SQL函数session\u user
:
SELECT session_user;
当前有效的用户可以通过
SELECT current_user;
在psql
中,您可以查看当前与的数据库会话的详细信息
\conninfo