2

新赛年首篇:mogdb数据库问答集萃 -利来国际app

多米爸比 4天前
87

q1.mogdb数据库支持哪些操作系统平台?

目前已经测试适配过redhat7/centos7/openeuler。

q2.如何快速搭建mogdb测试环境?

可以使用docker命令一键搭建并启动

docker run --name mogdb \
--privileged=true \
--detach \
--env [email protected] \
--publish 15400:5432 \
swr.cn-east-3.myhuaweicloud.com/enmotech/mogdb:2.0.1_amd

也可以使用墨天轮在线实训平台在线体验,链接如下:https://www.modb.pro/market/162869。

q3.为什么提示初始用户不能远程登录?

使用初始用户远程登录数据库会提示如下错误

forbid remote connection with initial user.

客户端登录的方式请参考下面这张图

q4.独立设置xlog目录分区有几种方式?

有三种方式可以进行设置,分别是在clusterconfig.xml文件设置、gs_initdb参数设置、手工调整。详细设置请参考<>

q5.mogdb是否支持ipv6,如何使用?

支持ipv6,配置使用请参考:<>

q6.如果不使用vip,应用层是否支持主备自动连接呢?

可以通过jdbc连接参数loadbalancehosts和targetservertype来自动连接,测试过程可参考:opengauss/mogdb/postgresql数据库高可用及负载均衡jdbc参数测试

q7.mogdb开源监控方案有哪些?

zabbix和prometheus是两种使用较多的方案,也可以组合使用。
参考文章如下:
<>
<>

q8.mogdb声明式表分区与postgresql有什么差异呢?

mogdb语法更精简,不需要像postgresql分成两步来创建,但不支持子分区,同时比postgresql多增加支持自动扩展间隔分区。更多详细测试请参考:<>

q9.mogdb使用全局临时表需要像postgresql那样安装pgtt插件吗?

不需要,mogdb数据库可以直接全局临时表。

数据会话级可见语法如下

create global  temporary table test_gtt_table (
	id integer,
	lbl text
) on commit preserve rows;

数据事务级可见语法如下

create global  temporary table test_gtt_table (
	id integer,
	lbl text
) on commit delete rows;

q10.表的单个字段超过1gb,该如何处理?

可以使用large object扩展类型,测试过程可以参考:<>

q11.存储过程中commit与exception能同时使用吗?

在postgresql里,不能在有exception子句的存储过程使用commit或者rollback语句,mogdb数据库里可以兼容这两种操作,测试过程可以参考:<>

q12.oracle数据库迁移支持package吗?

2.1.0版本开始支持package语法,示例如下:
先创建包接口

create package employee_management as
    c_empno numeric = 9999;	
    function hire_emp (name varchar, job varchar,
                       mgr numeric, hiredate timestamp,
                       sal numeric, comm numeric,
                       deptno numeric) return numeric;		
    procedure fire_emp (emp_id numeric);			   
end employee_management;
/

再创建包实现

create package body employee_management as
                  function hire_emp (name varchar, job varchar,   mgr numeric, hiredate timestamp, sal numeric, comm numeric,  deptno numeric) return numeric  as 
	declare
		new_empno numeric;
	begin
		select nextval('emp_empno_seq') into new_empno;
                                      insert into emp values (new_empno, name, job, mgr,hiredate, sal, comm, deptno);
		return new_empno;
	end;
	
	procedure fire_emp(emp_id in number) 
	as
                  begin
                          delete from emp where empno = emp_id;
                   end;	
end employee_management;
/

调用接口截图如下:

「喜欢文章,快来给作者赞赏墨值吧」
【利来手机国际的版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:[email protected]进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论