最常碰到的10个Oracle错误

  • 来源: 互联网 作者: rocket   2008-03-19/10:04
  • This document contains information about errors frequently encountered by
    new DBAs, along with appropriate actions to be taken in each circumstance.

    +==+

    Summary:
    10 COMMON RDBMS ERRORS

    +=+

    1) ORA-1547

    a) on Rollback segment when importing.

    Specify commit=y and a large buffer on import. This way the Rollback
    will be released after each array, as opposed to each object.

    b) when allocating an extent on a tablespace with alot of free space.

    Select max(blocks) from DBA_FREE_SPACE. You may have free space but it
    might not be contiguous. Make sure it is greater than the extent it
    is trying to allocate. You can reduce the storage parameters NEXT and
    PCTINCREASE if it isn't.

    2) ORA-1556 max extents of 121 exceeded when storage is set for maxextents
    of 999.

    Most platforms have a max of 121 even though it allows you to specify [bitsCN_com]
    999. (see the readme for your platform)

    3) ORA-1090 shutdown in progress when starting up even after a shutdown was
    issued quite some time ago.

    If the background processes aren't running the SGA could have been left
    out there... Issue a startup force open (which does a shutdown abort
    first).

    4) IMP-0003, ORA-942 and IMP-00023 on import.

    Run catalog.sql and expvew.sql (renamed catexp.sql in v7) as sys before
    the import. Both files are in $ORACLE_HOME/rdbms/admin (UNIX).

    5) ORA-904 Invalid column name on import.

    Run expvew.sql (catexp.sql) before the import.

    6) ORA-1034 Oracle not available.

    Startup the DB first...if it is started check your searchpath.
    Make sure that ORACLE_SID is set correctly For setuid issues, see
    PRE 1006554.6.

    7) ORA-1578 Oracle Data Block corrupted (file # num and block # num)
    bbs.bitsCN.com中国网管论坛



    To determine where the corruption is:
    select * from sys.dba_extents where file_id = filenum and blocknum
    between block_id and (block_id + blocks - 1);
    The filenum and blocknum are the numbers in the 1578 error.
    This query should give the segment_name and segment_type
    (i.e table and its name).
    In order to salvage the uncorrupted part of the table you can add
    an entry to the init.ora:
    event = "10231 trace name context forever"
    This will skip the corrupted block on a table scan. Export the table,
    drop and recreate it from import.

    8) ORA-604 what does it mean?

    Usually it comes with another error such as 1547....if it can't be found
    in any of the trace files try setting the following event in init.ora and
    restarting the DB.
    event="604 trace name errorstack forever"
    for the output of this look in the trace files in the directory given by www@bitscn@com
    the USER_DUMP_DEST parameter in init.ora.

    9) My create database is failing with ORA-1519: error while processing file

    Take out the INIT_SQL_FILES param out of init.ora, run the scripts
    by hand after the database is created.

    10) Out of shared memory (ORA-4031).

    Try de-fragmenting the shared pool by running an 'alter system flush
    shared_pool' If that is not enough, increase the shared_pool_size
    parameter.

    +==+


    评论 {{userinfo.comments}}

    {{money}}

    {{question.question}}

    A {{question.A}}
    B {{question.B}}
    C {{question.C}}
    D {{question.D}}
    提交

    驱动号 更多