altibase 常见问题及解决方式.docx

上传人:b****6 文档编号:6720936 上传时间:2023-01-09 格式:DOCX 页数:21 大小:37.80KB
下载 相关 举报
altibase 常见问题及解决方式.docx_第1页
第1页 / 共21页
altibase 常见问题及解决方式.docx_第2页
第2页 / 共21页
altibase 常见问题及解决方式.docx_第3页
第3页 / 共21页
altibase 常见问题及解决方式.docx_第4页
第4页 / 共21页
altibase 常见问题及解决方式.docx_第5页
第5页 / 共21页
点击查看更多>>
下载资源
资源描述

altibase 常见问题及解决方式.docx

《altibase 常见问题及解决方式.docx》由会员分享,可在线阅读,更多相关《altibase 常见问题及解决方式.docx(21页珍藏版)》请在冰豆网上搜索。

altibase 常见问题及解决方式.docx

altibase常见问题及解决方式

Q1  什么是内存DBMS?

 

      内存DBMS是一种新的在MMDBMS服务器启动后在内存中管理整个数据库的数据库管理系统。

内存DBMS是在要求提高事务处理速度的背景下出现的。

因为内存DBMS的整个数据库都在内存中,内存DBMS访问磁盘的次数相对于磁盘DBMS要少得多。

因为整个数据库常住在内存中,数据处理算法非常简单。

因为这些原因,内存DBMS的性能相对于磁盘DBMS要高得多。

当然,内存DBMS不只是性能高,同样具有磁盘DBMS的各种功能。

   

Q2  请用一句话定义Altibase内存数据库 

      Altibase是一个数据库管理系统(DBMS)。

它在内存中保存和管理数据,可以不通过硬盘直接访问数据。

它提供高效的事务处理解决方案。

 

    

Q3  Altibase支持什么操作系统?

 

      因为Altibase内存DBMS在开发中使用一个操作系统无关的模块,所以通过在makefile文件中设置一些选项,重新编译Altibase的源代码可以很方便的移植到其他操作系统。

Altibase支持如下的一些32位和64位的操作系统。

Solaris,DECTRU64,HP-UX,AIX 

Linux,Windows2003 

VxWorks,QNX 

Q4  Altibase和磁盘DBMS的最大区别是什么?

 

      有两个主要区别。

一个是数据库所在的位置不同。

磁盘DBMS总是将数据库存在磁盘上,将要访问的数据放在内存缓冲中。

内存DBMS将磁盘上的备份数据库加载到内存中并在内存中进行管理。

第二个区别就是他们的性能有非常大的不同。

另外由于运行环境不同二者之间也有一些其它的区别。

在性能方面内存DBMS大约比磁盘DBMS高10倍,功能方面内存DBMS和磁盘DBMS基本相同。

Q5  Altibase的稳定性如何?

 

      Altibase内存DBMS在2000年10月首次发布。

因为我们有长时间研究和开发DBMS丰富的经验,所以我们能在如此短的时间内开发出一个商业数据库产品。

其间,Altibase的性能,稳定性和易用性也在通信,证券和国防领域被验证。

Altibase从未让使用它的用户失望。

 

    系统故障时,如果没有硬盘故障,则可以使用altibase启动时的恢复机制进行完全的恢复。

但是如果出现硬盘故障,则只能恢复到最近一次的备份。

系统运行当中可以进行全部备份或表级备份

Q6  既然整个数据库都在内存中,数据库的稳定性不会出现问题吗?

 

      数据库更新时,Altibase立即在日志文件中记录更新的信息。

如果系统发生故障,Altibase分析日志文件内容并正确的恢复数据库。

 

Altibase还具有强大的复制功能,通过复制使系统具有高可用性和高稳定性。

Q7  我知道Altibase的优点之一是数据库复制特性,为什么它如此重要 

      是的,Altibase的优点之一是数据库复制特性。

首先,Altibase复制的性能非常好。

虽然根据查询类型和网络环境的不同会有一点区别,但是在复制中只有简单的SQL语句的情况下,Altibase可以保持独立系统(没有复制的情况下)性能的95%以上,而其它公司的同类产品还不到60%,因此,Altibase数据库复制的性能可以认为非常好。

