logo
publist
写文章

简介

该用户还未填写简介

擅长的技术栈

可提供的服务

暂无可提供的服务

Greenplum备份恢复

Greenplum作为一个分布式数据库,其备份恢复的方式和pg还是有一些区别。其中gp支持两种模式的备份恢复:并行和非并行。两者的区别在于:并行方式中每台Segment主机都同时将数据写入到自己本地的磁盘存储上。而非并行的方式数据必须通过网络从Segment被发送到Master,然后由master接待你把所有的数据写入它的存储中。因此弊端也很明显:除了把I/O限制在一台主机上之外,非并行备份还..

#数据库
PostgreSQL实现oracle中rowid

oracle中可以通过rowid定位到一条数据。索引扫描就是先根据查询条件的到对应数据的rowid,然后通过rowid得到数据,也可以直接使用rowid来查询数据,比如select * from tbl where rowid=xxx; 在没有行迁移的情况下,rowid是固定不变的。在pg中索引扫描是先查询到数据的ctid,然后根据ctid去得到相应的数据。但是ctid和oracle中的rowid

#sql#数据库#postgresql
PostgreSQL创建synonym(兼容oracle)

oracle中支持对创建别名synonym,这个功能在某些场合十分有用。例如,当我们迁移数据库的时候,如果碰到用户名冲突的情况,我们可能只好将数据迁移到其它用户下面,但是在程序中使用到数据库里对象的地方就要修改了,这个时候使用synonym便是一个不错的选择。但是在pg中是不支持create synonym的语法的,不过我们也可以实现和oracle中同样的功能。例子:oracle创建synonym

#sql#数据库#postgresql
PostgreSQL、oracle、mysql中MVCC机制详解

1、MVCC介绍1.1、事务隔离级别MVCC,Multi-version Concurrency Control ,顾名思义指的是多版本并发控制。在介绍MVCC之前我们先来简单了解下事务的隔离级别:read uncommitted:脏读,一个事务可以读到另外一个事务未提交的数据,大多数关系型数据库不支持。read committed:提交读,一个事务可以读到其他事务已经提交的数据,大多数数据库的缺

#postgresql#mysql#oracle +1
PostgreSQL create type(兼容oracle)

pg中支持创建自定义类型create type,虽然和oracle中的自定义类型语法上有所差异,但是pg中的功能可以完全覆盖oracle中的自定义类型。oracle create type:https://docs.oracle.com/cd/B19306_01/server.102/b14200/statements_8001.htm#i2126568–创建自定义类型:SQL> c...

#sql#数据库#postgresql
oracle迁移达梦常见问题汇总

0、说明本文主要结合之前一次oracle迁移达梦的项目,将碰到的问题以及一系列踩过的坑列举出来供大家参考,数据库版本是达梦7。(本文中涉及到的部分对象名已用sch1,tab1等方式替换)1、整体情况迁移过程中失败任务数低于5%,大部分对象和数据都能够保证正常迁移。其中对于出错的任务,主要有导表和导函数包两部分。其中主要棘手的在与迁移函数包等对象时的问题。2、迁移错误详解2.1、通用问题...

#sql#数据库#oracle
PostgreSQL行列转换(兼容oracle pivot unpivot)

oracle11g开始内置了数据透视表pivot table这一功能,可以用来实现行列转换的功能,但是在数据量较大的时候使用性能就会较差。pivot语法为:SELECT ...FROM...PIVOT [XML](pivot_clausepivot_for_clausepivot_in_clause )WH...

#postgresql
PostgreSQL中的with递归(兼容oracle connect by)

oracle中的树状查询是比较常用的,通过connect by子句来实现。虽然在pg中默认不支持这种语法,但是可以用过with子句来实现类似的功能。with子句的RECURSIVE选项将WITH从单纯的句法便利变成了一种在标准SQL中不能完成的特 性。通过使用RECURSIVE,一个WITH查询可以引用它自己的输出 。例如下面这张表tbl:bill=# select * from tbl;...

#postgresql#数据库#sql +1
PostgreSQL select for update指定列(兼容oracle)

我们可以使用select for update语句来指定锁住某一张表,在oracle中我们可以在for update语句后指定某一列,用来单独锁定指定列的数据。oracle例子:建表:SQL> create table t1(id int, c2 varchar(20), c3 int, c4 float, c5 float);Table created.SQL> create tab

#sql#数据库#postgresql
PostgreSQL hint用法(兼容oracle)

Hint是Oracle数据库中很有特色的一个功能,pg和oracle的优化器一样也是CBO(基于成本的)。但是在pg中是没有hint的,但是我们可以去通过设置成本因子,设置优化器开关等方式来"建议"数据库按照我们的想法去生成执行计划,但是并不能强制,例如:bill=# explain select * from t1;QUERY PLAN...

#postgresql
    共 31 条
  • 1
  • 2
  • 3
  • 4
  • 请选择