Oracle查询以及修改表空间大小,临时表空间大小,SGA

来源:互联网 发布:策略模式 java示例 编辑:程序博客网 时间:2024/06/09 07:57
表空间不够用,需要增大表空间,实际上需要增大数据文件的大小
表空间和数据文件的关系是:一个数据文件只能属于一个表空间,一个表空间可以有一个或者多个数据文件
 
--查询表空间的数据文件
SELECT * FROM dba_data_files WHERE tablespace_name = 'SA_DMP';
 
查询出表空间对应的数据文件,在磁盘空间允许的情况下
ALTER DATABASE  DATAFILE 'E:ORACLEPRODUCT10.2.0ORADATAFUFUSA_DMP.DBF' RESIZE 15000M;
 
如果表空间需要自动扩展或者有最大值限制的
ALTER DATABASE datafile 'E:ORACLEPRODUCT10.2.0ORADATAFUFUSA_DMP.DBF' autoextend ON NEXT 50M maxsize 20000M;
 
另外,查看用户对表空间的使用限额:
SELECT * FROM user_ts_quotas;
如果maxsize 字段值为 -1,则是无限制,如果有其他值,则该值是最大值


1)检查oracle系统临时表空间大小:

select sum(bytes)/1024/1024 "temp size(M)" from dba_temp_files where tablespace_name='TEMP';

 

2)查询undo表空间大小

select sum(bytes)/1024/1024 "current undo size(M)" from dba_data_files where tablespace_name='UNDOTBS1';

 

3)查询SGA和PGA:

SQL> show parameter sga;

获得sga_max_size和sga_target的值

SQL> show parameter pga;

获得pga_aggregate_target的值

 

参考值:

现场服务器是8G内存,SGA设置为4G,PGA设置为1G

现场服务器是16G内存,SGA设置为10G,PGA设置为2G

现场服务器是32G内存,SGA设置为20G,PGA设置为4G

 

修改方法:

pfile:

sga_max_size=4G

sga_target=4G

pga_aggregate_target=1G

 

spfile:

SQL> alter system set sga_max_size=4G scope=spfile;

SQL> alter system set sga_target=4G scope=spfile;

SQL> alter system set pga_aggregate_target=1G scope=spfile;


原创粉丝点击