Altibase复制可以自动检测网络和媒体故障并进行适当的处理,在从这些故障恢复后执行完美的数据库复制。

如果您想了解Altibase复制的更详细的信息,请查阅本页上部的“产品介绍”菜单中的“数据库复制”子菜单中的内容 

Q8  Altibase复制时系统的性能 

      Altibase复制时能保持系统90%的性能。

Altibase复制时性能的保持可以说是Altibase产品的技术核心,在多种实际应用中得到了验证。

 

  

Q9  Altibase复制中数据安全性和完整性 

      Altibase复制是通过日志传递的方式来实现的。

日志具有特定格式,所以在数据传送中无需加密即可保障数据的安全。

 

数据的完整由TCP控制,利用其本身的查错功能。

Q10  其他内存DBMS提供的用户接口不够好,用户很难开发应用程序。

Altibase为用户提供什么样的用户接口?

 

      因为内存DBMS是一个新技术,所以用户还会面对很多的麻烦。

内存DBMS的目的是提高性能,如果系统提供给用户方便的接口,DBMS的性能会下降,所以其他产品在CLI层只提供ODBC和JDBC接口。

但是相对于其他产品,Altibase的应用程序开发容易的多,因为Altibase是作为一个通用内存DBMS来开发的。

除了ODBC和JDBC之外,Altibase还提供支持嵌入式SQL和PSM(类似于存储过程)的SES。

Altibase也支持ISAM接口,这样就使您已经用ISAM开发的程序不用修改就可以在Altibase上使用。

 

Q11  Altibase对用户数是否有限制,多少用户可以并发访问?

 

      ALTIBASE可以产生1000多个连接。

受操作系统限制,一般最多1000多个同时的socket.由于实际上是使用连结池来提供连结,所以并不存在限制连结的问题。

由于Altibase在内存中操作,速度一定会比磁盘数据库快,也就能提供更好的并发性。

 

Q12  系统到底需要多少内存 

      这是根据用户的数据量而不同的。

一般以数据文件大小的150%~200%作为所需内存空间。

 

Q13  将磁盘上的备份数据库加载到内存中需要多少时间?

 

      加载4G的数据大概需要5分钟时间(SUNE250),根据系统的配置这个数据将变化 

Q14  当数据量大大超出内存时的解决方案。

 

      使用硬盘swapping。

系统性能降低。

不建议这种应用形式,因为altibase中没有这种转化的机制,而且也不符合内存数据库的思想。

 

    可以只对关键模块使用Altibase,其余数据保存在磁盘数据库中。

    但在大部分情况下,可将所有数据保存在内存中,Altibase独立使用。

Q15  Altibase是否是独立的数据库管理系统,当它与其它磁盘数据库混合连用时是否是作为磁盘DBMS的访问前端?

 

      Altibase是独立的数据库管理系统,与磁盘数据库一样可以独立使用。

它内部具有管理机制和查询算法,并不是作为磁盘DBMS的访问前端使用的。

 

Q16  Altibase与磁盘数据库连用时是否需要写应用程序?

与磁盘数据库是否存在标准接口?

 

      Altibase与磁盘数据库的连用通过写应用程序来实现。

二者之间不存在国际标准的接口。

 

Q17  怎样定义冷热数据,如何进行冷热数据转换?

 

      程序员设计时访问量大,影响性能的数据一般被指定为热数据。

把这样的数据存储到ALTIBASE中使用,能提高系统的性能。

访问量小,对系统性能没有明显影响的数据称为冷数据。

 

    冷热数据转换是通过应用程序实现的。

很多时候,Altibase与磁盘数据库的连用是以模块方式实现的,Altibase负责的模块主要存放热数据。

Q18  如果只用Oracle,客户端一个SQL语句即可访问数据,如果二者连用,是否客户端要分别建立与Altibase和Oracle之间的联系,并且需要访问两个DB?

 

      是的。

这种情况下客户端需要访问两个DB。

 

Q19  系统移植时工作量有多大?

