Oracle8的不安全因素及几点说明

2016-01-29 16:36 0 1 收藏

Oracle8的不安全因素及几点说明,Oracle8的不安全因素及几点说明

【 tulaoshi.com - SQLServer 】

  Oracle8的不安全因素及几点说明

重庆市松藻矿山机械厂
尹珂
---- 作为对象关系型数据库的杰出代表,Oracle无疑是最具实力的。无论是在数据库的规模,多媒体数据类型的支持,SQL操作复制的并行性还是在安全服务方面,Oracle均比SYBASE、Informix强许多,加上其最新版本Oracle8.0.4更是增强了这方面的特性,而且还引入了一些新的特性,比如:数据分区(Data Partitioning)、对象关系技术(Object Relational Technology)、唯索引表(Index only tables)、连接管理器(Connection Manager)[NET8特性]、高级队列(Advanced Quening)等,所以有一种说法:Oracle8是适用于如Peoplesoft,SAP和Baan等封装式应用系统最好的数据库引擎。

---- 虽然Oracle8有许多的优点,但正如微软的WINDOWS系统也会死机一样,任何再好的软件也有他的缺陷,一个优秀的软件不可能就是十全十美,他只是避免了大多数常见的或者可能被考虑到的问题,而一些不容易被发现却非常致命的问题往往会被疏忽掉。Oracle8也同样存在着不安全的因素,许多正在想尽快升级到Oracle8的Oracle7.1、Oracle7.2、Oracle7.3用户不能不考虑到这个因素。当然,这个不安全因素并不是一下子就发现的,而是我们在对一个非常庞大的表进行管理时发现的,这种隐患在使用Oracle创建的小型或者中型数据库中可能不会出现或根本无法发现,因为Oracle8独有的特性已经将这种隐患降低到最低的程度,你大可放心你的数据库系统的安全。

问题
---- 我们安装的Oracle8数据库是工作于主机-终端方式下的,系统主机采用的是四台HP-9000小型机、1.5G的内存。建库初期时设定的最大事务数是按Oracle8的默认取值[这也是Oracle7的默认取值]取的:块值为2K,事务数为32(对于一个要处理非常庞大的数据库时,一般我们设定的块值要大于2K,至少应为4K或者16K,当然这还与主机的CPU能力和I/0能力值有关),并在建库时没有进行分区建表,这也许就为以后数据库出问题留下了隐患。由于日访问数据库的用户非常多,而且对同一表操作的用户数量太大,致使那个表经常被锁住,不断有用户抱怨他们进不了系统,主机发送的数据包太慢,经常报ORA-600的错误。起初我们以为是系统网络问题,但这种可能性比较小,因为我们发现系统CPU峰值经常在90%多,空闲很小,数据库资源太忙,同时有十多个人锁住一个大表进行操作,自然一部分用户就无法进入系统,对此我们写了如下的SQL语句对锁表用户进行监控:
SELECT OBJECT_ID,SESSION_ID,SERIAL#,
ORACLE_USENAME,OS_USER_NAME,S_PROCESS
FROM V$LOCKED_OBJECT 1,
V$SESSION S WHERE 1.SESSION_ID=S.SID;

---- 也许有的人会问为什么不用如下的SQL语句进行查询:
SELECT a.username,a.sid,a.serial#,b.id1,
c.sql_text from v$session a,
V$lock b,v$sqltext c where a.lockwait=b.kaddr and
a. sql_address=c.address and a.sql_hash_value=c.hash_value;

