前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >MOP 系列|MOP 三种主流数据库常用 SQL(三)PG篇

MOP 系列|MOP 三种主流数据库常用 SQL(三)PG篇

作者头像
JiekeXu之路
发布2024-05-28 17:13:35
850
发布2024-05-28 17:13:35
举报
文章被收录于专栏:JiekeXu之路JiekeXu之路
作者 | JiekeXu

来源 |公众号 JiekeXu DBA之路(ID: JiekeXu_IT)

MOP 不用多说,指的就是 MySQL、Oracle、PostgreSQL 三种目前最主流的数据库,MOP 系列打算更新 MOP 三种数据库的索引知识、高可用架构及常用 SQL 语句等等,上面已经更新了 MOP 索引相关的文章,今天打算整理一下这三种数据库的常用 SQL 知识,由于文章过长,今天更新中间的一篇之 MySQL 篇。第一篇 Oracle 相关的详见下方链接:MOP 系列|MOP 三种主流数据库常用 SQL(一)。第二篇 MySQL 常用 SQL详见下方链接:MOP 系列|MOP 三种主流数据库常用 SQL(二)

PostgreSQL 常用 SQL 大全

1、基础信息常用命令

0)查看版本
1)查看 PostgreSQL 数据库连接及数量
2)用户与角色
3)查看数据库实例启动时间
4)查看表空间
5)查看所有 schema
6)查看最后 load 配置文件的时间
7)查看表名
8)查看表结构
9)查看索引
10)查看视图
11)查看约束
12)查看触发器
13)查看序列
14)查询当前session所在客户端的IP地址及端口
15)查询当前数据库服务器的IP地址及端口
16)查询当前session的后台服务进程的PID
17)查看当前正在写的WAL文件
18)查看当前参数配置情况
19)查看某数据库的大小
20)查看各数据库数据创建时间
21)按占空间大小,顺序查看所有表的大小
22)查看表空间大小
23)查看表对应的数据文件
24)查看表上存在哪些索引以及大小
25)查看索引定义
26)查看过程函数定义
27)查看数据库实例是否正在做基础备份
28)查看当前数据库实例状态
29)查看是否归档
30)查看日志相关

查看运行日志的相关配置,运行日志包括Error信息,定位慢查询SQL,数据库的启动关闭信息,checkpoint过于频繁等的告警信息。

2、管理维护常用命令

1)清理pg_wal日志

表示删除 00000001000000000000001F 之前的所有日志

pg_wal日志没有设置保留周期的参数,即没有类似mysql的参数expire_logs_days,pg_wal日志永久保留,除非shell脚步删除几天前或pg-rman备份时候设置保留策略

2)切换pg_wal日志
3)切换下一个 log 日志文件
4)查杀正在执行的 SQL

取消正在长时间执行的SQL命令的方法有以下两种。 ·pg_cancel_backend(pid):取消一个正在执行的SQL命令。 ·pg_terminate_backend(pid):终止一个后台服务进程,同时释放此后台服务进程的资源。

这两个函数的区别是,pg_cancel_backend() 函数实际上是给正在执行的 SQL 任务置一个取消标志,正在执行的任务在合适的时候检测到此标志后会主动退出;但如果该任务没有主动检测到此标志就无法正常退出,此时就需要使用 pg_terminate_backend 命令来中止SQL命令的执行。

通常先查询 pg_stat_activity 以找出长时间运行的 SQL 命令

然后再使用 pg_cancel_backend() 取消该 SQL 命令,如果 pg_cancel_backend() 取消失败,再使用 pg_terminate_backend(),命令如下:

5)修改参数并重新加载生效

使用 alter system 命令将修改 postgresql.auto.conf 文件,而不是postgresql.conf,这样可以很好的保护 postgresql.conf 文件,假如你使用很多alter system 命令后搞的一团糟,那么你只需要删除 postgresql.auto.conf,再执行pg_ctl reload 加载 postgresql.conf 文件即可实现参数的重新加载。

如果修改了配置文件“postgresql.conf”后,要想让修改生效,有以下两种方法。 方法一:在操作系统下使用如下命令:

pg_ctl reload

方法二:在psql中使用如下命令:

osdba=# select pg_reload_conf();

注意,如果是需要重启数据库服务才能使修改生效的配置项,使 用上面的方法无效。使用上面的方法能使修改生效的配置项都是不需要重启数据库服务就能使修改生效的配置项。

6)查找行锁源头并查杀

全文完,希望可以帮到正在阅读的你,如果觉得有帮助,可以分享给你身边的朋友,同事,你关心谁就分享给谁,一起学习共同进步~~

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2024-05-22,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 JiekeXu之路 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • PostgreSQL 常用 SQL 大全
    • 1、基础信息常用命令
      • 0)查看版本
      • 1)查看 PostgreSQL 数据库连接及数量
      • 2)用户与角色
      • 3)查看数据库实例启动时间
      • 4)查看表空间
      • 5)查看所有 schema
      • 6)查看最后 load 配置文件的时间
      • 7)查看表名
      • 8)查看表结构
      • 9)查看索引
      • 10)查看视图
      • 11)查看约束
      • 12)查看触发器
      • 13)查看序列
      • 14)查询当前session所在客户端的IP地址及端口
      • 15)查询当前数据库服务器的IP地址及端口
      • 16)查询当前session的后台服务进程的PID
      • 17)查看当前正在写的WAL文件
      • 18)查看当前参数配置情况
      • 19)查看某数据库的大小
      • 20)查看各数据库数据创建时间
      • 21)按占空间大小,顺序查看所有表的大小
      • 22)查看表空间大小
      • 23)查看表对应的数据文件
      • 24)查看表上存在哪些索引以及大小
      • 25)查看索引定义
      • 26)查看过程函数定义
      • 27)查看数据库实例是否正在做基础备份
      • 28)查看当前数据库实例状态
      • 29)查看是否归档
      • 30)查看日志相关
    • 2、管理维护常用命令
      • 1)清理pg_wal日志
      • 2)切换pg_wal日志
      • 3)切换下一个 log 日志文件
      • 4)查杀正在执行的 SQL
      • 5)修改参数并重新加载生效
      • 6)查找行锁源头并查杀
相关产品与服务
数据库
云数据库为企业提供了完善的关系型数据库、非关系型数据库、分析型数据库和数据库生态工具。您可以通过产品选择和组合搭建,轻松实现高可靠、高可用性、高性能等数据库需求。云数据库服务也可大幅减少您的运维工作量,更专注于业务发展,让企业一站式享受数据上云及分布式架构的技术红利!
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档