如何比较PostgreSQL表的定义(compare table ddl)
背景 一位网友提到的需求, 在PostgreSQL中如何比对两个表的定义差异. 如果只比对字段类型, 不比对约束, 触发器, 策略, 权限等其他属性的话, 只需要使用pg_attribute这个catalog即可. 例子 : 创建两个测试表, postgres=# create table tbl1 (i...
背景 一位网友提到的需求, 在PostgreSQL中如何比对两个表的定义差异. 如果只比对字段类型, 不比对约束, 触发器, 策略, 权限等其他属性的话, 只需要使用pg_attribute这个catalog即可. 例子 : 创建两个测试表, postgres=# create table tbl1 (i...
背景 PostgreSQL 9.5新增一个参数, 可以记录流复制协议中用到的命令到日志中. log_replication_commands = on 协议解释详见 : http://www.postgresql.org/docs/devel/static/protocol-replication.h...
背景 PostgreSQL 9.5新增的一个功能, 允许用户开启过关闭记录事务提交时间. 代码见 src/backend/access/transam/commit_ts.c * commit_ts.c * PostgreSQL commit timestamp manag...
背景 之前写过一篇使用函数来快速生成外部表的建表DDL的方法. 从metadata中抽取表名, 字段名, 类型, 封装成外部表的建表语句. 感兴趣的朋友可以参考如下 : 《PostgreSQL 使用函数生成 外部表DDL(use function generate foreign table DDL in ...
背景 PostgreSQL 9.5 新增了一个非常给力的安全相关特性, 精细化控制用户对数据的可视性, 可写性. 这种方法有利于隔离控制共享表在多个用户之间的数据呈现和使用. 实现方法, 创建针对表和角色的策略, 不同的角色对表记录的查询, 插入, 更新, 删除 可以有不同的控制方法. CREATE PO...
背景 本文讲一下聚合函数的最后一个分类, Hypothetical-Set Aggregate Functions. 这类聚合函数还有对应的窗口函数, 首先来看一下对应窗口函数的用法. 函数 返回类型 描述 ra...
背景 本文主要讲一下分组排序聚合的例子. Table 9-51. Ordered-Set Aggregate Functions Function Direct Argument Type(s) Aggregated Argument Type(s) ...
背景 本文主要描述一下如何给虚拟机添加硬盘, CPU, 网卡. 例子 添加硬盘 创建硬盘文件 # qemu-img create -f qcow2 -o encryption=off,cluster_size=2M,preallocation=full /data03/kvmdisk/disk02.img 1...
背景 在装好后, 发现一个问题, 即使我的虚拟机上没跑任何用户进程, 在宿主机上对应的qemu-kvm进程的CPU利用率也有9.0左右. 本文将要介绍一下优化的方法,主要是精简配置,以及设置对应的CPU FLAG。 优化过程 删掉一些不必要的控制器(如USB), 然后添加CPU模块, 使用本地CPU的flag...
背景 和前面一篇文章类似, 但是本文主要讲的是用kickstart脚本或text模式安装KVM虚拟机操作系统的过程。 http://blog.163.com/digoal@126/blog/static/16387704020153142253971/ 本文讲述使用kickstart文件安装kvm虚拟机, 因...