开发无线POS出单项目过程中对Oracle数据库的一些经验总结

来源:互联网 发布:知乎著名小黄文 编辑:程序博客网 时间:2024/05/17 09:02

在开发保险行业无线POS出单项目过程中,在Oracle数据库方面遇到一些问题,逐一解决,现做一下总结

1、在测试时,使用POS通过GPRS和转发中心进行连接时,经常提示TCP链接失败,起初以为是GPRS的信号差,在传输数据包时,怀疑有丢包的可能,结果找了一个信号相对好的地方,进行操作,也会经常提示这个问题,在服务器上重启相关服务,才可做交易。或者过一段时间做交易时又提示TCP链接失败。通过日志跟踪程序流程,发现数据包接收到后,在链接数据库进行操作时,一直没有应答报文中所需的数据返回。才发现是数据库超时,由于在程序开发过程中我们使用的是短链接方式,一直认为数据链接操作方面没有问题,后来在日志文件中发现了sqlca.sqlcode 为 3135 ,解决办法:

在数据库服务器的目录/network/admin下 的 ssqlnet.ora文件中,有

########################
#sqlnet.expire_time = 10
########################

将其改为

########################
sqlnet.expire_time = 10
########################

即可解决问题,测试这么多天以来,一直没有出现上述问题。

2、Oracle中的数据库和实例概念的理解

数据库是物理概念,是用来存储数据的
实例是逻辑概念,相当于用软件来连接数据库
一个实例只能对应一个数据库
一个数据库可以对应多个实例
把数据库比作一个岛屿,实例就相当于连接到岛屿的桥梁
桥梁可以有多条,当桥梁断开以后,就无法去到岛屿,但是岛屿依然存在,不会随着桥梁的断开而消失

3、在Linux AS 4.7上安装Oracle 10.2 数据库

     (1)在安装Linux AS 4.7操作系统之前,我们使用的是Linux AS 4.0 版本,AS 4.0 版本在安装过程中,由于之前在公司安装过AS 4.0 ,本以为在现代的主机硬件中能安装成功,结果发现AS 4.0 和当今的硬件有不兼容的问题。在安装4.0过程中,我们的主机中安装的是串口硬盘,结果在硬盘分区之前,出现了在系统中查找相关驱动的问题,结果4.0版本中没有相关驱动,后来换了一块并口硬盘,才没有出现查找相关驱动的问题。并且在安装过程中,由于光盘局部受损,光驱纠错不过的问题,在安装过程中,出现了提示硬件空间不足或介质已经损坏,这是致命的问题。直接导致系统安装过程崩溃。起初我们以为是硬盘有问题。就不断重做,结果,每次重做每次抛出提示,但抛出提示的地方各不相同。原以为是分区问题,就每次重新安装时,重新不同方法的分区。反复N次之后,还是不通过,浪费了大量时间。后来换了一个移动光驱,分区还是采用之前用过的手工分区方法,安装通过,但还是有两个工具在安装过程中由于光盘受损,跳过安装。但没有出现致命性的提示。

     (2)由于本次测试项目时,要用到两台Linux环境的服务器,一台链接外网GPRS,一台和总公司进行业务系统交互。这是从安全方面考虑采用的框架。结果在安装另一台服务器时,我买了一块并口硬盘后,由于两台的主机的配置不同,在安装过程中,在分区之前又出现了查找驱动的问题。后来判断应该是版本低的问题,结果迅速更换Linux AS 4.7版进行安装,恢复串口硬盘,结果安装十分顺利。虽然本次安装过程中进行了多次的尝试,遇到了不少的挫折,走了很多弯路,但是这次的经验会让我在今后安装纯Linux 操作系统,积累了很多实战性经验。因为这次是临时使用台式主机架构测试服务器,所以我们做软件的人员,之前都是使用公司安装好的正式的Linux服务器,在台式机上安装纯Linux环境,同事们都没有相关经验借鉴,所以我都是在网上进行相关查找,虽然有些网上并没有,可能问题太简单,别人不愿意发布。总之,这次安装过程,在受挫中,我感觉收获还是很大的。

      (3)在安装完Linux操作环境后,我将两台服务器主机设置成了字符环境(root用户 /etc/inittab 中进行设置)。两台机子接入局域网,我使用我的笔记本对这两台主机进行远程控制,使用软件SecureCRT 进行远端控制,包括操作已经软件的安装,很方便,而且效率很高,在安装数据库和客户端是需要一个图形工具,我使用的是xmanager 3.0 企业版,在Windows xp环境下,启动这个软件,在操作服务器时,所需要用到的图形界面会自动的弹出,很方便。xmanager软件中还有ftp工具,可向服务器方便的传送相关的软件包。

       2、从oracle网站中下载10g Documentation 联机文档,结合联机文档安装部分进行安装是最有依据的,其中需要一些rpm包,这些包只要按要求进行查找,解压安装,安装oracle就成功了一半了,在解压安装包过程中,需要什么包系统会自动提示,可根据提示在镜像中进行查找,如果没有可在网上找,大概有16个包左右,使用rpm -Uvh  * 命令进行安装。