>  기사  >  데이터 베이스  >  ORA-01688表空间无法扩展

ORA-01688表空间无法扩展

WBOY
WBOY원래의
2016-06-07 17:29:323609검색

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;

linux

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.