Es un comando 'sencillo'. Te mandan Crear una BBDD y cualquier DBA tiene que saberlo hacer... Pero... ¿Por qué cuando llega el momento no te acuerdas del comando básico? Y o tienes configuradas las X's y lo realizas cómodamente mediante una bonita interfaz Gráfica mediante el Asistente de Configuración de Bases de Datos (DBCA) o te pones a Googlear a ver si encuentras el comando adecuado para crear la BBDD.
Yo debo reconocer, que soy un poco masoca, y aunque lo más sencillo es ejecutarlo mediante la DBCA, prefiero hacerlo en un modo más rudimentario, que es mediante la consola de SQL*Plus. No sé por qué, no me gustan mucho las herramientas gráficas, ni me llevo bien con ellas. Soy de la opinión que todo lo que se puede hacer mediante herramienta gráfica, también se puede hacer mediante Consola, al menos en Oracle, y trato de minimizar el uso de herramientas gráficas a casi anularlo. Para aprender a manejar una herramienta gráfica para la Administración de una Base de Datos, siempre hay tiempo, pero como se deje de picar código por consola... Lo olvidas.
Yo debo reconocer, que soy un poco masoca, y aunque lo más sencillo es ejecutarlo mediante la DBCA, prefiero hacerlo en un modo más rudimentario, que es mediante la consola de SQL*Plus. No sé por qué, no me gustan mucho las herramientas gráficas, ni me llevo bien con ellas. Soy de la opinión que todo lo que se puede hacer mediante herramienta gráfica, también se puede hacer mediante Consola, al menos en Oracle, y trato de minimizar el uso de herramientas gráficas a casi anularlo. Para aprender a manejar una herramienta gráfica para la Administración de una Base de Datos, siempre hay tiempo, pero como se deje de picar código por consola... Lo olvidas.
Así, pues, la sentencia básica (Muy, muy básica), que se puede utilizar para crear una Base de Datos tipo sería algo parecido a esto:
CREATE DATABASE MIBBDD
MAXINSTANCES 8
MAXLOGHISTORY 910
MAXLOGFILES 50
MAXLOGMEMBERS 5
MAXDATAFILES 5000
DATAFILE
'/ruta/datafile/sys.dbs' size 2001M
EXTENT MANAGEMENT LOCAL
SYSAUX DATAFILE '/ruta/datafile/sysaux.dbs' size 1001M
UNDO TABLESPACE UNDOTBS
DATAFILE '/ruta/datafile/undo_1.dbs' size 1001M ,
'/ruta/datafile/undo_2.dbs' size 1001M
DEFAULT TEMPORARY TABLESPACE TEMP
TEMPFILE '/ruta/datafile/tmp.dbs' size 1001M
EXTENT MANAGEMENT LOCAL UNIFORM SIZE 1048576
CHARACTER SET "UTF8"
NATIONAL CHARACTER SET AL16UTF16
LOGFILE
GROUP 1 ('/ruta/logfile/grupo1/rdo1.rdo' ,
'/ruta/logfile/grupo1/rdo2.rdo') size 500M ,
GROUP 2 ('/ruta/logfile/grupo2/rdo1.rdo' ,
'/ruta/logfile/grupo2/rdo2.rdo') size 500M ,
GROUP 3 ('/ruta/logfile/grupo3/rdo1.rdo' ,
'/ruta/logfile/grupo3/rdo2.rdo') size 500M ;
*Nota:- Si se tratara de una recreación, Podemos sacar el comando 'base' mediante un simple ALTER DATABASE BACKUP CONTROLFILE TO TRACE as '/ruta/fichero/control_backup.trc'; Esto nos genera un fichero en el UserDump con el comando exacto que se necesita ejecutar para recrear la BBDD.
Si se tratara de una recreación, podríamos ver que todas las todas las referencias a los datafiles tienen la cláusula REUSE, dado que se entiende que los Datafiles todavía existen en la máquina. Aun sí, se puede utilizar para la Creación de una Base de Datos desde Cero en otro entorno, si es que existierann las rutas de los scripts (Si estuviéramos migrando la Base de datos, por Ejemplo), por que lo que indica la cláusula REUSE, es que si existe el fichero, lo reutilice, y si no existiera, que lo cree.
CATÁLOGOS
Si se tratara de una recreación, podríamos ver que todas las todas las referencias a los datafiles tienen la cláusula REUSE, dado que se entiende que los Datafiles todavía existen en la máquina. Aun sí, se puede utilizar para la Creación de una Base de Datos desde Cero en otro entorno, si es que existierann las rutas de los scripts (Si estuviéramos migrando la Base de datos, por Ejemplo), por que lo que indica la cláusula REUSE, es que si existe el fichero, lo reutilice, y si no existiera, que lo cree.
CATÁLOGOS
Una vez creada la BBDD, toca la ejecución de los Catálogos del Diccionario. Los catálogos ESENCIALES en la creación de una Base de datos Son (en 11g):
· El Catalog
spool $ORACLE_HOME/rdbms/admin/catalog.log @$ORACLE_HOME/rdbms/admin/catalog.sql;
spool off
· El Catproc
spool $ORACLE_HOME/rdbms/admin/catproc.log
@$ORACLE_HOME/rdbms/admin/catproc.sql;
spool off
· Y el pupbld.
*Este último es importante, por que sino, no se permite la conexión de los usuarios a la Base de Datos
connect "SYSTEM"/"&systemPassword"
spool $ORACLE_HOME/sqlplus/admin/pupbld.log
@$ORACLE_HOME/sqlplus/admin/pupbld.sql;
spool off
spool $ORACLE_HOME/rdbms/admin/catproc.log
@$ORACLE_HOME/rdbms/admin/catproc.sql;
spool off
· Y el pupbld.
*Este último es importante, por que sino, no se permite la conexión de los usuarios a la Base de Datos
connect "SYSTEM"/"&systemPassword"
spool $ORACLE_HOME/sqlplus/admin/pupbld.log
@$ORACLE_HOME/sqlplus/admin/pupbld.sql;
spool off
Adicionalmente, también se pueden incluir los siguientes:
· El Catblock (Crea las vistas para los bloqueos de Oracle. )
spool $ORACLE_HOME/rdbms/admin/catblock.log
@$ORACLE_HOME/rdbms/admin/catblock.sql;
spool off
· El Catclust (Crea las vistas específicas para bases de datos en Cluster - RACs ):
spool $ORACLE_HOME/rdbms/admin/catclust.log
@$ORACLE_HOME/rdbms/admin/catclust.sql;
spool off
Las sentencias que podemos utilizar para comprobar los catálogos instalados en la BBDD, su versión y su estado son :
· 9i (y posteriores)
select COMP_ID, COMP_NAME, VERSION, STATUS from dba_registry;
COMP_ID COMP_NAME VERSION STATUS
---------- ------------------------------ ---------- ------
CATALOG Oracle9i Catalog Views 9.2.0.7.0 VALID
CATPROC Oracle9i Packages and Types 9.2.0.7.0 VALID
· 8i (y anteriores):
select * from v$option;
PARAMETER VALUE
----------------------------------- ----------
Partitioning TRUE
Objects TRUE
Real Application Clusters FALSE
Advanced replication TRUE
Bit-mapped indexes TRUE
Connection multiplexing TRUE
Connection pooling TRUE
Database queuing TRUE
Incremental backup and recovery TRUE
Instead-of triggers TRUE
Parallel backup and recovery TRUE
Parallel execution TRUE
Parallel load TRUE
Point-in-time tablespace recovery TRUE
Fine-grained access control TRUE
Proxy authentication/authorization TRUE
Change Data Capture TRUE
Plan Stability TRUE
Online Index Build TRUE
Coalesce Index TRUE
Managed Standby TRUE
Materialized view rewrite TRUE
Materialized view warehouse refresh TRUE
Database resource manager TRUE
Spatial TRUE
Visual Information Retrieval TRUE
Export transportable tablespaces TRUE
Transparent Application Failover TRUE
Fast-Start Fault Recovery TRUE
Sample Scan TRUE
Duplexed backups TRUE
Java TRUE
OLAP Window Functions TRUE
Block Media Recovery TRUE
Fine-grained Auditing TRUE
Application Role TRUE
Enterprise User Security TRUE
Oracle Data Guard TRUE
Oracle Label Security FALSE
OLAP TRUE
Heap segment compression TRUE
Join index TRUE
Trial Recovery TRUE
Oracle Data Mining TRUE
Online Redefinition TRUE
Streams TRUE
File Mapping TRUE
No hay comentarios:
Publicar un comentario