sum*_*mit 2 postgresql logging rds
我们在RDS上使用Postgres 9.5,并且有一个用例可以在运行批量插入时关闭SQL日志记录。批量插入SQL语句很大,并且记录它并没有太多好处,因为我们知道它比设置log_min_duration需要更多的时间。
正如提到的这个帖子,我想通过psql客户端可以做SET_CONFIG。不幸的是,我被拒绝了。通过psql登录的用户是rds_superuser的成员。
SELECT current_setting('log_statement');
???????????????????
? current_setting ?
???????????????????
? mod             ?
???????????????????
(1 row)
SELECT set_config('log_statement', 'mod', false);
ERROR:  42501: permission denied to set parameter "log_statement"
LOCATION:  set_config_option, guc.c:5804
关于我们为什么拒绝许可的任何想法,其次人们知道是否有可能在运行时在RDS上的postgres中更改此设置
RDS对香草Postgres使用不同的权限模型,因此该rds_superuser角色实际上并不具有“真正的”超级用户所拥有的所有权限。实际上,RDS是一种“托管”数据库托管解决方案,完全访问权限将为您提供破坏或损害该管理的功能。相反,此角色被授予特定权限列表。
对于大多数配置,您必须使用Amazon所谓的“ 参数组 ”,该参数组通过AWS控制台或API进行管理。
在Postgres RDS中有一个关于登录的特定页面,其中提供了一些使用参数组设置log_statement选项的示例。
这意味着您无法在数据库连接中(例如在pl/pgsql函数中)动态更改设置,但是可以使用AWS API或官方CLI客户端将其作为批处理作业的一部分进行更改。
| 归档时间: | 
 | 
| 查看次数: | 956 次 | 
| 最近记录: |