unable to extend index(转)
数据库报如下错误:
ORA-01654: unable to extend index **** by 128 in tablespace USERS
解决:
1、通过查看表空间USERS对应的数据文件users01.dbf 文件大小已经32G,查看到表空间使用率已经百分之百。
这个句话查看表空间虽然是自动扩展,但是依然报错,这时就想到了再创建一个数据文件。
select file_name,tablespace_name,autoextensible from dba_data_files
SQL> ALTER DATABASE DATAFILE '/opt/ora9/users01.dbf' AUTOEXTEND ON NEXT 50M MAXSIZE 50000M;
ALTER DATABASE DATAFILE '/opt/ora9//users01.dbf' AUTOEXTEND ON NEXT 50M MAXSIZE 50000M
*
ERROR at line 1:
ORA-03206: maximum file size of (6400000) blocks in AUTOEXTEND clause is out of
range
通过执行上面报错提示,知道了,应该是数据文件大小受了限制 ,经查发现,如果db_blok_size=8K 那么数据文件最大为32,如果db_blok_size=32 数据文件最大为128G. 既然知道了是这个原因,那么就重新添加一个新的数据文件:
alter tablespace USERS add datafile '/opt/ora9/users02.dbf' size 50M autoextend on next 50M maxsize UNLIMITED;
这时数据库就恢复正常了。