使用pg_repack解决表膨胀问题


表膨胀的处理 如果只是测试数据库,或者业务允许每天有很长的停机维护时间,那么简单地在数据库中执行VACUUM FULL就可以了。但VACUUM FULL需要表上的排它读写锁,但对于需要不间断运行的数据库,我们就需要用到pg_repa

三大日志之一binlog

MySQL 

1. 什么是 binlog Binary log 是 MySQL server 层维护的重要二进制日志,用于记录数据库的所有更改操作。它记录了所有的 DDL 和 DML 语句(除了 select 和 show 外),并以事务的形式保存在磁盘中,以二进制的形式存储,不能直接使用 cat,tail 进行

Oracle监听

Oracle 

什么是监听 Oracle监听器(Listener)是一个监听客户端请求的网络服务,它在数据库实例与客户端之间架起了一座桥梁。监听器的主要功能如下: 接收客户端发送的连接请求。 将连接请求转发给相应的数据库实例。 监控连接状态

PostgreSQL模板数据库


当我们用 psql 登录输入 \l+ 或者 select * from pg_database;的时候,我们可以看到除了 postgres,还有 template1 和 template0 这两个数据库。当我切换template1数据库然后 \dt+想看看该数据库下有什么表的时候,却发现返回的是Di

Redo原理

Oracle 

redo 介绍 重做日志主要记录对数据所做的所有更改,包括未提交和已提交的更改。 Oracle通过Redo来保证数据库的事务可以被重演,从而使得在故障之后,数据可以被恢复。在数据库中,Redo的功能主要通过3个组件来实现:Redo Log Buffer、LGWR后台进程和Redo Log File(

INVISIBLE index不可见索引概念

Oracle 

今天刷题的时候看到一道有关 INVISIBLE index 的题目,没想到居然选错了。随即在网上找相关知识点牢记一下。 不可见索引概念 不可见索引(Invisible Index)是ORACLE 11g引入的新特性。不可见索引是会被优化器忽略的不可见索引,除非在会话或系统级别上将OPTIMIZER_

PG优化实战系列-32线程CPU100%


背景 前段时间在某现场遇到个问题,早上到项目现场,技术支持反映数据库不可查,32个现场的CPU直接全部100%。 为了尽快恢复使用,在得到业务同意情况下,直接重启Postgresql,重启后CPU恢复正常,未出现再持续增长情况。

Prometheus组件


下图展示Prometheus的基本架构: Prometheus Server Prometheus Server是Prometheus组件中的核心部分,负责实现对监控数据的获取,存储以及查询。 Prometheus Server可以通过静态配置管理监控目标,

部署安装Prometheus


下载 Prometheus 前面我们提到了 Prometheus 是采用 Go 语言开发的,直接使用独立的二进制文件即可部署。下面我们就在我们的 CentOS 机器上来下载 Prometheus。 首先为我们的课程创建一个工作目录: ☸ ➜ mkdir $HOME/p8strain

Redo原理

Oracle 

redo 介绍 重做日志主要记录对数据所做的所有更改,包括未提交和已提交的更改。 Oracle通过Redo来保证数据库的事务可以被重演,从而使得在故障之后,数据可以被恢复。在数据库中,Redo的功能主要通过3个组件来实现:Redo Log Buffer、LGWR后台进程和Redo Log File(