PG_HGDB的博客

我们是中国基础软件先行者,其中自主产品HighgoDB依托于国际开源数据库软件PostgreSql数据库进行商业化版本的运作和研发。 同时作为中国开源软件推进联盟PostgreSQL分会的主办单位,在...

PostgreSQL 之 源码安装设置开机自启动

以下过程在redhat 7.4环境得到验证!设置PostgreSQL开机自启动PostgreSQL的开机自启动脚本位于PostgreSQL源码目录的contrib/start-scripts路径下这个路径是安装包解压完的路径。 linux文件即为linux系统上的启动脚本1)修改linux文件属性...

2018-02-28 17:49:47

阅读数:381

评论数:0

PostgreSQL 之 锁机制

当要增删改查表中的数据时,首先是要获得表上的锁,然后再获得行上的锁 postgresql中有8种表锁最普通的是共享锁 share 和排他锁 exclusive 因为多版本的原因,修改一条语句的同时,允许了读数据,为了处理这种情况,又增加了两种锁”access share”和”acess excus...

2018-02-28 17:45:14

阅读数:1245

评论数:0

PostgreSQL 之 锁的查看

要查看pg中的锁,需要查看pg_locks这个视图pg_locks 字段名称类型引用描述locktypetext 可锁对象的类型: relation, extend, page, tuple, transactionid, virtualxid, object, userlock, or advi...

2018-02-28 17:42:42

阅读数:1096

评论数:0

PostgreSQL 之 Pgpool概述

Pgpool-II简介1.相当于中间件,位于应用程序和PG服务端之间;2.提供连接池、负载均衡、自动故障切换等功能,负载均衡只针对读操作,写操作只发生在主节点上;3.Pgpool-II自身也可以配置为主从结构,避免单点故障,对外提供虚拟IP地址,当主节点故障后,从节点提升为新的主节点并接管虚拟IP...

2018-02-28 17:27:48

阅读数:220

评论数:0

Postgresql系统表pg_authid

    该系统表存储有关数据库认证的角色信息,在PostgreSQL中角色可以表现为用户和组两种形式。对于用户而言只是设置了rolcanlogin标志的角色。由于该表包含口令数据,所以它不是公共可读的。PostgreSQL中提供了另外一个建立在该表之上的系统视图pg_roles,该视图将口令字段填...

2018-02-27 23:03:04

阅读数:219

评论数:0

Postgresql系统表pg_attrdef

    该系统表主要存储字段缺省值,字段中的主要信息存放在pg_attribute系统表中。注意:只有明确声明了缺省值的字段在该表中才会有记录。 名字类型引用描述adrelidoidpg_class.oid这个字段所属的表adnumint2pg_attribute.attnum字段编号,其规则等同...

2018-02-27 23:02:16

阅读数:68

评论数:0

Postgresql系统表pg_attribute

    该系统表存储所有表(包括系统表,如pg_class)的字段信息。数据库中的每个表的每个字段在pg_attribute表中都有一行记录。 名字类型引用描述attrelidoidpg_class.oid此字段所属的表。attnamename 字段名。atttypidoidpg_type.oid...

2018-02-27 23:01:24

阅读数:560

评论数:0

PostgreSQL表间复制语句

在PostgreSQL中的SELECT INTO和INSERT INTO SELECT两种表复制语句都可以用来复制表与表之间的数据。1.  INSERT INTO FROM语句语句形式为:Insert into Table2(field1,field2,…) select value1,value...

2018-02-27 22:57:50

阅读数:780

评论数:0

pg_test_timing功能简析

pg_test_timingpg_test_timing是测量系统计时开销的工具,并确认系统时间永不倒退。收集时间数据速度慢的系统可能会导致EXPLAIN ANALYZE结果不准确。用法很简单:[highgo@Higtest ~]$ pg_test_timing -? Usage: pg_tes...

2018-02-26 14:38:49

阅读数:39

评论数:0

Postgresql性能监控视图小析(一)

Postgresql数据库针对性能和当前状态提供了很多统计视图,主要由几个参数(/视图)决定:track_counts 是否收集表和索引上的统计信息,默认为ontrack_function  可以是:none(关闭,默认值)  pl(只收集PL/PgSQL写的函数的统计信息)  “all” 表示收...

