ORA-01688表空间无法扩展
SQL 错误: ORA-01688: 表 JINRILOG.USEROPERATELOG 分区 P1 无法通过 8192 (在表空间 JINRILOG 中) 扩展
错误报告:
SQL 错误: ORA-01688: 表 JINRILOG.USEROPERATELOG 分区 P1 无法通过 8192 (在表空间 JINRILOG 中) 扩展
01688. 00000 - "unable to extend table %s.%s partition %s by %s in tablespace %s"
*Cause: Failed to allocate an extent for table segment in tablespace.
*Action: Use ALTER TABLESPACE ADD DATAFILE statement to add one or more
files to the tablespace indicated.
-----解决过程:
第一步:确认是否自动扩展打开
SELECT file_id, file_name, tablespace_name, autoextensible, increment_by
FROM dba_data_files
WHERE tablespace_name = 'JINRILOG'
order by file_id desc;
第二步:尝试resize文件大小
SQL> alter database datafile 'S:\APP\ADMINISTRATOR\ORADATA\ORCL\JINRILOG01.DBF' resize 100000M;
alter database datafile 'S:\APP\ADMINISTRATOR\ORADATA\ORCL\JINRILOG01.DBF' resize 100000M
*
第 1 行出现错误:
ORA-01144: 文件大小 (12800000 块) 超出 4194303 块的最大数
select value from v$parameter where;
/****
FIX 1:
Specify a smaller file size.
The maximum file size is
db_block_size * 4194303
For example, if db_block_size is 2kB then maximum file size is limited
to 2k*4194303, 8Gb-2k.
FIX 2:
Change db_block_size. This can only be done by recreating of
database.
db_block_size Maximum data file size
------------- ----------------------
2kb 8Gb-2kb
4kb 16Gb-4kb
8kb 32Gb-8kb
16kb 64Gb-16kb
32kb 128Gb-32kb
可见db_block_size对 maximum data file size还是起决定作用的
由上可知,由于db_block_size设置为8kb的原因导致系统文件只能32G.
****/
第二步:增加数据文件
alter tablespace jinrilog add datafile
'S:\APP\ADMINISTRATOR\ORADATA\ORCL\JINRILOG02.DBF'
size 30g;
alter tablespace jinrilog add datafile
'S:\APP\ADMINISTRATOR\ORADATA\ORCL\JINRILOG03.DBF'
size 30g;
推荐阅读
-
测试oracle表空间自动扩展
-
关于oracle数据库误删表空间文件后无法登陆sqlplus问题的解决方法
-
ora-01658 无法为表空间USERS 中的段创建INITIAL区
-
Oracle如何扩展表空间
-
oracle数据库的系统表空间system,sysaux的使用率很高与磁盘空间满导致数据库无法登陆
-
ORA-01653: 表xxxxx无法通过 8192 (在表空间 tsp_data 中) 扩展
-
Oracle教程:ORA-25153 临时表空间为空,ORA-01652 无法通过128
-
ORA-01659: 无法分配超出 7 的 MINEXTENTS (在表空间 DATA 中)
-
用裸设备扩展oracle表空间
-
ORA-01157: cannot identify/lock data file导致表空间无法on