Com crear una base de dades Oracle 10G manualment
Anem a crear una base de dades nova manualment sense l'assistent gràfic amb Oracle 10g.
És recomanable partir d'una base de dades ja feta i canviar els paràmetres a conveniència.
Per començar el primer que hem de fer és crear a mà, un arbre de directoris on aniran cadascun dels elements.
Suposem que tenim la següent ruta o similar:
/u01/app/oracle/admin
on admin conté una subcarpeta per cada base de dades. Creem una nova subcarpeta per la nova bd o bé copiem una altra subcarpeta sencera i buidem tot el contingut. Suposem que tenim una bd creada de nom bd i volem crear una nova bd de nom nova_bd:
cp -r bd/ nova_bd
dins de nova_bd tenim la següent estructura:
drwxr-x--- 2 oracle oinstall 356352 Apr 24 13:03 adump
drwxr-x--- 2 oracle oinstall 86016 Apr 24 13:03 bdump
drwxr-x--- 2 oracle oinstall 4096 Apr 22 13:50 cdump
drwxr-x--- 2 oracle oinstall 4096 Apr 24 13:50 dpdump
drwxr-x--- 2 oracle oinstall 4096 Apr 22 13:50 pfile
drwxr-x--- 2 oracle oinstall 4096 Apr 24 12:59 scripts
drwxr-x--- 2 oracle oinstall 131072 Apr 24 13:03 udump
drwxr-x--- 2 oracle oinstall 86016 Apr 24 13:03 bdump
drwxr-x--- 2 oracle oinstall 4096 Apr 22 13:50 cdump
drwxr-x--- 2 oracle oinstall 4096 Apr 24 13:50 dpdump
drwxr-x--- 2 oracle oinstall 4096 Apr 22 13:50 pfile
drwxr-x--- 2 oracle oinstall 4096 Apr 24 12:59 scripts
drwxr-x--- 2 oracle oinstall 131072 Apr 24 13:03 udump
buidem cadascuna de les subcarpetes excepte la scripts que podrem aprofitar per modificar.
Decidim quin serà el SID de la base de dades. Per exemple: nova_bd (hi ha una limitació de 8 caràcters).
Creem el fitxer init.ora. Aquest fitxer conté els paràmetres d'inicialització de la bd. Podem copiar-ne un que ja tinguem d'una altra bd i modificar-lo canviant les diferents rutes que inclou a subcarpetes i el SID. El guardem a la carpeta $ORACLE_HOME/dbs/initnova_bd.ora.
Ens connectem amb:
sqlplus /nolog
connect sys as sysdba;
Creem un fitxer SPFILE (Server Parameter File):
CREATE SPFILE='/u01/oracle/dbs/spfilenova_bd.ora'
FROM
PFILE='/u01/oracle/dbs/initnova_bd.ora';
Engeguem la instància però sense muntar-la:
startup nomount
Ara s'han creat els processos en background que permetran crear la bd. La bd en si encara no existeix. Per a crear la bd executem la comanda (les quantitats de memoria, les rutes i el nombre de redologs s'han d'ajustar en cada cas):
CREATE DATABASE nova_bd
USER SYS IDENTIFIED BY
USER SYSTEM IDENTIFIED BY
LOGFILE GROUP 1 ('//oradata/nova_bd/redo01.log') SIZE 50M,
GROUP 2 ('//oradata/nova_bd/redo02.log') SIZE 50M,
GROUP 3 ('//oradata/nova_bd/redo03.log') SIZE 50M,
MAXLOGFILES 5
MAXLOGMEMBERS 5
MAXLOGHISTORY 1
MAXDATAFILES 100
MAXINSTANCES 1
CHARACTER SET WE8ISO8859P1
NATIONAL CHARACTER SET AL16UTF16
DATAFILE '/oradata/nova_bd/system01.dbf' SIZE 1024M REUSE
EXTENT MANAGEMENT LOCAL
SYSAUX DATAFILE '/oradata/nova_bd/sysaux01.dbf' SIZE 1024M REUSE
DEFAULT TEMPORARY TABLESPACE temp
TEMPFILE '/oradata/nova_bd/temp01.dbf'
SIZE 32767M REUSE
UNDO TABLESPACE undotbs1
DATAFILE '/oradata/nova_bd/undotbs01.dbf'
SIZE 11065M REUSE AUTOEXTEND ON MAXSIZE UNLIMITED;
USER SYS IDENTIFIED BY
USER SYSTEM IDENTIFIED BY
LOGFILE GROUP 1 ('/
GROUP 2 ('/
GROUP 3 ('/
MAXLOGFILES 5
MAXLOGMEMBERS 5
MAXLOGHISTORY 1
MAXDATAFILES 100
MAXINSTANCES 1
CHARACTER SET WE8ISO8859P1
NATIONAL CHARACTER SET AL16UTF16
DATAFILE '
EXTENT MANAGEMENT LOCAL
SYSAUX DATAFILE '
DEFAULT TEMPORARY TABLESPACE temp
TEMPFILE '
SIZE 32767M REUSE
UNDO TABLESPACE undotbs1
DATAFILE '
SIZE 11065M REUSE AUTOEXTEND ON MAXSIZE UNLIMITED;
Creem el tablespace de dades:
CREATE TABLESPACE users LOGGING
DATAFILE '/oradata/nova_bd/users01.dbf'
SIZEM REUSE AUTOEXTEND ON NEXT M MAXSIZE UNLIMITED
EXTENT MANAGEMENT LOCAL;
DATAFILE '
SIZE
EXTENT MANAGEMENT LOCAL;
Creem el tablespace d'índexs:
CREATE TABLESPACE indx LOGGING
DATAFILE '/oradata/dspdi/indx01.dbf'
SIZEM REUSE AUTOEXTEND ON NEXT EXTENT MANAGEMENT LOCAL;
DATAFILE '
SIZE
Finalment, correrem uns scripts que ens crearan les vistes de les taules del diccionari de dades:
SQLPLUS /NOLOG
CONNECT SYS AS SYSDBA;
@<$ORACLE_HOME>/rdbms/admin/catalog.sql
@<$ORACLE_HOME>/rdbms/admin/catproc.sql
Més info , tot i que és per a 10G 10.1:
Publicar un comentario