---- 以上两个SQL语句都会查询返回当前被锁住的用户列表,但第二个SQL语句由于加入了sql_text从而使这个查询变得非常的慢长,特别是在有许多用户同时对数据库进行操作时,建议不用,第一个SQL 语句会在很短的时间内查询出是谁在锁表,从而有利于对数据库的管理,一但有用户进入不了,我们就马上杀死其锁进程[SID,SERIAL#],SQL语句如下:ALTER SYSTEM KILL SESSION ‘SID,SERIAL#’,但这并不是解决问题的根本方法,只能暂时缓解一下;另外我们还发现回滚段时常有“online”与“offline”的现象,于是我们又考虑是否是回滚段引起的问题:因为我们一但对大的回滚段进行操作,马上就会有用户反映无法进入。我们知道回退段的大小直接依赖于数据库的活动状态,而每一个EXTENTS都应具有相同的值(Oracle的推荐)[INITIAL EXTENTS的值可以从2K(32)、4K(69)、8K(142)、16K、32K等列表中选择],这将保证你删掉一个区的时候,你可以重新使用它的空间而不会造成浪费,另外MINEXTENTS应设为20,这将不会使回退段扩展另一个EXTENT时用到正在被活动的事务所使用的空间,因而我们就可以据此来确定回退段大小,查出数据库正常运行时所需回滚段的尺寸,为此我们重新设置了回退段的OPTIMAL参数[事实是OPTIMAL的值并不足引起数据库出错],增大了OPTIMAL的值,使用命令SET TRANSACTION USE ROLLBACK SEGMENT为系统指定了一个大的回退段[注意OPTIMAL参数要足够大以使ORACLE不需经常回缩和重新分配EXTENTS,如果设得小于最小覆盖值,性能将由于额外的段重设置而下降,对于一个要执行长查询的系统,OPTIMAL应设成足够大以避免ORA-1555,“Smapshot too old”的错误,而对于运行小的事务,OPTIMAL应设得小一些,使回退段足够小以便放于内存中,这将提高系统性能。],但我们发现这样做后,ORA-600的错误依然出现,而且锁表越来越严重;我们又考虑暂时锁住这个表,不让用户进入,先把用户的锁进程全部杀完再看,由于一开始就采用了主机-终端的工作方式,因而根本就无法清除得完,除非断掉外部的所有网络连接,但那样无疑是重启数据库,最终我

来源:https://www.tulaoshi.com/n/20160129/1499047.html

延伸阅读
在投资这块,很多人总是举棋不定,要么觉得股票风险大,要么又觉得收益低,这不,又在考虑信托了。那么信托理财安全吗?下面就分享相关内容,一起来了解一下吧。 信托理财安全吗 一般而言,信托理财还是比较安全的。原因如下: 1.信托项目都需尽职调查; 2.信息披露需要公开客观; 3.信托项目都需有明确的风险管理...
标签: 浏览器
Chrome技巧 不再显示不安全内容的提示 当你打开一个使用https安全连接的网站的时候,Chrome有事会跳出一个提示框说本页包含不安全内容,让人觉得怕怕的。但其实没那么严重,这是因为https连接的网页里有某些CSS或Javascript文件保存在了其它http连接的目录里,Chrome就会很敏感的告诉你有不安全内容。而在这种情况下IE只是将其称之为混合...
标签: SQLServer
  在一般的多用户应用系统中,只有拥有正确的用户名和密码的用户才能进入该系统。我们通常需要编写用户登录窗口来控制用户使用该系统,这里以Visual Basic+ADO为例: 一、漏洞的产生 用于登录的表 Users(name,pwd) 建立一个窗体Frmlogin,其上有两个文本框Text1,Text2和两个命令按钮cmdok,cmdexit。两个文本框...
标签: 电脑入门
现在光盘使用的是越来越少了,代替它的将是更加轻巧方便的U盘。但使用U盘也有许多要注意的地方,不然U盘用了没多久就有可能经常出现故障。经过日常使用的经验教训,总结出了以下几个会影响U盘安全的因素: U盘不用,记得下岗 很多拥有U盘的朋友,经常将U盘插入USB接口后,为了随时拷贝的方便而不将它拔下。你可知道,这样做法对你的个人数据...
标签: ASP
  很多公司使用以下这两个步骤为它们基于 Windows 2000 的网络服务器来做组态:(1)安装 IIS 5.0、(2)不再理它。如果仅只于此的话,何不来个第三步骤:祈祷。 对于 IIS 5.0,Microsoft 针对安全性和可存取性/可用性(accessibility/usability)两方面做了很好的折衷,一般认为更倾向于后者。Data Return Corporation 的高级信息安全工...

经验教程

250

收藏

28
微博分享 QQ分享 QQ空间 手机页面 收藏网站 回到头部