随笔分类 - oracle&mysql/mariadb
摘要:在postgresql 10支持声明式分区之前,分区是通过继承实现的,如下: CREATE TABLE measurement ( city_id int not null, logdate date not null, peaktemp int, unitsales int ); CREATE T
阅读全文
摘要:上一篇介绍了lightdb/postgresql public、pg_catalog schema的区别及pg_namespace概念,因为最近几个版本开发下来,遇到了很多兼容性挑战。所以这一节来专门讨论一下search_path,以及它是如何实现版本隔离和理论上可实现的租户隔离(实际上,light
阅读全文
摘要:CommandCounterIncrement的作用是使当前事务中前面语句的修改对本语句可见,相当于oracle中的当前读概念(current read,只不过oracle区分,pg不区分)。事务中每执行一个语句后,对后续语句都会直接可见。如下: zjh@postgres=# START TRANS
阅读全文
摘要:相比insert select,delete,如下: -- lightdb专有oracle匿名块写法 BEGIN TRANSACTION ISOLATION LEVEL REPEATABLE READ; insert into xx select xx from yy where id < xxx;
阅读全文
摘要:PG中别名的实现包括AS 别名和不带AS的别名,实现为AS_LABEL和BARE_LABEL之分。BARE_LABEL是可以直接做列别名,AS_LABEL是必须带as或双引号。 关键字作为别名的实现,也需要区分为AS_LABEL或BARE_LABEL。在PG的实现中,绝大部分都实现为BARE_LAB
阅读全文
摘要:先postgresql的页结构、页物理布局 postgresql 记录(元祖)物理布局 源码定义如下: struct HeapTupleHeaderData { union { HeapTupleFields t_heap; DatumTupleFields t_datum; }t_choice;
阅读全文
摘要:在postgresql中,函数有个不稳定性分类属性,它会影响优化器评估函数的可优化级别、同时也会影响postgresql中并行执行的可行性。 函数有三种类型:VOLATILE、STABLE以及IMMUTABLE。VOLATILE是函数默认类别,也就是优化器假设函数会修改数据库,不会做任何特定的优化。
阅读全文
摘要:lightdb原生支持uuid(), sys_guid()函数。lightdb@postgres=# create table test_uuid(uuid_t uuid); CREATE TABLE lightdb@postgres=# insert into test_uuid values(u
阅读全文
摘要:create server oradb foreign data wrapper oracle_fdw options (dbserver '//10.20.30.199:1521/test');create user mapping for USER server oradb options (u
阅读全文
摘要:https://github.com/hslightdb/ora2pg oracle到lightdb迁移手册:https://www.hs.net/lightdb/docs/Oracle%20%E8%BF%81%E7%A7%BBLightDB%E7%94%A8%E4%BE%8B.pdf
阅读全文
摘要:查看当前数据库 postgres=# select current_database(); current_database postgres (1 row) 查看数据库用户列表 postgres=# select * from pg_roles; rolname | rolsuper | roli
阅读全文
摘要:先看postgresql中的匿名块do $$ declare i record; begin for i in 100000..300000 loop insert into scott.departments select 100000 + i, 'dept' || 100000 + i, now
阅读全文
摘要:0、LightDB是基于PostgreSQL最新版的企业发行版,类似于redhat与linux内核的关系。 1、首先从lightdb官网www.hs.net/lightdb下载对应操作系统和CPU架构的版本,比如centos x86或kylinv10 arm; 2、然后安装手册或快速入门安装ligh
阅读全文
摘要:[root@hs-10-20-30-199 bin]# pstack 48430 #0 0x00007fbd9375a62e in strcoll_l () from /lib64/libc.so.6 #1 0x000000000087bc82 in varstrfastcmp_locale (a1
阅读全文
摘要:原本被寄予厚望的64位xid,因提交的patch多少不是非常完美,最后修订版的提交日期为5.13,考虑各种时间问题。该特性被推迟到16版本。 PostgreSQL 15 的第一个 beta 版本现已可供下载。公告指出,此版本包含 PostgreSQL 15 普遍可用时将提供的所有功能的预览,但该版本
阅读全文
摘要:PostgreSQL 全球开发组针对当前所有被支持版本发布了一次更新,版本包括:PostgreSQL 14.3、13.7、12.11、11.16 和 10.21。此次更新修复了一个安全漏洞并修复了过去三个月报告的 50 多个错误。 如果你在使用 ltree 数据类型的列上有任何 GiST 索引,你将
阅读全文
摘要:一、postgresql中的序列 1.1 场景需求 需要向下图一样,需要对产品编码编码设置一个序列。编码规则 SKU + 序列号: 1.2 序列 序列是基于bigint算法的,因此范围是不能超过一个八字节 整数的范围(-9223372036854775808 到 922337203685477580
阅读全文
摘要:zjh@postgres=# show %enc%; name | setting | description + + client_encoding | UTF8 | Sets the client's character set encoding. server_encoding | UTF8
阅读全文
摘要:如报错所示,很明显是字符集的问题。 设置如下: export NLS_LANG=AMERICAN_AMERICA.AL32UTF8 重连即可
阅读全文
摘要:LightDB发行版内置了直接访问oracle的扩展oracle_fdw。只要lightdb所在服务器安装了oracle客户端/服务器或轻量客户端,并配置环境变量即可使用。如下: export ORACLE_HOME=/home/zjh/instantclient_21_6 export LD_LI
阅读全文