2018-02-26 13:56:39

阅读数:50

评论数:0

PSQL中命令实际执行的SQL

在启动psql的命令中添加 “-E”参数,运行”\”开头的命令就可以把实际的SQL打印出来。举例:[highgo@Higtest ~]$ psql -E psql (4.1.1) PSQL: Release 4.1.1 Connected to: HighGo Database V4...

2018-02-26 13:55:06

阅读数:1243

评论数:0

VACUUM FULL了解

在上一篇博客的基础上执行vacuum full:mydb=# vacuum full tbl_kenyon ; VACUUM mydb=# select pg_size_pretty(pg_relation_size('tbl_kenyon')); pg_size_pretty --------...

2018-02-24 16:53:00

阅读数:183

评论数:0

delete后进行VACUUM操作可能会释放空间

从中间删掉200W条数据:mydb=# select count(*) from tbl_kenyon ; count ---------- 20000000 (1 row)mydb=# select pg_size_pretty(pg_relation_size('tbl_kenyon')...

2018-02-24 16:38:38

阅读数:111

评论数:0

truncate table 是否会释放空间

mydb=# create table tbl_kenyon(id int,cname varchar(50),remark text); CREATE TABLEmydb=# insert into tbl_kenyon select generate_series(1,10000000),'...

2018-02-24 15:43:31

阅读数:826

评论数:0

Postgresql中drop table是否会释放空间

mydb=# create table tbl_kenyon(id int,cname varchar(50),remark text); CREATE TABLE mydb=# insert into tbl_kenyon select generate_series(1,10000000),...

2018-02-24 15:40:32

阅读数:771

评论数:0

《卸甲笔记》-PostgreSQL和Oracle的SQL差异分析之五:函数的差异(二)

PostgreSQL是世界上功能最强大的开源数据库,在国内得到了越来越多机构和开发者的青睐和应用。随着PostgreSQL的应用越来越广泛,Oracle向PostgreSQL数据库的数据迁移需求也越来越多。数据库之间数据迁移的时候,首先是迁移数据,然后就是SQL、存储过程、序列等程序中不同的数据库...

2018-02-23 09:59:27

阅读数:90

评论数:0

《卸甲笔记》-PostgreSQL和Oracle的SQL差异分析之五:函数的差异(一)

PostgreSQL是世界上功能最强大的开源数据库,在国内得到了越来越多机构和开发者的青睐和应用。随着PostgreSQL的应用越来越广泛,Oracle向PostgreSQL数据库的数据迁移需求也越来越多。数据库之间数据迁移的时候,首先是迁移数据,然后就是SQL、存储过程、序列等程序中不同的数据库...

2018-02-23 09:58:15

阅读数:148

评论数:0

《卸甲笔记》-PostgreSQL和Oracle的SQL差异分析之四:特殊字符和符号

PostgreSQL是世界上功能最强大的开源数据库,在国内得到了越来越多机构和开发者的青睐和应用。随着PostgreSQL的应用越来越广泛,Oracle向PostgreSQL数据库的数据迁移需求也越来越多。数据库之间数据迁移的时候,首先是迁移数据,然后就是SQL、存储过程、序列等程序中不同的数据库...

2018-02-23 09:56:30

阅读数:55

评论数:0

关于postgresql和oracle对于换行处理的不同之处

对于换行操作,postgresql和oracle在处理方式上是有区别的。 在postgresql查询: highgo=# select 'a''a'; ?column? ---------- a'a (1 row) highgo=# select 'a' 'a'; 错误: 语法错误 在...

2018-02-23 09:43:54

阅读数:243

评论数:0

表达式索引上的统计信息

众所周知PostgreSQL 允许在表达式上创建索引。一个索引列不一定必须为底层表(underlying table)中的一列,也可以为由表里的一列或多列计算得出的函数或者标量表达式(scalar expression)。这个特征是非常有用的,可以基于计算结果获得对于表的快速访问。例1一个常用的做...

2018-02-12 16:23:59

阅读数:181

评论数:0

提示
确定要删除当前文章?
取消 删除
关闭
关闭