设置oracle的持续问题

时间:2010-02-15 15:40:15

标签: oracle oracle10g ora-01652

我目前正卷入关于oracle 10.2.0的安装和设置的意志之战。

我关注this guide。收到错误的每一步我终于到达指南的最后只是为了在运行catproc.sql后收到此错误消息:

PL/SQL procedure successfully completed.


Package body created.

No errors.

Package body created.

BEGIN
*
ERROR at line 1:
ORA-01652: unable to extend temp segment by 128 in tablespace TEMP
ORA-06512: at "SYS.DBMS_STATS", line 13210
ORA-06512: at "SYS.DBMS_STATS", line 13517
ORA-06512: at "SYS.DBMS_STATS", line 15859
ORA-06512: at "SYS.DBMS_STATS", line 15901
ORA-06512: at line 1
ORA-06512: at "SYS.DBMS_REGISTRY", line 560
ORA-06512: at "SYS.DBMS_REGISTRY", line 612
ORA-06512: at line 4


SQL>

为了做到这一点,我必须使用以下设置修改我的init.ora文件:

control_files = (C:\oracle\product\10.2.0\oradata\ora10\control01.ora,
                 C:\oracle\product\10.2.0\oradata\ora10\control02.ora,
                 C:\oracle\product\10.2.0\oradata\ora10\control03.ora)
undo_management = auto
db_name         = ora10
db_block_size   = 8192

db_cache_size=67108864
large_pool_size=1048576
shared_pool_size=117440512

我的'create database'命令与1中列出的命令相同,但我的数据文件在C而不是D。

请记住,我不是一名DBA,这些价值观只是从其他人在网络上遇到的各种问题中汲取的。

1 个答案:

答案 0 :(得分:7)

由于您对Oracle数据库创建缺乏了解,我建议您使用Oracle Database Creation Assistant创建数据库。对大多数情况来说这已经足够了。

您提供的链接中的问题是 ALL 设置很低。由于数据文件很少,您迟早会看到有关UNDO段的其他问题。

无论如何,这句话说:

 default temporary tablespace temp
        tempfile 'c:\oracle\databases\ora10\temp.dbf'
        size 10M;

它说TEMPFILE表空间是10MB而没有扩展。您可以尝试将autoextend on添加为:

 default temporary tablespace temp
        tempfile 'c:\oracle\databases\ora10\temp.dbf'
        size 10M autoextend on;

或者因为您已经创建了表空间,您可以执行:

 alter tablespace temp 
     add tempfile 'c:\oracle\databases\ora10\temp02'.dbf' SIZE 10M AUTOEXTEND ON

使用这句话你会说:将另一个临时文件添加到大小为10M的TEMP表空间(非常少!)并根据需要将其设置得更大。

从您的链接中,还要注意:

  • character set WE8ISO8859P1,我建议您使用UTF8
  • logfile的尺寸可以非常慢地完成数据库,它们必须更大。
  • 参数db_cache_size只有67MB,非常少。其他人也是。

无论如何,最好的方法是使用Oracle Database Creation Assistant