后端技巧
- 查看数据目录中的文件
-
场景:您需要检查服务器数据目录中的文件,但没有服务器登录权限,或者您的服务器帐户没有必要的权限。
解决方法:使用PostgreSQL的通用文件访问函数,允许您列出和读取数据目录内(但不包括外部)的文件。
test=# SELECT pg_ls_dir('.'); pg_ls_dir ----------------- base global pg_clog pg_hba.conf pg_ident.conf (...) pg_twophase PG_VERSION pg_wal postgresql.conf postmaster.opts postmaster.pid (18 rows)
test=# SELECT pg_read_file('postgresql.conf'); pg_read_file ------------------------------------------------------------------------------- # ----------------------------- + # PostgreSQL configuration file + # ----------------------------- + # + (...) #----------------------------------------------------------- + # CONNECTIONS AND AUTHENTICATION + #----------------------------------------------------------- + + # - Connection Settings - + + #listen_addresses = 'localhost' # what IP address(es) to listen on + # (change requires restart) + #port = 5432 # (change requires restart) + max_connections = 20 # (change requires restart) +
如果您需要访问服务器数据目录之外的文件,
file_fdw
扩展可能会有用。