对于PeopleSoft管理员/DBA或任何支持该应用程序的PeopleSoft顾问来说,最大的痛苦是什么?那时PeopleSoft应用程序的性能非常缓慢。有数以百计的事情可能出错,其中之一是直接关系到您的PeopleSoft数据库的大小。
PeopleSoft数据库由PeopleSoft表、索引和少数其他对象组成,但其大小主要由表和索引决定。
对于Oracle数据库,DBA可以利用OEM(Oracle Enterprise Manager)对数据库大小进行检查,并且可以设置触发器或脚本,以便在达到阈值时发出警报。
PeopleSoft Tables是构建并具有数据库定义的PeopleSoft记录定义。PeopleSoft索引是为这些PeopleSoft表创建的。
下面是用于估计PeopleSoft数据库大小的几个SQL(PeopleSoft表的大小和PeopleSoft索引的大小)
下面SQL的输出将以MB和GB显示大小(大约)。
-查找PeopleSoft表的大小
SELECT DS.TABLESPACE_NAME, SEGMENT_NAME, ROUND (SUM (DS.BYTES) / (1024 * 1024)) AS MB, ROUND (SUM (DS.BYTES) / (1024 * 1024 * 1024)) AS APPROX_IN_GB FROM DBA_SEGMENTS DS WHERE SEGMENT_NAME IN (SELECT TABLE_NAME FROM DBA_TABLES WHERE OWNER = 'SYSADM' AND TABLE_NAME LIKE 'PS_%' AND NUM_ROWS > 0) AND SEGMENT_TYPE = 'TABLE' AND OWNER = 'SYSADM' GROUP BY DS.TABLESPACE_NAME, SEGMENT_NAME
-查找PeopleSoft索引大小
SELECT DS.TABLESPACE_NAME, SEGMENT_NAME, ROUND (SUM (DS.BYTES) / (1024 * 1024)) AS MB, ROUND (SUM (DS.BYTES) / (1024 * 1024 * 1024)) AS APPROX_IN_GB FROM DBA_SEGMENTS DS WHERE SEGMENT_NAME IN (SELECT TABLE_NAME FROM DBA_TABLES WHERE OWNER = 'SYSADM' AND TABLE_NAME LIKE 'PS_%' AND NUM_ROWS > 0) AND SEGMENT_TYPE = 'INDEX' AND OWNER = 'SYSADM' GROUP BY DS.TABLESPACE_NAME, SEGMENT_NAME ORDER BY ROUND (SUM (DS.BYTES) / (1024 * 1024 * 1024)) DESC;