空气中的尘埃
分类: Oracle
2011-03-31 09:52:27
1、ORA-01536: 超出表空间 'USERS' 的空间限额
用户使用usrglis 连接windows 下oracle9i 数据库 . 打印账产账临时表时出现错误。
使用
select * from dba_ts_quotas;
未发现 usrglis 的记录。
SQL> select * from dba_ts_quotas;
TABLESPACE USERNAME BYTES MAX_BYTES BLOCKS MAX_BLOCKS
---------- ---------- ---------- ---------- ---------- ----------
ODM ODM 5505024 -1 672 -1
ODM ODM_MTR 4259840 -1 520 -1
CWMLITE OLAPSYS 9764864 -1 1192 -1
TOOLS RMAN 6291456 -1 768 -1
EXAMPLE HR 1638400 -1 200 -1
EXAMPLE OE 6946816 -1 848 -1
EXAMPLE PM 15073280 -1 1840 -1
EXAMPLE SH 125763584 -1 15352 -1
EXAMPLE QS_ADM 0 -1 0 -1
EXAMPLE QS 1572864 -1 192 -1
EXAMPLE QS_WS 1179648 -1 144 -1
TABLESPACE USERNAME BYTES MAX_BYTES BLOCKS MAX_BLOCKS
---------- ---------- ---------- ---------- ---------- ----------
EXAMPLE QS_ES 1179648 -1 144 -1
EXAMPLE QS_OS 1179648 -1 144 -1
EXAMPLE QS_CBADM 851968 -1 104 -1
EXAMPLE QS_CB 0 -1 0 -1
EXAMPLE QS_CS 655360 -1 80 -1
表空间的大小是指实际的用户表空间的大小,而配额大小指的是用户指定使用表空间的的大小
使用
GRANT UNLIMITED TABLESPACE TO usrglis;
当时起作用,一天后又出现同样的故障。
后用
alter user USRGLIS quota unlimited on USERS;
alter user USRGLIS quota unlimited on GLIS8_TABLE;
alter user USRGLIS quota unlimited on GLIS8_MAINTABLE;
alter user USRGLIS quota unlimited on GLIS8_TABLE;
在quota 中标明其无限制 (max_bytes = -1).暂时解决。不知道以后是不是还有问题。
2、查看用户的表空间的限额
select * from dba_ts_quotas;
revoke unlimited tablespace from usrglis;
或者
alter user usrglis quota 0 on SKATE_TS;