Erstellen einer Datenbank mit OMF Konfiguration ohne DBCA


Hallo,
es ist sicher nichts Neues, aber hier ein kurzes Beispiel, wie man mit kleinsten Aufwand eine Datenbank erstellt.

Zuerst erstellen wir ein Parameter File:

control_files = (/u01/app/oracle/oradata/EMREP/controlfiles/control01.ctl)
db_name = EMREP
db_block_size = 8192
memory_target = 1073741824 
db_create_file_dest='/u01/app/oracle/oradata'
db_create_online_log_dest_1='/u01/app/oracle/oradata'
undo_tablespace='SYS_UNDOTS'

Da ich hier mit einer 11.1 Datenbank teste (ja mir ist klar, das dies nicht mehr die aktuellste ist) habe ich den Parameter undo_tablespace SYS_UNDOTS gesetzt da der Parameter beim create database Befehl ignoriert wird und es zu einem Fehler kommt.

SQL> create database EMREP;
create database EMREP
*
ERROR at line 1:
ORA-01092: ORACLE instance terminated. Disconnection forced
Process ID: 21329Session ID: 115 Serial number: 3

Im Alert Log kann man gut erkennen das der Parameter nicht zieht und die create undo tablespace Anweisung einen anderen Tablespace Namen verwendet, deswegen habe ich meinen Parameter gleich auf SYS_UNDOTS gesetzt.

CREATE UNDO TABLESPACE SYS_UNDOTS DATAFILE  SIZE 10M AUTOEXTEND ON
ORA-30012 signalled during: CREATE UNDO TABLESPACE SYS_UNDOTS DATAFILE  SIZE 10M AUTOEXTEND ON
...
Errors in file /u01/app/oracle/product/11.1.0/db_1/log/diag/rdbms/emrep/EMREP/trace/EMREP_ora_21432.trc:
ORA-00604: error occurred at recursive SQL level 1
ORA-30012: undo tablespace 'UNDOTBS1' does not exist or of wrong type
Errors in file /u01/app/oracle/product/11.1.0/db_1/log/diag/rdbms/emrep/EMREP/trace/EMREP_ora_21432.trc:
ORA-01501: CREATE DATABASE failed
ORA-01519: error while processing file '?/rdbms/admin/dtxnspc.bsq' near line 5
ORA-00604: error occurred at recursive SQL level 1
ORA-30012: undo tablespace 'UNDOTBS1' does not exist or of wrong type
Error 1519 happened during database creation, shutting down database
USER (ospid: 21432): terminating the instance due to error 1519
Instance terminated by USER, pid = 21432
ORA-1092 signalled during: create database EMREP
...
ORA-1092 : opiodr aborting process unknown ospid (21432_139759545214688)

Aber wieder zurück zur Datenbank Erstellung. Als nächstes benötigen wir noch eine Passwort Datei.

orapwd file=orapwEMREP password=welcome1

Haben wir das alles erledigt können wir einfach eine Datenbank mit dem create database Parameter erstellen.

[oracle@vmsvrocm02 dbs]$ sqlplus / as sysdba

SQL*Plus: Release 11.1.0.6.0 - Production on Sun Jan 27 14:10:19 2013

Copyright (c) 1982, 2007, Oracle.  All rights reserved.

Connected to an idle instance.

SQL> startup nomount
ORACLE instance started.

Total System Global Area 1068937216 bytes
Fixed Size                  2151248 bytes
Variable Size             599788720 bytes
Database Buffers          461373440 bytes
Redo Buffers                5623808 bytes
SQL> create database EMREP;

Database created.

Nun benötigen wir noch ein Basis Dictionary, welches wir mit den alt bekannten Skripts catalog.sql und catproc.sql erstellen.

SQL> @?/rdbms/admin/catalog.sql
SQL> @?/rdbms/admin/catproc.sql

Was wir jetzt haben ist eine Datenbank mit einer Blocksize von 8K und einem Characterset von US7ASCII. Um die Erstellung abzuschliessen sollten wir noch einen TEMP Tablespace anlegen.

SQL> create tablespace temp datafile size 10M;
Tablespace created.

Auch die Passwörter von SYS und SYSTEM sollten geändert werden:

SQL> alter user sys identified by welcome1;

User altered.

SQL> alter user system identified by welcome1;

User altered.

Zum löschen der Datenabank kann man auch mit dem drop database Befehl arbeiten:

SQL> shutdown abort;
ORACLE instance shut down.
SQL> startup mount exclusive restrict;
ORACLE instance started.
Total System Global Area 1068937216 bytes
Fixed Size                  2151248 bytes
Variable Size             599788720 bytes
Database Buffers          461373440 bytes
Redo Buffers                5623808 bytes
Database mounted.
SQL> drop database;
Database dropped.

Wer bei der Datenbankerstellung Änderungen machen will, kann basierend auf dem vorigem Statement aufbauen. Z.b. einen anderen Charset verwenden und den TEMP Tablespace gleich aufbauen.

create database EMREP
character set AL32UTF8
national character set AL16UTF16
default temporary tablespace temp tempfile size 100M;

Wie immer  freue ich mich gerne  über Kommentare

Advertisements

Ein Gedanke zu “Erstellen einer Datenbank mit OMF Konfiguration ohne DBCA

  1. Thanks a lot for sharing this with all of us you actually recognize what you’re talking about! Bookmarked. Please additionally discuss with my website =). We can have a link trade arrangement among us!

Kommentar verfassen

Trage deine Daten unten ein oder klicke ein Icon um dich einzuloggen:

WordPress.com-Logo

Du kommentierst mit Deinem WordPress.com-Konto. Abmelden / Ändern )

Twitter-Bild

Du kommentierst mit Deinem Twitter-Konto. Abmelden / Ändern )

Facebook-Foto

Du kommentierst mit Deinem Facebook-Konto. Abmelden / Ändern )

Google+ Foto

Du kommentierst mit Deinem Google+-Konto. Abmelden / Ändern )

Verbinde mit %s