Create tablespace command
Here is the question...
Assuming an existing tablespace with the same datafile name as a new one being created for a different instance. Is is possible to corrupt the existing datafile by using the SAME datafile path in the create tablespace command by misake.
The existing tablespace (and datafile) are in use by the other instance at the time of teh execution of the erroneous create tablespace command.
I would think (bad thing to do) it would be an O/S error to attempt to re-create the datafile with the same name as an existing and mounted datafile of the same O/S name and that the O/S would have prevented any corruption.
That is what I thought, and evidently Oracle DID complain and rejected the create tablespace command, but it went ahead and corrupted the existing file of the other database anyway, which went unnoticed until the next "bounce" for backups on the affected database. The alert log on the affected database recorded numerous ORA-0600 starting at the time of the create tablespace on the other database.
The corruption consisted of rendering the datafile SIZE (number of blocks) out of synch with what was stored in the control file.
I just got a response back from Metalink that said they were able to re-created the behavior there on Windows, I am awaiting their reply regarding the behavior on UNIX.
Thank you for your consideration of my question and your reply.
Similar Messages
-
Create tablespace in Oracle 10g Express
Hi,
I've been playing around over the last few days with Oracle 10g Express and I need to create my own tablespace and therefore create user associated with my custom table space.
I tried with the command create tablespace, but I am not successful with configuring the parameters such as the datafile location and such. I did go through the Oracle Concepts Guide which was very helpful, but I must be missing something.
Also assuming that my db scheme will be part of my application and therefore released to my client as script so they can re-create my database how would the table space integration work on their end.
I would I have to place my first line of the script to create the table space and ask them for database file location?
Any advice will be appreciated.
Thank you in advance.user12359577 wrote:
The reason why I think I should create my own tablespace is because I am creating a database scheme and thus I think it is appropriate to place my db scheme in its own tablespace instead of simply using the Users tablespace default.
This is my command:
create tablespace MYTBLSPACE;
Error:
Error starting at line 1 in command:
create tablespace MYTBLSPACE
Error at Command Line:1 Column:32
Error report:
SQL Error: ORA-02199: missing DATAFILE/TEMPFILE clause
02199. 00000 - "missing DATAFILE/TEMPFILE clause"
*Cause: A CREATE TABLESPACE statement has no DATAFILE/TEMPFILE clause.
*Action: Specify a DATAFILE/TEMPFILE clause.
I am also not sure how to specify the datafile.
Thank you.How about checking with the fine SQL Reference manual for the syntax of the CREATE TABLESPACE command?
Learning where to look things up in the documentation is time well spent investing in your career. To that end, you should drop everything else you are doing and do the following:
Go to tahiti.oracle.com. Drill down to your product and version.
Spend a few minutes just getting familiar with what is available here. Take special note of the "books" and "search" tabs. Under the "books" tab you will find the complete documentation library.
Spend a few minutes just getting familiar with what kind of documentation is available there by simply browsing the titles under the "Books" tab.
Open the Reference Manual and spend a few minutes looking through the table of contents to get familiar with what kind of information is available there.
Do the same with the SQL Reference Manual.
Do the same with the Utilities manual.
You don't have to read the above in depth. They are reference manuals. Just get familiar with what is there to be referenced. Ninety percent of the questions asked on this forum can be answered in less than 5 minutes by simply searching one of the above manuals.
Then set yourself a plan to dig deeper.
- Read a chapter a day from the Concepts Manual.
- Take a look in your alert log. One of the first things listed at startup is the initialization parms with non-default values. Read up on each one of them in the Reference Manual.
- Take a look at your listener.ora, tnsnames.ora, and sqlnet.ora files. Go to the Network Administrators manual and read up on everything you see in those files.
- When you have finished reading the Concepts Manual, do it again.
Give a man a fish and he eats for a day. Teach a man to fish and he eats for a lifetime.
Edited by: EdStevens on Mar 3, 2010 10:13 AM
Edited by: EdStevens on Mar 3, 2010 10:15 AM -
Create tablespace syntax for raw disk on Solaris
Hi!
I want to create a tablespace over /dev/rdsk/c1t1d1s5
I tried with
svrmgrl>create tablespace rawtb datafile '/dev/rdsk/c1t1d1s5' reuse;
Is this the proper way of creating tablespace over a raw disk?
Can one specify a "filename" to this raw device (w/o a symbolic link creation) for example "rawtb.dbf" ?hi
u just create a symbolic link using ln command. use that in the create tablespace command.directly u can't do that by specifying the raw device name.
regds
vamsee -
The BEST create tablespace options for 9i
What is the best create tablespace command with options to create a tablespace that will be used for a partition in a partitioned table that will potentially get very big with lots of users and lots of data for a very big OLTP database?
I would prefer locally managed tablespaces with uniform extent sizes. For the segment space management, it depends on the concurrency of transactions on this table, but I would prefer automatic segment space management generally.
-
Db2 command for create tablespaces of DB2 V9.1.3
Dear All,
Currently, Ive run prepare for upgrade SAP form 4.6C/DB2 9.1.3 to ECC6.
But, I dont know to db2 command for create tablespaces as below.
Could you please example the DB2 command for create tablespaces as below.
ERROR> Insufficient free space in the database as follows:
Please refer to file DBFPLUSD.RES for more details and dditional information about the results of the free space check on DB6 !!!
ERROR> Create tablespace PSAPDIMD with 120 MB
ERROR> Create tablespace PSAPDIMI with 120 MB
ERROR> Create tablespace PSAPODSD with 130 MB
ERROR> Create tablespace PSAPODSI with 130 MB
ERROR> Create tablespace PSAPFACTD with 120 MB
ERROR> Create tablespace PSAPFACTI with 120 MB
ERROR> Create tablespace PSAPEL700D with 420 MB
ERROR> Create tablespace PSAPEL700I with 220 MB
ERROR> Create tablespace PSAPES700D with 21290 MB
ERROR> Create tablespace PSAPES700I with 5420 MB
Thanks in advance
Regards,
Jaturong P.Hi,
During the PREPARE phase normally it creates a script which you can run for the creation of these Tablespaces,this script can be found in the Upgrade directory(eg:/usr/sap/put/log/DB6TBSXT.CLP - this script will have the command to create the tablespaces).Just run this script,it will create all the tablespaces based on the requirement.
Regards,
Sam
Edited by: Cheriyan Sam on Apr 22, 2008 9:12 AM -
Error on Create Database command for Oracle 9i on Red Hat 9
Error on Create Database command
CREATE DATABASE ora9i
LOGFILE
GROUP 1 ('$HOME/ORADATA/log_01_01_ora9i.rdo') SIZE 10M,
GROUP 2 ('$HOME/ORADATA/log_02_01_ora9i.rdo') SIZE 10M
DATAFILE '$HOME/ORADATA/system_01_ora9i.dbf' SIZE 100M
AUTOEXTEND ON NEXT 50M MAXSIZE 150M
DEFAULT TEMPORARY TABLESPACE temp
TEMPFILE '$HOME/ORADATA/temp_01_ora9i.dbf' SIZE 15M
AUTOEXTEND ON NEXT 5M MAXSIZE 30M
CHARACTER SET WE81SO8859P1
NATIONAL CHARACTER SET AL16UTF16
CREATE DATABASE ora9i
ERROR at line 1:
ORA-01092:ORACLE instance terminated. Disconnection forced.
initora9i.ora file contents :
background_dump_dest=$HOME/ADMIN/BDUMP
core_dump_dest=$HOME/ADMIN/CDUMP
db_name=ora9i
db_files= 80
db_file_multiblock_read_count=8
db_block_buffers=100
shared_pool_size = 3500000
log_checkpoint_interval = 10000
processes=50
parallel_max_servers=5
log_buffer = 32768
max_dump_file_size = 10240
global_name = TRUE
control_files=$HOME/ORADATA/ctrl01.ctl
undo_management=AUTO
user_dump_dest=$HOME/ADMIN/UDUMP
-------------------------------------------------Pleae include REUSE keyword at the end of each file location as shown below...
CREATE DATABASE ora9i
LOGFILE
GROUP 1 ('$HOME/ORADATA/log_01_01_ora9i.rdo') SIZE 10M REUSE,
GROUP 2 ('$HOME/ORADATA/log_02_01_ora9i.rdo') SIZE 10M REUSE
DATAFILE '$HOME/ORADATA/system_01_ora9i.dbf' SIZE 100M REUSE
AUTOEXTEND ON NEXT 50M MAXSIZE 150M
DEFAULT TEMPORARY TABLESPACE temp
TEMPFILE '$HOME/ORADATA/temp_01_ora9i.dbf' SIZE 15M REUSE
AUTOEXTEND ON NEXT 5M MAXSIZE 30M
CHARACTER SET WE81SO8859P1
NATIONAL CHARACTER SET AL16UTF16 -
Machine has the following configuration,
Oracle 10g 10.2.0
Solaris 10
Sparc v9-64 bit
I have mounted NAS(Network attached Storage) device on solaris using NFS file system. The device has been mounted using sharity software.
The problem is that when i execute the following command in sqlplus,
create tablespace test datafile '/storage/test.dbf' size 1m autoextend on
(/storage is the mount point for NAS device)
then i get the following error message
ORA-01119: error in creating database file '/storage/test.dbf'
ORA-27054: NFS file system where the file is created or resides is not mounted with correct options.
Additional Information:2this is the document
http://download-uk.oracle.com/docs/cd/B19306_01/install.102/b15660/app_nas.htm#BCFEAHIC
and this will help either
10gR2 "database backup" to nfs mounted dir results in ORA-27054 NFS error -
Not able to Create TABLESPACE PSAPROLL|PSAPUNDO with 728 MB
Hi Experts,
When i an trying to upgrade PI 7.0 to pi 7.1 with EHP1 in checks roadmap in abap it throws error like
ERROR> Insufficient free space in the database as follows:
Create TABLESPACE PSAPROLL|PSAPUNDO with 728 MB
INFO> To adjust the size of your tablespaces, you may use the commands
in file '/oracle/stage/upg/abap/log/ORATBSXT.LST' using the 'brspace' utility.
Please copy the file before making changes, as it may be
overwritten in subsequent upgrade phases.
In the location
'/oracle/stage/upg/abap/log/ORATBSXT.LST
These are examples for brspace commands to extend/create the required
tablespaces. You can adapt them according to your own needs.
Add option '-c force' to call the commands in batch mode.
Change option '-autoextend' to 'yes' and set '-maxsize' and '-incrsize'
to create autoextensible segments.
brspace -function tscreate -tablespace PSAPROLL|PSAPUNDO -owner SAPSR3 -size 728 -autoe
xtend no
info while creating : PSAPUNDO: Command not found.
with the help of this above command i am not able to create the tablespace.
My Existing tabelspaces are
PSAPSR3
PSAPSR3700
PSAPSR3DB
PSAPSR3USR
PSAPTEMP
PSAPUNDO1
SYSAUX
SYSTEM
Plz help me on this ASAP.
Thanks,
HariYour real problem is that PSAPUNDO does not exist. For an unknown reason you are using PSAPUNDO1. so, you must fix this:
shutdown your DB.
rename tablespace PSAPUNDO1 to PSAPUNDO. this can be done with:
brspace -c force -f tsalter -a rename -t PSAPUNDO1 -n PSAPUNDO
you will also need to change parameter undo_tablespace to PSAPUNDO
if using initSID.ora, change this manually. or else, do this:
alter system set undo_tablespace=PSAPUNDO scope=both;
you might need to restart your database.
good luck. -
Alter tablespace command problem (sql statement))
Hello,
I have a table space named t_space2.
I wanna add a datafile for this tablespace so I wrote on sql the following:
Alter tablespace t_space2
add datafile 'D:\DATA\cust.dat'
size 30 M;
it gives me the following message:
table space t_space2 doesn't exist!!!
the tablespace exsits on dba_tablespaces.
Thank u in advance
nullHi,
the reason may be that one:
You created the tablespace with a command like that:
CREATE TABLESPACE "goofy"
DATAFILE 'E:\ORADB8I\ORADATA\WARPING\GOOFY_01.dbf' SIZE 5M REUSE
DEFAULT STORAGE ( INITIAL 80K NEXT 80K MINEXTENTS 1 MAXEXTENTS UNLIMITED PCTINCREASE 1 )Using the quotes, You've indicated to the DB to use the name exaclty as written, so in lower cases.
Because of that, every time You need to refere to the tablespace, but the same is for tables or column names, Youve to use the name "goofy" intead of goofy or GOOFY.
This is used to permit to the user, if it is necessary to the application, to use a field name that may be:
"Total Amount Field"
I believe that this is the rela reason.
Bye Max
null -
Import database from Linux to Windows fails with creating tablespaces
Using (Oracle10g/Linux) user/schema (i think)"Sys" i exported succesfully full database and produced a log file which looks like this:
Connected to: Oracle Database 10g Enterprise Edition Release 10.2.0.4.0 - 64bit Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options
Export done in UTF8 character set and AL16UTF16 NCHAR character set
server uses AL32UTF8 character set (possible charset conversion)
Note: table data (rows) will not be exported
About to export the entire database ...
exporting tablespace definitions
exporting profiles
exporting user definitions
exporting roles
exporting resource costs
exporting rollback segment definitions
exporting database links
. exporting sequence numbers
exporting directory aliases
exporting context namespaces
exporting foreign function library names
exporting PUBLIC type synonyms
exporting private type synonyms
exporting object type definitions
exporting system procedural objects and actions
exporting pre-schema procedural objects and actions
exporting cluster definitions
about to export SYSTEM's tables via Conventional Path ...
exporting table DEF$_AQCALL
exporting table DEF$_AQERROR
exporting table DEF$_CALLDEST
EXP-00091: Exporting questionable statistics.
Export terminated successfully with warnings.Now (in Oracle10 Express/ Windows) i'm importing the dmp-file using user/schema System, following errors occur:
Connected to: Oracle Database 10g Express Edition Release 10.2.0.1.0 - Production
Export file created by EXPORT:V10.02.01 via conventional path
Warning: the objects were exported by SYS, not by you
import done in AL32UTF8 character set and AL16UTF16 NCHAR character set
export client uses UTF8 character set (possible charset conversion)
. importing SYSTEM's objects into SYSTEM
IMP-00017: following statement failed with ORACLE error 1119:
"CREATE UNDO TABLESPACE "UNDOTBS1" BLOCKSIZE 8192 DATAFILE '/u01/app/oracle"
"/oradata/live/undotbs01.dbf' SIZE 251658240 AUTOEXTEND ON NEXT 524288"
"0 MAXSIZE 32765M EXTENT MANAGEMENT LOCAL "
IMP-00003: ORACLE error 1119 encountered
ORA-01119: error in creating database file '/u01/app/oracle/oradata/live/undotbs01.dbf'
ORA-27040: file create error, unable to create file
OSD-04002: unable to open file
O/S-Error: (OS 3) The system cannot find the path specified.
IMP-00015: following statement failed because the object already exists:
"CREATE TABLESPACE "SYSAUX" BLOCKSIZE 8192 DATAFILE '/u01/app/oracle/oradat"
"a/live/sysaux01.dbf' SIZE 346030080 AUTOEXTEND ON NEXT 10485760 MAXS"
"IZE 32765M EXTENT MANAGEMENT LOCAL AUTOALLOCATE ONLINE PERMANENT SEGMENT"
" SPACE MANAGEMENT AUTO"
IMP-00000: Import terminated unsuccessfullyWhy i get those errors when importing? Seems like the main problem is that the export was done in Linux which have it's own directories like '/u01/app/oracle/oradat' and others but in my Windows OS those folders don't exist? The whole import fails because tablespaces couldn't be created, later Schemas couldn't be created and tables also. Can i get the import work somehow?
I runned the import as following:
C:\Users\charlesr>imp userid=system/a FULL=Y FILE=exp_ddl.dmp log=imp.logMy Oracle 10 XE is installed into folder:
D:\oraclexe\app\oracle\product\10.2.0Maybe i should run the import command in drive D where my Oracle lives, not in drive C as i did?
And now when i tried to run the import on drive C, seems like my database user "system/a" is corrupted or password corrupted:
C:\Users\charlesr>d:
D:\>imp userid=system/a FULL=Y FILE=exp_ddl.dmp log=imp.log
Import: Release 10.2.0.1.0 - Production on R Sept 10 17:32:25 2010
Copyright (c) 1982, 2005, Oracle. All rights reserved.
IMP-00058: ORACLE error 1017 encountered
ORA-01017: invalid username/password; logon deniedUsername:I think i don't have on OS level rights to write to C-drive, that's why i got errors. But now i can't log in with system/a, why so?
Edited by: CharlesRoos on Sep 10, 2010 7:38 AMCharlesRoos wrote:
Why i get those errors when importing? Seems like the main problem is that the export was done in Linux which have it's own directories like '/u01/app/oracle/oradat' and others but in my Windows OS those folders don't exist? The whole import fails because tablespaces couldn't be created, later Schemas couldn't be created and tables also. Can i get the import work somehow?Precreate tablespaces. You could use import option show=y to capture import run statements and find CREATE TABLESPACE statements. Keep in mind your target database already has undo, temp system, etc. tablespaces so you do not need to precreate them. Then rerun import.
SY. -
Create tablespace in Oracle 11g
Windows 2008 R2 (64-bit OS)
Oracle 11g R2 Standard Edition ONE(64-bit database)
I use the following Oracle command to create tablespace in 11g.
CREATE TABLESPACE TEST_TBS
DATAFILE
'C:\ORACLE\ORADATA\TEST_TBS01.DBF' SIZE 5M
AUTOEXTEND ON NEXT 5M
MAXSIZE 50000M;
- The above command works fine.
Is there any better commands i need to be using in creating a tablespace w.r.t. performance and management.TSharma wrote:
it is recommended to have small sized blocks for OLTP, and big sized for DSS. The reasons:
You can try different block sizes in tablespaces...
On OLTP, a smaller block size reduces contention:
1. Reduces the possibility of concurrent transaction and locks on the same block.
2. Provides a better locking mechanism
3. Less transacction locks possibilities at the block header.
DSS benefit from big blocks mainly because of IO:
1. Retrieves in less IO operations more data, which is critical for FTS and index scans.
2. A higher row density means less IO
3. Indexes retrieve information on a block per block basis, with big blocks indexes are retrieved with less IO
4. Reduces the chances of chained rows.
Check the following link for examples and details information.If johnpau needs a 50G file he has no choice: 16K blocks is the only option.
But that advice about different blocksizes is very twentieth century. Nowadays, it doesn't matter. -
Hi;
I wanna learn one thing...
I have oracle ebs r11i wiht 10gr2 db, and its prod instance...
Issue is like this:
I have one tablespace lets us call it XXX and it has datafile like xx1.dbf,xx2.dbf..... I want to delete those dbf becouse their each size is 40 GB, and i want to create 2 new datafile which is each 10Gb.
Would you give me steps and command how i can do that?
Thankstablespace - XXX
datafile - xx1.dbf,xx2.dbf.....
you want to delete those dbf becouse their each size is 40 GB, and i want to create 2 new datafile which is each 10Gb.
1) If you want to delete 40 GB dbf's, you will loose data.
2) If you really do not want those data, you can go ahead by dropping and creating DBF with 10 GB.
steps and command how i can do that?
I have give below sample commands, go through it thoroughly and go ahead.
Best of Luck.
=================================================================
CREATING TABLESPACES
====================
CREATE TABLESPACE userdata DATAFILE '/u01/oradata/userdata01.dbf' SIZE 100M
AUTOEXTEND ON NEXT 5M MAXSIZE 200M;
Locally Managed Tablespaces
===========================
CREATE TABLESPACE userdata DATAFILE '/u01/oradata/userdata01.dbf' SIZE 500M
EXTENT MANAGEMENT LOCAL UNIFORM SIZE 256K;
Dictionary Managed Tablespaces
==============================
CREATE TABLESPACE userdata DATAFILE '/u01/oradata/userdata01.dbf' SIZE 500M
EXTENT MANAGEMENT DICTIONARY DEFAULT STORAGE ( initial 1M NEXT 1M );
Undo Tablespace
===============
CREATE UNDO TABLESPACE undo1 DATAFILE '/u01/oradata/undo101.dbf' SIZE 40M;
Enabling Automatic Extension of Data Files
==========================================
ALTER DATABASE DATAFILE '/u01/oradata/userdata02.dbf' SIZE 200M AUTOEXTEND ON NEXT 10M MAXSIZE 500M;
SAMPLES
=======
SQL> CREATE TABLESPACE data01
2 DATAFILE '$HOME/ORADATA/u04/data01.dbf' SIZE 2M
3 EXTENT MANAGEMENT DICTIONARY;
Tablespace created.
SQL> CREATE TABLESPACE data02
2 DATAFILE '$HOME/ORADATA/u03/data02.dbf' SIZE 1M
3 EXTENT MANAGEMENT LOCAL UNIFORM SIZE 100K;
Tablespace created.
SQL> CREATE TABLESPACE indx01
2 DATAFILE '$HOME/ORADATA/u02/indx01.dbf' SIZE 1M
3 AUTOEXTEND ON NEXT 500K MAXSIZE 2M
4 EXTENT MANAGEMENT LOCAL UNIFORM SIZE 4K;
Tablespace created.
SQL> CREATE TABLESPACE ronly
2 DATAFILE '$HOME/ORADATA/u01/ronly01.dbf' SIZE 1M;
Tablespace created.
TO QUERY ALL TABLESPACES
========================
SELECT * FROM v$tablespace;
ALTER TABLESPACE
================
ALTER DATABASE DATAFILE '$HOME/ORADATA/u03/data02.dbf' RESIZE 1500K; -
Create tablespace with extend, etc.
Hi guys,
I am typing the following commands bellow: (ORACLE_HOME and ORACLE_SID is set up correctly).
#sqlplus sys/<sys-password> as sysdba ==> worked very well, of course !
SQL> create tablespace imm datafile $ORACLE_HOME/oradata/$ORACLE_SID/imm01.dbf size 100M autoextend on next 100M;
ERROR at line 1:
ORA-01034: ORACLE not available
I have the below scripts set up correctly. Any one know how can I solve this problem ?!
Any help is appreciate !
# dbstart
SQL*Plus: Release 9.2.0.1.0 - Production on Fri Apr 7 16:46:24 2006
Copyright (c) 1982, 2002, Oracle Corporation. All rights reserved.
SQL> Connected to an idle instance.
SQL> ORACLE instance started.
Total System Global Area 672223892 bytes
Fixed Size 455316 bytes
Variable Size 268435456 bytes
Database Buffers 402653184 bytes
Redo Buffers 679936 bytes
Database mounted.
Database opened.
SQL> Disconnected from Oracle9i Release 9.2.0.1.0 - Production
JServer Release 9.2.0.1.0 - Production
Database "immdb" warm started.
# lsnrctl start
LSNRCTL for Solaris: Version 9.2.0.1.0 - Production on 07-APR-2006 16:46:46
Copyright (c) 1991, 2002, Oracle Corporation. All rights reserved.
Starting /apps/oracle/OraHome//bin/tnslsnr: please wait...
TNSLSNR for Solaris: Version 9.2.0.1.0 - Production
System parameter file is /apps/oracle/OraHome/network/admin/listener.ora
Log messages written to /apps/oracle/OraHome/network/log/listener.log
Listening on: (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=EXTPROC)))
Listening on: (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=gama2)(PORT=1521)))
Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC)))
STATUS of the LISTENER
Alias LISTENER
Version TNSLSNR for Solaris: Version 9.2.0.1.0 - Production
Start Date 07-APR-2006 16:46:46
Uptime 0 days 0 hr. 0 min. 0 sec
Trace Level off
Security OFF
SNMP OFF
Listener Parameter File /apps/oracle/OraHome/network/admin/listener.ora
Listener Log File /apps/oracle/OraHome/network/log/listener.log
Listening Endpoints Summary...
(DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=EXTPROC)))
(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=gama2)(PORT=1521)))
Services Summary...
Service "PLSExtProc" has 1 instance(s).
Instance "PLSExtProc", status UNKNOWN, has 1 handler(s) for this service...
Service "immdb.gama2" has 1 instance(s).
Instance "immdb", status UNKNOWN, has 1 handler(s) for this service...
Service "oradb.gama2" has 1 instance(s).
Instance "oradb", status UNKNOWN, has 1 handler(s) for this service...
The command completed successfully
Cheers,
MuriloCan i perhaps add Operating system environment variable to DATAFILE value somehow? I don't want to create tablespace with full file path, starting from drive name and ending with file name.You can use variables in dbca when you create a database (I already can hear you say you don't want that)
You can also use Oracle Managed Files for the entire database ( I already can hear you say you don't want that)
You can not use relative paths, which begs the question why you don't want to use an absolute path, assuming you seldomly create a tablespace.
I don't want to see posts like yours with unjustified 'complaints', yet I do respond to it.
Sybrand Bakker
Senior Oracle DBA -
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
JayCause 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 -
I'm unable to get sqlplus to recognize predefined Windows environment variables. For example:
CREATE TABLESPACE PRODUCT DATAFILE '%ORACLE_DIR%\oradata\xxx\PRODUCT.DAT' SIZE 1M AUTOEXTEND ON NEXT 1M;
%ORACLE_DIR% = C:\bas\db\oracle
After trying to execute this statement the following error gets returned:
ERROR at line 1:
ORA-01119: error in creating database file
'BAS_ORACLE_HOME\oradata\bas\PRODUCT.DAT'
ORA-27040: skgfrcre: create error, unable to create file
OSD-04002: unable to open file
O/S-Error: (OS 3) The system cannot find the path specified.
However, when I enter the command as:
CREATE TABLESPACE PRODUCT DATAFILE 'C:\bas\db\oracle\oradata\xxx\PRODUCT.DAT' SIZE 1M AUTOEXTEND ON NEXT 1M;
The tablespace gets completed successfully.
Therefore, how do I get the CREATE TABLESPACE statement to recognize ORACLE_DIR?
Thank you in advance for your help!I sometimes pass in filenames as parameters to SQL*Plus
and then use the argument substitution variables.
For example:
sqlplus system/manager @myscript.sql c:\mydir\myfile
Where myscript.sql contains
create .... datafile '&1' ...
Another common solution is to construct the script
in a shell environment that does the the OS variable
expansion before the script is passed to SQL*Plus.
Typically this is with a "here document". In Perl
it would be something like:
sqlplus -s <<EOF;
system/manager
create ... datafile $ENV{'ORACLE_DIR'} ...
exit
EOF
-- C
Maybe you are looking for
-
Photoshop CS6 Freezes on launch - Windows 7 64bit
Photoshop CS6 Freezes when I lauch. I'm in the process of recovering from a computer failure and am loading all my apps onto a new Windows 7 machine. So far all apps but photoshop work properly When the CS6 window appears and I attempt to do any oper
-
Can you batch save as pdf's to excel files
I was wondering if there was a way of batch saving a number of PDF documents to EXCEL files so then we can collate and graph the data from there.
-
Computer vs. Ipod Problems
How do I know if my computer is the problem and not the Ipod? I'm begining to think it is the computer, after the Ipod was recognized on one computer and not the other. Of course, the computer that wouldn't recognize the ipod, has all my music. The c
-
Hi All, Please help me on this. I am getting this exception when i tried to run my jsp using AJAX. org.apache.jasper.JasperException: javax.servlet.ServletException: java.lang.NoClassDefFoundError: org/apache/taglibs/standard/lang/support/ExpressionE
-
Problems with SQL Developer 2.1
I have upgraded to SQL Developer 2.1 from 1.5.5. Iam presenting my overall experience with SQL Developer 2.1 compare to 1.5.5 version. If the session expires, reconnecting is really pain in all SQL Developer versions. It opens a new blank window ever