(数据移植,客户端程序移植,两个数据库之间的联系程序)。

 

      先要把现有系统的数据以文本形式下载,再使用iLoader上传到ALTIBASE。

速度是10000~20000tps(transactionpersec)。

 

    客户端程序移植和两个数据库之间的联系程序,由于Altibase支持ODBC,JDBC,SES如C/C++等多种标准借口,所以这种移植是非常容易实现的。

Q20  我们看到很多Altibase与Oracle连用的实例,能否介绍一下Altibase独立应用情况。

 

      在Altibase的实施中,大部分情况都是Altibase独立使用的。

Altibase的独立使用的实施与传统磁盘数据库非常相似。

 

    只有当数据量很大情况下,已有的服务都是基于硬盘的数据库,如果把这些都转移到ALTIBASE数据库需要很多的费用(Altibase价格增长),所以只把那些影响系统性能的服务转移到ALTIBASE。

Q21  Altibase可否提供硬件+软件的解决方案,比如可以自带备用电源,保障断电时数据不丢失。

 

      用户可以根据自身需要决定是否使用备用电源或第三方HA设备。

应用于磁盘数据库中的HA设备,也可以在Altibase中使用,如VERITASCluster可用于altibase。

 

    但由于Altibase强大的复制功能,很多用户发现没有必要使用上述方法。

Q22  Altibasebenchmark测试的环境,测试部门。

 

  1.测试环境Server:

sunE-450memory:

4GBCPU:

2*400Mz

2.测试部门韩国altibase公司内部和韩国三星电子 

Q23  如何决定是采用独立模式还是混合模式?

 

      一般根据客户需求和性价比决定。

如果对大量数据的访问性能都有很高要求,应该采用独立模式,如果只对小部分数据的访问速度和性能上存在高要求,则可以使用混合模式。

 

Q24  假如主机内存只有40多GB,对altibase正常运行是否有影响?

 

  对altibase正常运行是有影响的,内存不够,可能会使用交换空间,性能会受到影响。

 

Q25  isql客户端连接远程Altibase主机报错?

[ERR-91015:

Communicationfailure.] 

  1.建议更换Altibase客户端版本

2.重新设置ALTIBASE_HOME,PATH 环境变量 

Q26  Altibase参数修改步骤 

  1、修改103和39的altibase.properties,这个文件修改只能是下次重起数据库的时候有效。

PREPARE_LOGFILE_COUNT=2

REPLICATION_PREFETCH_LOGFILE_COUNT=3

REPLICATION_PREFETCHER_RETRY_TIME=1 

2、Replicationsync之前做以下操作

iSQL>altersystemsetREPLICATION_PREFETCH_LOGFILE_COUNT=3;

iSQL>altiersystemsetREPLICATION_PREFETCHER_RETRY_TIME=1;

iSQL>checkproperties;  

Q27  备机重启动后无法连接AB。

error:

TRANSITIONTOPHASE:

PROCESS

hostid->844d7498

[FAILURE] 

StartupFailed....

[ERR-51039:

InternalError:

InvalidProtocol(err3)]

[ERR-51039:

InternalError:

InvalidProtocol(err3)] 

  由于改变了hostid,出现连接错误。

把hostid改回成之前的hostid,问题得以解决。

连接成功。

注意:

以后遇到类似问题,都要先确认一下hostid是否有改动或网卡更换。

 

Q28  现在一台PC机上装了solaris和altibase,能否与sun或IBM服务器装的altibase间replication?

操作出现如下错误:

iSQL>createreplicationrep1with'10.200.26.36',20300fromsys.accttosys.acct;

[ERR-61023:

Thereplicationisdisabled] 

  问题应该是没有启动Replication模块。

需要修改$ALTIBASE_HOME/conf/altibase.properties中REPLICATION_PORT_NO=20301属性,就是再配一个Replicaion专用的端口号。

再重新启动Altibase就可以启动AltibaseReplication功能了。

create语句中使用的端口号是对方Altibase的REPLICATION_PORT_NO。

 

Q29  创建一个用户test,在该用户下创建replication时出错:

iSQL>createreplicationrep1with'10.200.50.247',20301fromtest.ACCTtosys.ACCT;

