Db_file parameter

Hi experts,
I am on 10.2.0.4 on AIX.
In our PROD database db_files value in parameter file increased recently but we did'nt recreate control file for the same.
SQL>select value from v$parameter where name = 'db_files'
VALUE
600
SQL> select records_total from v$controlfile_record_section where type = 'DATAFILE'
RECORDS_TOTAL
585
Now I need to add one database to one of my tbs, plz let me know the following .
1. Can I add datafiles to my DB ????
2. Which value database is getting currently 600 or 585 ?????
3.What will be the impact if db will continue run with this control file ???? as this is PROD so right now don't have any downtime.
Please suggest
Thanks in ADV !!!!

user9141007 wrote:
Hi experts,
I am on 10.2.0.4 on AIX.
In our PROD database db_files value in parameter file increased recently but we did'nt recreate control file for the same.
SQL>select value from v$parameter where name = 'db_files'
VALUE
600
SQL> select records_total from v$controlfile_record_section where type = 'DATAFILE'
RECORDS_TOTAL
585
Now I need to add one database to one of my tbs, plz let me know the following .
1. Can I add datafiles to my DB ????
2. Which value database is getting currently 600 or 585 ?????
3.What will be the impact if db will continue run with this control file ???? as this is PROD so right now don't have any downtime.
Please suggest
Thanks in ADV !!!!SELECT COUNT(*) FROM DBA_DATA_FILES;
post SQL & results from above

