为什么生产环境不推荐数据库部署在容器里


关于生产上能不能把数据库容器化,一直是有两种声音的。一种是反对,另一种是支持。两边都是公说公有理,婆说婆有理。本人则是保持中立,不是不能上,要分场景上,像核心业务肯定就不能上,但是像一些小业务或者存放一些配置信息那就可以上,这些问题不大。那我们接下来讨论下用容器的方式部署数据库会有那些问题。 1 持

PostgreSQL数据压缩技术


在以往文章我们有讲到 toask 技术,今天我们来了解下数据是怎么被压缩的。 我们先来复习下 Toask,在pg中,行不能跨页存储,为了存储更大的行,pg使用Toast技术将行压缩成更小的块。pg使用固定的页面大小(通常为8kb),并且不允许跨页存储。因此,单行不能直接存储很大的字段值。为了克服这个

一次有趣的后端数据返回乱码排查

Linux 

一、问题现象 在一个技术讨论群碰到一个有趣的故障,正好闲的没事,帮助小白排查一下。 前端页面返回的后台数据乱码,如下所示: 二、排查思路 像这种乱码问题,排查思路还是很好处理。 locale看下服务器的编码和数据库的编码就行了,这里要注意的是,不能只看 mysql 数据库编码,还要看characte

PostgreSQL TOAST技术解析


一、TOAST是什么? TOAST是“The Oversized-Attribute Storage Technique”(超尺寸字段存储技术)的缩写,主要用于存储一个大字段的值。

应用日志压缩归档

Shell 

分享一个将当天应用产生的日志进行压缩归档,并且删除一个月当天的日志。 #!/bin/bash LOG_SOURCE_DIR="应用系统的日志路径" ARCHIVE_DIR="/data/log/archive" # Create archive directory if it doesn't e

小试牛刀-Ansible


ansible介绍 Ansible是一款简单的运维自动化工具,只需要使用ssh协议连接就可以来进行系统管理,自动化执行命令,部署等任务。 Ansible的特点 1、ansible不需要单独安装客户端,也不需要启动任何服务 2、ansible是python中的一套完整的自动化执行

posgresql逻辑复制实战


搭建逻辑复制一般是为了迁移数据,所以并不要求从库只能只读,我们需只要搭建好两台 postgresql 就行了。 搭建逻辑复制需要把wal_level 修改成logical ,从库需要有主库配置要同步的表结构。 我们可以先把主库上的所有表结构导出来(不包括数据),然后去从库上执行。 pg_dump -

PostgreSQL逻辑复制详解


什么是逻辑复制 我们前面讲的都是基于物理的流复制,接下来我们来讲讲逻辑复制。pg 逻辑复制基于逻辑解析,将 wal 日志流解析成一定格式输出,从节点收到解析后的数据进行应用。 逻辑复制基于发布(Publisher)与订阅(Subscription)模型。 一个发布者可以有多个发布,一个订阅者上可以有

PostgreSQL物理复制槽


前言 相信大家学到这里,基础肯定很不错了。我们知道 wal 文件默认是 16M,wal_keep_size 默认是 0 ,表示不存放额外的 wal 日志,max_wal_size 表示 wal 目录的大小,如果超过了这个大小,有设置了归档的情况下,则会移动到归档目录里。在老版本里面这个参数是wal_

手工操作之主备切换和故障转移


手工主备切换 对于 Oracle 数据库的 DBA 来说,切换 Oracle 数据库主备库之间的角色过程叫作“switchover”,Oracle 提供了相应的“switchover”的一些较为复杂的命令和过程,对于 Postgresql 来说,切换操作的步骤毕竟简单。只需要以下几步操作: 停主库,