Tradueix

jueves, 25 de abril de 2013

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

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;

Creem el tablespace de dades:

CREATE TABLESPACE users LOGGING
     DATAFILE '/oradata/nova_bd/users01.dbf'
     SIZE M REUSE AUTOEXTEND ON NEXT  M MAXSIZE UNLIMITED
     EXTENT MANAGEMENT LOCAL;

Creem el tablespace d'índexs:

CREATE TABLESPACE indx LOGGING
     DATAFILE '/oradata/dspdi/indx01.dbf'
     SIZE M REUSE AUTOEXTEND ON NEXT       EXTENT MANAGEMENT LOCAL;

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:



Seja o primeiro a comentar

Publicar un comentario

Oracle Wars © 2008. Template by Dicas Blogger.

TOPO