Similar Messages

  • Db_file parameter change in oracle 8i with physical standby configured

    i have oracle 8i (8.1.7) with physical standby configured.
    i need to change the db_file parameter value. kindly check the below steps are correct? Thanks.
    1. alter database backup controlfile to trace;
    2. edit the init.ora file as db_file=<new value> (after backing up the existing pfile)
    3. edit the create control file statement in udump -- max datafile (and also remove the first line startup nomount)
    4. shutdown immediate;
    5. startup pfile ='file name';
    6. in sqlplus run the create control file statement;
    7. alter database backup controfl file for standby;
    8. move the standby control file to standby db server
    9. shutdown immediate in standby
    10. copy the pfile and edit the new values
    11. startup mount pfile='new pfile' (in standby)
    12. recover control file <location> from rman
    13. start the recovering of standby.
    Thanks,
    Raman.

    Just change the db_files value to some higher value in the init.ora file and restart the database. With this you can create more datafiles no need to create control file.

  • Can I increase db_files parameter without restarting database

    I get following error message : ORA-00059: maximum number of DB_FILES exceeded
    Can I increase the db_files parameter dynamically without restarting the database.
    thanks!

    You cannot change this parameter dynamically. You must restart your oracle instance in order this parameter takes effect.
    refer:-
    ORA-00059: maximum number of DB_FILES exceeded

  • Setting DB_FILES parameter

    Our value for db_files is 512.
    A count of datafiles shows 99 (using select count(*) from dba_data_files)
    So initially it appears the value for db_files is quote over the top.
    Before I set it lower, say 128, I seem to recall reading a long while ago that you have to be very careful, because "other" files are also considered as well as just data_files but i cannot remember the specifics.
    Any opinions, thoughts or advice on this please?
    Thanks

    If you refer to the documentation (click) it is specified that only data files (and tempfiles) are concerned.
    As for me, it's not a big drawback to have a margin, even if in your case it's a huge margin. It only affects the controlfile size.
    Also note that in order to change the parameter value, you have to bounce the instance.
    I would leave it as it is. Why do you want to change the value?
    Regards,
    Yoann.

  • Ora-0059: max no.of db_files exceeded

    hi.
    my db is in archivelog mode(24x7).
    i tried to add data file to my tablespace
    i got the following error
    ora-oo59: max no of db_files exceeded.
    plz tel me step by step how to change the db_files parameter
    in what state
    when i have to take backup of control file
    then again how i have to open the database.
    my current db_files value is 400 .
    i need atleast 600.
    thanks and regards
    suresh

    DB_FILES is a static parameter, and cannot be change online. Restarting the db is required.<br>
    alter system set db_files=600 scope=spfile;
    shutdown immediate
    startup<br>
    <br>
    Nicolas.

  • Cloning problem:  ORA-00059: maximum number of DB_FILES exceeded

    Hi everyone!
    I'm trying to clone our data warehouse over an existing test instance, DMART01. Here's what I did:
    1. on the data warehouse - alter database backup controlfile to trace;
    2. edited the trace file to change the db name and path of the datafiles
    3. logon to sqlplus in DMART01 and run my altered trace file.
    4. Below is the error I'm getting:
    SQL> @clone09142009.sql
    ORACLE instance started.
    Total System Global Area 1358954496 bytes
    Fixed Size 2128280 bytes
    Variable Size 1203668584 bytes
    Database Buffers 150994944 bytes
    Redo Buffers 2162688 bytes
    CREATE CONTROLFILE REUSE SET DATABASE "DMART01" RESETLOGS NOARCHIVELOG
    ERROR at line 1:
    ORA-01503: CREATE CONTROLFILE failed
    ORA-00059: maximum number of DB_FILES exceeded
    ORA-01110: data file 211:
    '/data/oracle/dmart01/d05/oracle/dmart01data/DW_PROD_MEDIUM11.dbf'
    In my trace file it has
    CREATE CONTROLFILE REUSE SET DATABASE "DMART01" RESETLOGS NOARCHIVELOG
    MAXLOGFILES 16
    MAXLOGMEMBERS 2
    MAXDATAFILES 500
    MAXINSTANCES 1
    MAXLOGHISTORY 1816
    Additional information - the data warehouse has an entire tablespace with many datafiles that I don't want in DMART01. I edited those datafile lines out of my trace file. Could some remnants of that be causing my problems? The DB_FILES parameter in the warehouse is set to 500. In DMART01 it's only 200. In the clone, I only want to bring over 61 datafiles. Besides, I thought that in the create controlfile statement would set the parameter, in this case to 500.
    I'm stumped. Any suggestions?
    Thanks!
    Sharon

    I answered my own question. If anyone is curious, here's what I did:
    in DMART01
    1. startup nomount;
    2. create pfile from spfile;
    3. shutdown immediate;
    4. edited pfile to have dw_files=500
    5. startup nomount pfile=initDMART01.ora;
    6. create spfile from pfile;
    7. shutdown immediate;
    8. @clone09142009.sql

  • Maxdatafiles and db_files

    hi everybody ;
    i have 10.2.0.2 run on SLES10 . it ' s huge db. db_files parameter is set to =200
    my db is growing day by day and i will reach this limit at 2 months time. as i search on web ;
    on metalink it says ;
    If the DB_FILES parameter cannot be changed because it is already set
    to the MAXDATAFILES parameter value, set at database creation, you
    must create a new control file.
    on metalink ;
    with Oracle 8 and above when MAXDATAFILES is reached the
    controlfile will expand automatically as long as there is disk space available.
    on another web site ;
    starting from oracle 8 this hard limit parameter can be easily expanded up to DB_FILES parameter. So, if you attempt to add a new file whose number is greater than MAXDATAFILES, but less than or equal to DB_FILES, the MAXDATAFILES parameter of the control file will expand automatically to accommodate more files.
    So, if you are after oracle 8i then we should just forget about MAXDATAFILES parameter. We should rather think about DB_FILES parameter.
    which one is true and on first metalink document it says db_files parameter can not be changed if it set to MAXDATAFILES parameter value ? how can i understand if my db_files parameter is set to MAXDAFILES or as the second metalink and the other web site say that MAXDATAFILES parameter expand automaticaly?
    thanks....

    You can change the MAXDATAFILES parameter:
    1. Shutdown database; Backup database
    2. Start up database
    3. From sqlplus as sysdba, type: alter database backup controlfile to trace;
    4. Type: shutdown immediate:
    5. Go to the operating system and go to the USER_DUMP_DEST directory
    6. Find the newest trace file
    7. Edit the trace file and change MAXDATAFILES to the new value. You will also need to delete all of the lines prior to the line that begins: STARTUP NOMOUNT. See sample text below (the example is for a database using ARCHIVELOG):
    STARTUP NOMOUNT
    CREATE CONTROLFILE REUSE DATABASE "ORACLE" RESETLOGS ARCHIVELOG
    MAXLOGFILES 32 MAXLOGMEMBERS 2
    MAXDATAFILES 32
    MAXINSTANCES 16
    MAXLOGHISTORY 1600
    LOGFILE
       GROUP 1 'D:\ORAWIN95\DATABASE\LOG2ORCL.ORA' SIZE 200K,
       GROUP 2 'D:\ORAWIN95\DATABASE\LOG1ORCL.ORA' SIZE 200K DATAFILE 'D:\ORAWIN95\DATABASE\SYS1ORCL.ORA', 'D:\ORAWIN95\DATABASE\USR1ORCL.ORA', 'D:\ORAWIN95\DATABASE\RBS1ORCL.ORA', 'D:\ORAWIN95\DATABASE\TMP1ORCL.ORA' ;
    # Database can now be opened normally. ALTER DATABASE OPEN RESETLOGS;
    8. From sqlplus as sysdba, run the edited trace file from step 7.
    9. Shutdown database and backup database

  • Multiple Location of datafiles in Data Guard Environment

    I have Data Guard setup in my oracle 10g database. Uptil now , all the datafiles were at same location, therefore db_file parameter setting in pfile was fine. Now I want to move my few of the datafiles at another location. Say, few of my datafiles would be in F:\ and some of them in G:\. How do I now set db_file parameters in Pfile ?

    OK...
    Alter database rename should be ok As long as both the PRIMARY directory strucures are same or if you have set the parameter db_file_name_convert
    While asking a question..
    You should post all the necessary information for us to help(is possible)
    1.Oracle version
    2.Os version
    Thread spesific
    3.Directory strucutrs of Both Priimary and Standby
    4.Init .Ora of both PRIMARY AND STANDBY

  • Execution of SQL statement 'alter tablespace PSAPSR3

    Dear mastah,
    I trying extend tablesapce at oracle, but not succesfully, and have problem,
    maybe can help this issue..
    error problem add tablespace:
    BR0280I BRSPACE time stamp: 2014-01-06 10.27.31
    BR0370I Directory /oracle/SID/sapreorg/semxnacf created
    BR0280I BRSPACE time stamp: 2014-01-06 10.27.32
    BR0319I Control file copy created: /oracle/SID/sapreorg/semxnacf/cntrlSID.old 99106816
    BR0280I BRSPACE time stamp: 2014-01-06 10.27.32
    BR1088I Extending tablespace PSAPSR3...
    BR0280I BRSPACE time stamp: 2014-01-06 10.27.51
    BR0301E SQL error -59 at location BrSqlExecute-1, SQL statement:
    '/* BRSPACE */ alter tablespace PSAPSR3 add datafile '/oracle/SID/sapdata16/sr3_218/sr3.data218' size 4000M autoextend off'
    ORA-00059: maximum number of DB_FILES exceeded
    BR1017E Execution of SQL statement 'alter tablespace PSAPSR3 add datafile '/oracle/SID/sapdata16/sr3_218/sr3.data218' size 4000M autoextend off' failed
    BR0669I Cannot continue due to previous warnings or errors - you can go back to repeat the last action
    BR0280I BRSPACE time stamp: 2014-01-06 10.27.51
    BR0671I Enter 'b[ack]' to go back, 's[top]' to abort:
    regards,
    amin

    BR1088I Extending tablespace PSAPSR3...
    BR0280I BRSPACE time stamp: 2014-01-06 10.27.51
    BR0301E SQL error -59 at location BrSqlExecute-1, SQL statement:
    '/* BRSPACE */ alter tablespace PSAPSR3 add datafile '/oracle/SID/sapdata16/sr3_218/sr3.data218' size 4000M autoextend off'
    ORA-00059: maximum number of DB_FILES exceeded
    $ oerr ora 59
    00059, 00000, "maximum number of DB_FILES exceeded"
    // *Cause:  The value of the DB_FILES initialization parameter was exceeded.
    // *Action: Increase the value of the DB_FILES parameter and warm start.
    $

  • Message in alert log file during the startup of the DB

    Hi,
    i have two instances, i have the same warning in the alert log file during the startup of the DB:
    Oracle instance running on a system with low open file descriptor limit.
    Tune your system to increase this limit to avoid severe performance degradation.
    The db_files parameter was at 1024 for the two instances, i have set it to 300 for the first instance and 550 for second, the message for the first instance was droped(it's ok), but the message was there in the alert log for the second instance.
    The two instance are on the same machine.
    The number of the open file limit on the linux machine is equal to 1024.
    I have shutdown the first instance (with db_files=300) the problem persits for the second instance (with db_files=550).
    My question is how to determinate the right value of db_files parameter to avoid this message.
    Regards.
    Message was edited by:
    learn

    Increase the max number of open file on Linux or decrease db_files.
    f the OS limit is 1024 db_files would have to be >= 472 for the message to be printed. t is printed if an instance is configured to access more datafiles than the OS-specific limit on the number of files that can be open in a single process. In this case the server will re-cycle the file descriptors.
    Vadim Bobrov
    Oracle Database Tools
    http://www.fourthelephant.com

  • Increase max datafiles in 10g

    Hi All,
    Is it necessary to recreate a control file in 10gR1 to increase maxdatafiles parameter.
    Is it not enough if I just set db_files parameter to larger number?
    Thanks,
    Hal.

    What do you say about this?
    ============================
    maxdatafiles is set at 6 in my controlfile
    select * from V$CONTROLFILE_RECORD_SECTION where type = 'DATAFILE';
    TYPE RECORD_SIZE RECORDS_TOTAL RECORDS_USED FIRST_INDEX LAST_INDEX LAST_RECID
    DATAFILE 180 6 6 0 0 2
    select count(*) from dba_data_files;
    COUNT(*)
    6
    show parameter db_files
    NAME TYPE VALUE
    db_files integer 8
    create tablespace dummy03 datafile '/tmp/dummy03.dbf' size 1m
    Tablespace created.
    create tablespace dummy04 datafile '/tmp/dummy04.dbf' size 1m;Tablespace created.
    I have reached 8 datafiles now, so the following shoudl fail
    create tablespace dummy05 datafile '/tmp/dummy05.dbf' size 1m;
    ERROR at line 1:
    ORA-00059: maximum number of DB_FILES exceeded
    and it failed!
    and if I check my alert I actually see this:
    kccrsz: expanded controlfile section 6 from 7 to 8 records
    number of logical blocks in section remains at 1
    kccrsz: expanded controlfile section 4 from 6 to 7 records
    number of logical blocks in section remains at 1
    Completed: create tablespace dummy03 datafile '/tmp/dummy03.
    Mon May 9 19:09:39 2005
    create tablespace dummy04 datafile '/tmp/dummy04.dbf' size 1m
    Mon May 9 19:09:39 2005
    kccrsz: expanded controlfile section 6 from 8 to 9 records
    number of logical blocks in section remains at 1
    kccrsz: expanded controlfile section 4 from 7 to 8 records
    number of logical blocks in section remains at 1
    kccrsz: expanded controlfile section 6 from 9 to 10 records
    number of logical blocks in section remains at 1
    DB_FILES[8] exceeded (fno=9 kcfdpk=8)
    ORA-59 signalled during: create tablespace dummy05 datafile '/tmp/dummy05....
    now I will increase only db_files parameters from 8 to 10
    show parameters db_files
    NAME TYPE VALUE
    db_files integer 10
    create tablespace dummy05 datafile '/tmp/dummy05.dbf' size 1m;
    Tablespace created.
    wow I didnt recreate controlfile and I am able to create new datafiles just by increasing db_files!
    create tablespace dummy06 datafile '/tmp/dummy06.dbf' size 1m;
    Tablespace created.
    next should fail because I reached 10
    create tablespace dummy07 datafile '/tmp/dummy07.dbf' size 1m;
    create tablespace dummy07 datafile '/tmp/dummy07.dbf' size 1m
    ERROR at line 1:
    ORA-00059: maximum number of DB_FILES exceeded
    and this is 8.1.7.4
    check alert again
    create tablespace dummy05 datafile '/tmp/dummy05.dbf' size 1m
    Mon May 9 19:12:21 2005
    kccrsz: expanded controlfile section 4 from 8 to 9 records
    number of logical blocks in section remains at 1
    Completed: create tablespace dummy05 datafile '/tmp/dummy05.
    Mon May 9 19:13:08 2005
    create tablespace dummy06 datafile '/tmp/dummy06.dbf' size 1m
    Mon May 9 19:13:08 2005
    kccrsz: expanded controlfile section 6 from 10 to 11 records
    number of logical blocks in section remains at 1
    kccrsz: expanded controlfile section 4 from 9 to 10 records
    number of logical blocks in section remains at 1
    Completed: create tablespace dummy06 datafile '/tmp/dummy06.d
    Mon May 9 19:13:24 2005
    create tablespace dummy07 datafile '/tmp/dummy07.dbf' size 1m
    Mon May 9 19:13:24 2005
    kccrsz: expanded controlfile section 6 from 11 to 12 records
    number of logical blocks in section remains at 1
    DB_FILES[8] exceeded (fno=11 kcfdpk=10)
    ORA-59 signalled during: create tablespace dummy07 datafile '/tmp/dummy07.d...
    check maxdatafiles again and it´s magically set to 10!
    select * from V$CONTROLFILE_RECORD_SECTION where type = 'DATAFILE';
    TYPE RECORD_SIZE RECORDS_TOTAL RECORDS_USED FIRST_INDEX LAST_INDEX LAST_RECID
    DATAFILE 180 10 10 0 0 6
    dump the controlfile and it´s 10 too!
    STARTUP NOMOUNT
    CREATE CONTROLFILE REUSE DATABASE "LNX817" NORESETLOGS ARCHIVELOG
    MAXLOGFILES 16
    MAXLOGMEMBERS 3
    MAXDATAFILES 10
    MAXINSTANCES 8
    MAXLOGHISTORY 226

  • Creating tablespace and databasefiles

    I am creating a tablespace with sets of database files within it with the following option
    I get the following error:
    CREATE SMALLFILE TABLESPACE "CLAIMS_NEW"
    DATAFILE
    'D:\ORACLE\PRODUCT\10.2.0\ORADATA\QAIDM2\CLAIMS_NEW1.DBF' SIZE 4096M REUSE AUTOEXTEND ON NEXT 8192K MAXSIZE 4096M,
    'D:\ORACLE\PRODUCT\10.2.0\ORADATA\QAIDM2\CLAIMS_NEW2.DBF' SIZE 4096M REUSE AUTOEXTEND ON NEXT 8192K MAXSIZE 4096M,
    'D:\ORACLE\PRODUCT\10.2.0\ORADATA\QAIDM2\CLAIMS_NEW3.DBF' SIZE 4096M REUSE AUTOEXTEND ON NEXT 8192K MAXSIZE 4096M,
    'D:\ORACLE\PRODUCT\10.2.0\ORADATA\QAIDM2\CLAIMS_NEW4.DBF' SIZE 4096M REUSE AUTOEXTEND ON NEXT 8192K MAXSIZE 4096M,
    'D:\ORACLE\PRODUCT\10.2.0\ORADATA\QAIDM2\CLAIMS_NEW5.DBF' SIZE 4096M REUSE AUTOEXTEND ON NEXT 8192K MAXSIZE 4096M,
    'D:\ORACLE\PRODUCT\10.2.0\ORADATA\QAIDM2\CLAIMS_NEW6.DBF' SIZE 4096M REUSE AUTOEXTEND ON NEXT 8192K MAXSIZE 4096M,
    'D:\ORACLE\PRODUCT\10.2.0\ORADATA\QAIDM2\CLAIMS_NEW7.DBF' SIZE 4096M REUSE AUTOEXTEND ON NEXT 8192K MAXSIZE 4096M,
    'D:\ORACLE\PRODUCT\10.2.0\ORADATA\QAIDM2\CLAIMS_NEW8.DBF' SIZE 4096M REUSE AUTOEXTEND ON NEXT 8192K MAXSIZE 4096M,
    'D:\ORACLE\PRODUCT\10.2.0\ORADATA\QAIDM2\CLAIMS_NEW9.DBF' SIZE 4096M REUSE AUTOEXTEND ON NEXT 8192K MAXSIZE 4096M,
    'D:\ORACLE\PRODUCT\10.2.0\ORADATA\QAIDM2\CLAIMS_NEW10.DBF' SIZE 4096M REUSE AUTOEXTEND ON NEXT 8192K MAXSIZE 4096M,
    'D:\ORACLE\PRODUCT\10.2.0\ORADATA\QAIDM2\CLAIMS_NEW11.DBF' SIZE 4096M REUSE AUTOEXTEND ON NEXT 8192K MAXSIZE 4096M,
    'D:\ORACLE\PRODUCT\10.2.0\ORADATA\QAIDM2\CLAIMS_NEW12.DBF' SIZE 4096M REUSE AUTOEXTEND ON NEXT 8192K MAXSIZE 4096M,
    'D:\ORACLE\PRODUCT\10.2.0\ORADATA\QAIDM2\CLAIMS_NEW13.DBF' SIZE 4096M REUSE AUTOEXTEND ON NEXT 8192K MAXSIZE 4096M,
    'D:\ORACLE\PRODUCT\10.2.0\ORADATA\QAIDM2\CLAIMS_NEW14.DBF' SIZE 4096M REUSE AUTOEXTEND ON NEXT 8192K MAXSIZE 4096M,
    'D:\ORACLE\PRODUCT\10.2.0\ORADATA\QAIDM2\CLAIMS_NEW15.DBF' SIZE 4096M REUSE AUTOEXTEND ON NEXT 8192K MAXSIZE 4096M
    NOLOGGING EXTENT MANAGEMENT LOCAL SEGMENT SPACE MANAGEMENT AUTO;
    Error:
    Error at Command Line:1 Column:0
    Error report:
    SQL Error: ORA-00059: maximum number of DB_FILES exceeded
    00059. 00000 - "maximum number of DB_FILES exceeded"
    *Cause:    The value of the DB_FILES initialization parameter was exceeded.
    *Action:   Increase the value of the DB_FILES parameter and warm start.
    I am not sure how to rectify this error ? Do I have to reduce number of database files ?
    Please advise
    Thanks
    Jay

    Cause of The Problem
    You have reached the limit of DB_FILES parameter. Before entering into solution part let's have an idea about DB_FILES and MAXDATAFILES parameter.
    The DB_FILES parameter limits the maximum number of datafile can exist in oracle database. We can't change this parameter dynamically. We have to change it spfile by using ALTER SYSTEM .... SCOPE=SPFILE or in the pfile.
    And the MAXDATAFILES parameter you can find with the CREATE DATABASE command or in CREATE CONTROLFILE command. It is also a limitation of maximum number of datafiles can be in the datafile. But starting from oracle 8 this hard limit parameter can be easily expanded up to DB_FILES parameter. So, if you attempt to add a new file whose number is greater than MAXDATAFILES, but less than or equal to DB_FILES, the MAXDATAFILES parameter of the control file will expand automatically to accommodate more files.
    So, if you are after oracle 8i then we should just forget about MAXDATAFILES parameter. We should rather think about DB_FILES parameter.
    Solution of The Problem
    If you use pfile to startup the database then edit pfile and add/modify the DB_FILES parameter to a greater value so that it can accommodate higher number of datafiles. Then start the database using that pfile.
    If you use spfile to startup the database then issue,
    SQL> alter system set db_files=300 scope=spfile;
    System altered.
    Then start your database and either create tablespace or add datafile to an existing tablespace. Hopefully it will work.source:-
    http://arjudba.blogspot.com/2008/08/maxdatafiles-dbfiles-parameters-and-ora.html
    also refer,
    http://laurentschneider.com/wordpress/2006/01/change-maxdatafiles-malogfiles-maxinstances-maxlogmembers-without-downtime.html

  • Restoring inconsistent cold backup

    Hello all.
    Here's the scenario: I have a 9.2.0.1 database, in noarchivelog mode, running on Windoze XP. While the database is running, I took a backup of all the datafiles, control files and online logs using copy and paste on windoze. After the copy was done, I have shut down the database. I copied back into the original location the backup of the datafiles I made earlier.
    My question is: How I go about to restore this database ? I dont care wether it is consistent or not, I just want to open it to make an export out of it
    Things I have tried so far unsuccessfully:
    allowresetlogs_corruption
    allowreadonly_corruption
    If you could shed some light on it on the steps I would need to make, that would be appreciated.
    Thanks

    What have you tried to far (specifics please, not general statements)?
    I have done something close to what you want do a couple of years ago for an Oracle 9.2.0.4 DB on Linux and am looking for my notes. One key thing I found was to not try to change anything but just get a DB up and running that would let me get the data out. That means don't try to use different file paths or anything other changes.
    It involved creating a new minimal database from scratch by hand that has the same name, paths, block size as the old one. In my case this minimal DB only had the system_01.dbf, undotbs_01.dbf and users_01.dbf data files even though I ultimately needed access to about 40 others.
    The idea is to get a template DB in place that refers to the same paths, then shut it down and replace the minimal system_01.dbf file with the one from your backup. It turned out for me that Oracle could open, load and use my old system tablespace even though it referred to tablespaces that didn't exist yet in the new minimal system; obviously I couldn't use them yet but they didn't cause Oracle to fail to start.
    1. You can toss the redo logs since there is nothing in them you need or can use and you will never be able to read them anyway.
    2. You will need to create the instance and DB using the same version of Oracle that you had. There were key differences between the early Oracle 9 versions and I wasn't able to get around them.
    3. Create an instance for the correct DB version if you don't have one. The easiest way to create a new one is to do a default installation from the original set up files but DO NOT create a database. When given choices use the same values (character set, paths, etc) as your old DB.
    4. You will need a text version of the init.ora file in the same location (name and path) where it was before - the character set and block size have to match what you had before. If you have a copy of this file you can try it first. If you don't then create a minimal file; that is, no entries that are not necessary. Oracle comes with a sample with a lot entries commented out.
        a. use the same db_name= parameter in the init.ora file
        b. use a db_files= parameter that is large enough for all of the data files that you will later need access to
        c. use a compatible- parameter that is 9.2.0 and no later
    5. You won't be able to use your old, copied, control files since they are binary files and the content won't match the new database; trying to use them will not get you anywhere.
    6. Once you can bring up this new DB the first thing you should do is shut it down and take a cold backup.
    7. Replace the new system_01.dbf and users_01_dbf files with the ones you copied from the old DB. The new control file can mount and open the old tablespace file and users file since the control file (old Oracle systems only, mind you) have NAME and PATH information but do not care about actual content (how many users, etc).
    8. Make sure you can now open and access the DB with your swapped system and user tablespaces. You won't be able to access objects from the system tables that refer to data files that aren't known to the control file so don't even try to yet.
    9. You can add your other data files to the DB by doing a CREATE CONTROLFILE command, when unmounted, that adds the other data files that you will want access to. Obviously don't add them all at once; add one and then test to make sure that things are ok. You won't be
    It turns out that the control file has the list of datafiles including their names and paths but does not have the sizes; the system tables have the size info and physical info. So you can add a datafile to the control file by path and name without needing to know how big it was supposed to be; that size info will still be in your old system tablespace.I may have missed something and if I fiind my notes will repost with anything else I think of.

  • How can I increase the parameter db_files

    Hi,
    When I am trying to add a new data file to Tablespace it is giving error.
    1. How can I increase the parameter db_files?
    Sap Version is: 4.7E and Database is: 0racle 9.2.0
    Thanks&Regards,
    Nani

    hello nani
    1. connect to database
    SQL> show parameter db_files
    NAME                                 TYPE        VALUE
    db_files                             integer     200
    SQL> alter system set db_files=350 scope=spfile;
    System altered.
    SQL> show parameter db_files
    NAME                                 TYPE        VALUE
    db_files                             integer     200
    SQL> shutdown immediate
    Database closed.
    Database dismounted.
    ORACLE instance shut down.
    SQL> startup
    ORACLE instance started.
    Total System Global Area  264241152 bytes
    Fixed Size                  1248476 bytes
    Variable Size             176161572 bytes
    Database Buffers           79691776 bytes
    Redo Buffers                7139328 bytes
    Database mounted.
    Database opened.
    SQL> create pfile from spfile;
    File created.
    SQL> show parameter db_files
    NAME                                 TYPE        VALUE
    db_files                             integer     350
    SQL>
    Edited by: Shishir  Bajpai on Mar 3, 2009 12:38 PM

  • Maximum no. of datafile with parameter DB_FILES and size of datafile

    I am working on sap 4.6C with oracle 9.2.0.7.0 and my OS is AIX 5.3
    my initSID.ora file consist fo DB_FILES = 1022 which means I can add maximum to 1022 datafiles for a tablespace. Now we are nearing to the figure and worried for increasing the parameter DB_FILES value but as oracle document it is mentioned that the value for parameter is OS dependent. I want suggestion regarding the how to increase the value of parameter and can it be given ulimited value.
    The other query is that now we have a limit of 2GB size for a  datafile so every time when a datafile is added to a tablespace it size is 2GB can I increase the size of the datafile to 4GB/6GB/8GB with AIX 5.3 as os system if possible how can it be achieved.
    Thanks
    Regards
    Jairaj

    Hello,
    I think you are a little confused.
    DB_FILES is a "soft" value, and indicate the maximun number of datafiles on the <b>database</b> not tablespace. You can check the oracle documentation:
    [quote=Oracle Reference]
    <i>DB_FILES specifies the maximum number of database files that can be opened for this database. The maximum valid value is the maximum number of files, subject to operating system constraint, that will ever be specified for the database, including files to be added by ADD DATAFILE statements.</i>
    [quote=Oracle Reference]
    There is a hard limit ( regardless of the value of DB_FILES ) You can see the note 606395 for details:
    <quote>
    1.  Physical database limits                                                                               
    o  Database files                                             
    <b>       maximum per tablespace : on most operating systems 1022  </b>  
    <b>       maximum per database :   65533 total, further limited by the
                                     db_files init<SID>.ora parameter  </b>
            Database file size:  see note 129439 for OS-specifics      
    <quote>
    This means that there is NO posibility of having MORE than 1022 files per tablespace, no matter what.
    Also it is not possible to have more than 65533 files in total.
    For your second query the answer is on the note 129439 "Maximum file sizes with Oracle" ( also mentioned on the previous note )
    PS: Looks like stefan was faster than me
    Note 1: MAXDATAFILES is not a hardlimit in 9i either
    Note 2: The limites mentioned in the note 606395 are also valid for 10g
    Message was edited by:
            Fidel Vales

Maybe you are looking for