ORA-01536: space quota exceeded for tablespace 'TFR_DATA' #


alter user tfr quota unlimited on TFR_DATA;

grant unlimited tablespace to tfr


表空间配额不足

方法一:SQL> alteruser user_name quota unlimited on tablespace_name;

方法二:SQL> alteruser user_name quota 100M on tablespace_name;

方法三:SQL> grantunlimited tablespace to user_name;

http://blog.csdn.net/boboo_2000_0/article/details/6062287 以下内容选自这位朋友的博客



  表空间不足与用户配额不足是两种不同的概念。表空间的大小是指实际的用户表空间的大小,而配额大小指的是用户指定使用表空间的的大小。两者的解决方式亦不相同。


配额问题的解决:alter user skate quota 2g on tablespace_name;


视图: 


dba_ts_quotas : DBA_TS_QUOTAS describes tablespace quotas for all users.

user_ts_quotas :USER_TS_QUOTAS describes tablespace quotas for the current user. This view does not display the USERNAME column.


查看用户的表空间的限额


select * from dba_ts_quotas;

wKioL1crP1-BzKdzAACWAvSIWmo006.png


max_bytes字段就是了 

-1是代表没有限制,其它值多少就是多少了. 



用户表空间限额的创建与更改:


1.创建用户时,指定限额


eg:

CREATE USER SKATE IDENTIFIED BY SKATE_PWD

DEFAULT TABLESPACE SKATE_TS   --默认表空间

TEMPORARY TABLESPACE temp

QUOTA 3M ON SKATE_TS

PASSWORD EXPIRE;



2.更改用户的表空间限额:


A:不对用户做表空间限额控制: 


GRANT UNLIMITED TABLESPACE TO skate; 

这种方式是全局性的. 

或者 

alter user skate quota unlimited on skate_ts; 

这种方式是针对特定的表空间的. 


3. 可以分配自然也可以回收了: 


revoke unlimited tablespace from skate;

或者 

alter user skate quota 0 on SKATE_TS;