作者:雨淋铃
链接:https://www.zhihu.com/question/582960448/answer/2997151260
来源:知乎
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
只针对人大金仓的集中式关系数据库kes86:
结论:kes86应该是人大金仓对pg进行国产化改造后的产品,不是自研产品,二者之间的关系可以称为kingbase是postgresql的一个闭源发行版。
- 数据目录结构和组成基本一致。
- 进程结构基本一致,pg没有ksh和kwr(难得有不同)
- 集群:看看postgresql高可用的解决方案,然后看看kes86的集群管理,总有对的上号的,比如repmgr。
- walminer:开源产品,用于解析postgresql的wal日志,据了解应该为瀚高公司的工程师开发的(瀚高的数据库主要是基于pg进行国产化的产品,但瀚高对pg有很多反哺贡献,有基于pg的闭源发行版highdb,有基于pg的兼容Oracle的开源产品Ivorydb... ...)。
- kingbase有个pg模式,切换到pg模式之后,pg的原生命令基本上都能执行。
- 日常管理和Oracle模式下的一些命令,emmmm 关键词替换吧(pg_ → sys_ )
- 遇到什么问题,大部分情况下通过把问题中的kingbase换成postgresql再搜,基本上都能得正确的解决方案。
- ... ...
如何获取kingbase是基于pg的哪个大版本的两个方法:
- SYS_VERSION
[kingbase@centos7 data]$ pwd
/opt/Kingbase/ES/V8/data
[kingbase@centos7 data]$
[kingbase@centos7 data]$ ll | grep SYS_VERSION
-rw-------. 1 kingbase kingbase 3 1月 31 10:39 SYS_VERSION
[kingbase@centos7 data]$
[kingbase@centos7 data]$ cat SYS_VERSION
12
[kingbase@centos7 data]$
2. 表空间目录名
[kingbase@centos7 data]$ cd sys_tblspc/
[kingbase@centos7 sys_tblspc]$
[kingbase@centos7 sys_tblspc]$ ll
总用量 0
lrwxrwxrwx. 1 kingbase kingbase 21 3月 25 20:49 24576 -> /home/kingbase/mytbls
[kingbase@centos7 sys_tblspc]$
[kingbase@centos7 sys_tblspc]$ cd /home/kingbase/mytbls/
[kingbase@centos7 mytbls]$ ll
总用量 0
drwx------. 3 kingbase kingbase 19 3月 25 20:49 SYS_12_202209081
[kingbase@centos7 mytbls]$
[kingbase@centos7 mytbls]$
小声叨叨:如果觉得基于pg不好听,可以换一种说法,比如完美兼容pg。