pg_pathman

PostgreSQL 如何查找TOP SQL (例如IO消耗最高的SQL) (包含SQL优化内容)

北城余情 提交于 2020-09-24 13:25:55
目录 背景 一、安装pg_stat_statements 二、加载pg_stat_statements模块 三、配置pg_stat_statements采样参数 四、创建pg_stat_statements extension 五、分析TOP SQL pg_stat_statements输出内容介绍 最耗IO SQL 最耗时 SQL 响应时间抖动最严重 SQL 最耗共享内存 SQL 最耗临时空间 SQL 六、重置统计信息 慢SQL到底慢在哪里? 七、慢SQL、TOP SQL优化示例 八、常见优化点汇总 参考 背景 数据库是较大型的应用,对于繁忙的数据库,需要消耗大量的内存、CPU、IO、网络资源。 SQL优化是数据库优化的手段之一,优化什么SQL效果最佳呢?首先要了解最耗费资源的SQL,即TOP SQL。 从哪里可以了解数据库的资源都被哪些SQL消耗掉了呢? 资源分为多个维度,CPU,内存,IO等。如何能了解各个维度层面的TOP SQL呢? pg_stat_statements插件可以用于统计数据库的资源开销,分析TOP SQL。 一、安装pg_stat_statements 如果您使用的是云数据库,跳过安装,到create extension 部分。 pg_stat_statements是PostgreSQL的核心插件之一。可以在编译PostgreSQL时安装,也可以单独安装。

PostgreSQL密码安全策略

瘦欲@ 提交于 2020-04-22 01:48:48
引用地址: https://blog.csdn.net/weixin_34143774/article/details/89561946 请以原文为主,引用注明出处。 问题:今天公司进行软件测评,在测评期间,测评人员问起PostgreSQL登录失败导致用户锁定的次数,密码输错几次账户会被锁定? 网上查了一圈,oracle和mysql都有相关设置,只有pg库没有找到相关的设置参数。偶然发现网上的帖子,结果发现PG库尚不支持相关设置。 下面引用一下: 数据库密码管理是数据库安全的重要环节之一。密码管理及配置策略主要包括: 密码加密存储 密码有效期 密码复杂度 密码验证失败延迟 密码验证失败次数限制,失败后锁定, 以及解锁时间 设置密码时防止密码被记录到数据库日志中 下面会依次讲解在PostgreSQL中如何实现密码相关的安全性配置。 1、密码加密存储 pg中密码始终以加密方式存储在系统目录中。ENCREPED 关键字没有任何效果, 但被接受向后兼容。加密方式可以通过password_encryption参数配置。 postgres = # show password_encryption; password_encryption -- ------------------- md5 ( 1 row) postgres = # select * from pg_shadow where