我想通过 JDBC 驱动程序在我的应用程序中进行 postgresql 数据库日志记录
我发现有一个SQL查询,通过它可以获取日志文件的路径,这样就不用在应用程序中指定了,而他自己自动获取了他的路径“SHOW data_directory”,是这样的吗有效吗?
要生成配置,需要重新启动数据库,是否可以使用查询来实现数据库重新启动,或者除了手动重新启动之外还有什么其他选项?
SHOW data_directory
命令将返回存储日志文件的数据目录的路径。这是正确的,在我的例子中它返回 C:/Program Files/PostgreSQL/16/data
,另一种方法是使用
SELECT current_setting('data_directory') || '/' || current_setting('log_directory') AS log_directory;
这将为您提供日志文件的绝对路径。
关于你的第二个问题,我认为你正在寻找的是 pg_reload_conf() 函数,它将应用更改到 postgres 的配置。