[ERR-31084:

TheuserhasnopermissiontoexecutetheSQLstatement 

  AltibaseReplicaion只能在sys/manager用户下进行管理。

 

Q30  ALTIBASE有三种运行模式,如何设置这三种模式?

 

  我们售前跟您说的Altibase3种运行模式,不知道是不是说的Altibase内存数据库、Altibase磁盘数据库、Altibase与其他数据库联用这个概念。

这是一个逻辑上的模式,Altibase没有具体限制。

Altibase内存数据库、Altibase磁盘数据库都是可用的。

 

Q31  ALTIBASE提供active-active和active-standby两种复制模式,如何设置实现?

 

  AltibsaeReplication可以通过设置Altibase配置文件启用。

并通过sql语句建立表级复制关系。

双向复制关系则为active-active,单向复制则为active-standby。

 

Q32  3种模式:

1.enableonlymemoryspace 

2.enableonlydiskspace 

3.enablememoryanddiskspace

altibase默认安装是第一种模式么?

第一种模式和第三种模式的区别是不是在于写磁盘数据库的同步上(两者都是要在磁盘上写log的)?

第一种模式和第三种模式是怎样配置实现的?

效率相比较情况?

 

  Altibsae内存数据库和磁盘数据库是以表空间为区分的。

默认表空间为SYS_TBS_MEMORY,即内存表空间,内存表空间只有这一个,而磁盘表空间可以建立多个。

//这个可以参考sql手册。

可以在创建数据库用户时指定默认表空间。

也可以在创建表时指定表空间。

这样就可以把热数据和历史数据分开放到内存和磁盘表空间。

另外Altibase的内存数据库与磁盘数据库是通用一个数据引擎的。

他们都会写磁盘log,以保证数据完整性。

不同的是实时数据文件的存放地分别是内存或磁盘。

从效率上将Altibsae磁盘数据库性能在一定范围内能达到Oracle的性能(我们做了一些tcp标准测试,性能上与Oracle互有优劣)。

而内存数据库性能在实时业务处理方面要远强于Oracle,所以第三种模式的效率就要看您怎样去部署。

 

Q33  ODBC是在CLI基础上封装的,对不对?

二者的效率有明显的差别么?

 

  AltibaseCLI(UNIXApp接口)和ODBC(WindowODBC驱动)其实是一样的APP接口,现在我们也在统称为ODBC。

函数说明您可以参考ODBC手册。

 

Q34  有没有ODBC和CLI的函数封装包提供?

 

  我们只提供编译好的LIB库文件,安装包里包含这些库文件 

Q35  用iSQLinsysdbamode启动数据库为什么返回如下错误?

 

bash-3.00$isql-s127.0.0.1-usys-pmanager-sysdba

Error:

CannotSpecifyServerorPORTwhenusingsysdbamode 

  sysdbamode只能本机登陆,去掉-s参数就可以登陆了。

 

Q36  设置MEM_MAX_DB_SIZE=1G

为什么使用中数据库会大于1G?

  

  MEM_MAX_DB_SIZE是数据的大小,不包括索引以及临时内存空间的大小。

 

Q37  关于logfile文件的删除问题,是根据什么删除的,是checkpoint么?

 

  logfile会自动删除。

具体的逻辑如下:

Altibase是由数据文件dbs/mydb-0-1mydb-1-1..和日志文件logs/logfile..保证数据的完成性。

其中数据文件保持两分,当发生checkpoint时交替将内存脏页写回到数据文件中。

(如果chekpoint时宕库,则由另一份数据文件与已经有的日志文件恢复所有数据)

当checkpoint成功完成时,删除已经在数据文件更新的相关数据的相关日志logfile。

(相关管理数据在logarchor文件中) 

Q38  当checkpoint成功完成时,删除已经在数据文件更新的相关数据的相关日志logfile。

在使用过程中2月20号发现1月份的logfile还存在,checkpoint时间间隔为6000s,如果正常应该只存在6000s时间内的logfile,为什么会出现logfile不删除的情况,是checkpoint未成功么?

怎么实现manualcheckpoint?

 

  如果使用了Replication,并且没有启动日志会积压的。

可以在isql中手动执行checkpoint,isql>altersystemcheckpoint; 

Q39  PARALLEL_LOAD_FACTOR,MULTIPLEXING_THREAD_COUNT等参数是根据CPU数来设制的,现在海南项目使用的是SUN服务器,为1个CPU8个核,设制参数按1来算还是按8?

 

  关于PARALLEL_LOAD_FACTOR,MULTIPLEXING_THREAD_COUNT参数,可一不用设置,会自动识别的。

//其中PARALLEL_LOAD_FACTOR只在Altibase启动时有所影响,但是无关紧要。

MULTIPLEXING_THREAD_COUNT我们在其他多核的系统中也是采用默认值的。

一些特殊的情况,我们都是反复测试才能设置最佳的值,建议不用修改。

 

Q40  表创建了sequence,双机同步,sequence值没有同步过去,请问如何解决?

 

  这个Altibase不支持双机的sequence复制,建议将双机两边的sequensce单、双数分开,这样切换的时候就不会重复。

//就是两边建立sequence的时候,增量设为2。

 

Q41  请问怎样在isql下取得前几天的日期?

我们有清单表是用日期的,需要定期删除增加

能计算前几天的日期就行,还有后几天 

  DATEADD

DATEADD(date,number,date_field_name)

说明

将日期或时间date的date_field_name加number类型数值.number为小数是,忽略小数点后面的数字.

date_field_name为‘SECOND’时number必须为68年以内的值,‘MICROSECOND’时number必须为30天以内的值.

DATEADD中可用的date_field_name如下.

CENTURY,YEAR,QUARTER,MONTH,WEEK,DAY,HOUR,MINUTE,SECOND,MICROSECOND 

Q42  是不是ora2alti.cfg文件的ALTI_TABLE_CREATE=0 

#1.create2.truncate0:

nothing有误,帮忙解释一下2和0的区别?

 

  0是append,当有pk时,发生冲突肯定不能插入进去。

 

  

Q43  dbs下的文件大小和内存表的大小之间的系数关系是?

 

  mydb-0-0(大小:

1G)和mydb-1-0是一对,大小差不多。

为了做ping-pongcheckpoint,存在2份。

存两份的原因除了备份以外,还有在checkpoint时间内也能处理事务。

这个文件中存放系统信息(tableschema等信息)以及实际数据,所以与内存表达小出不多。

 

Q44  autocommitoff模式下,怎么在数据库端发现并断掉加了表级锁的连接。

[ERR-11075:

Thetransactionexceedslocktimeoutspecifiedbyuser.] 

  1.请及时commit,或查找没有断开的连接断掉。

2.sesssionclose的方法如下:

登陆sysdba用户:

$isql-usys-pmanager-sysdba

查找需断开的连接:

>selectcomm_name,DB_USERNAME,idfromv$session;

回滚相应的连接、并断开:

>alterdatabasemydb--数据库名--sessionclose63--sessionid--;

如果连接中需要回滚得事务比较多,这种方法会非常慢。

3.重新启动数据库。

15G的数据大概需要10~15分种。

 

Q45  我们需要把cursor的结果直接取到一个结构里.

问题是,结构类型定义在一个统一的头文件中.存放在专用的include目录

现在编译出现问题了,找不到头文件rs.h里定义的结构类型. 

我在编译时:

加了include选项的

sesc-o/App_ibs/iBOSS/rating/src/rs/obj-tcpp-

include/App_ibs/iBOSS/rating/include/App_ibs/iBOSS/rating/src/rs/loadParaTool.sc

在loadParaTool.sc文件里也加了

execsqlINCLUDErs.h;不行 

include"rs.h"也不行

  

  您可以参考$ALTIBASE_HOME/sample/SESC的Makefile. 

1.sesc只是预编译器,不能那么做。

2.include的时候,要用-I。

altibase@[/home/altibase/altibase_home/sample/SESC][196]>gmake-nconnect1sesc-tcppconnect1.scxlC_r-q64-

DPDL_NDEBUG-

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 总结汇报

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1