Instituto Profesional DuocUC Escuela de Ingeniería Creando una Base de Datos Jaime Amigo P. © 2006, Santiago - Chile Instituto Profesional DuocUC Escuela de Ingeniería Objetivos Después de completar esta lección, usted deberá: • Comprender los prerequisitos necesarios para la creación de una base de datos • Crear una base de datos usando el DBCA (Oracle Database Configuration Assistant) • Saber cómo crear una base de datos manualmente 2 Instituto Profesional DuocUC Escuela de Ingeniería Administrar y Organizar una BD ● ● ● Crear una base de datos es el primer paso para administrar un sistema de base de datos La creación requiere de varios archivos del Sistema Operativo y el DBA debera decidir cuáles serán los seteos de la base de datos Una base de datos puede ser creada automáticamente como parte de la Instalación de Oracle Server o se puede crear posteriormente Pre Requisitos para la Instalación Para crear una nueva base de datos, se debe tener lo siguiente: Una cuenta autentificada ya sea en el Sistema Operativo o usando un Archivo de Password. Se requiere privilegio de SYSDBA Suficiente espacio en disco duro para la base de datos planificada (archivos de redo logs, control file, data file). Se debe considerar también el crecimiento futuro Requerimientos de Hardware para Oracle 10g: • 512 MB RAM o superior (1 a 2 GB para un buen rendimiento) • 1 GB de espacio para Swap (o el doble del tamaño de la RAM) • 400 MB de espacio disponible en el direcorio temporal (/tmp or \Temp) • 1.5 GB de espacio en disco duro para el Software Oracle • 1.5 GB de espacio en disco duro para una BD preconfigurada • Procesador Pentium IV o superior Requerimientos de Software para Oracle 10g: • Unix, Linux, Windows, Mac Os, Otras • Ver Documentacion para informacion adicional 3 Instituto Profesional DuocUC Escuela de Ingeniería Planeando Localizaciones de Archivos ● ● ● Por seguridad, mantener al menos dos copias activas de un archivo de control de base de datos y al menos en dos localizaciones diferentes Multiplexar los archivos de redo log y colocar los miembros del grupo en diferentes discos (mínimo 2) Considerar las características de los datos antes de determinar la estructura apropiada de la BD: ● Minimizar la fragmentación (separar diferentes tablespaces) ● Minimizar la contención de disco (separar diferentes discos) ● Separar objetos según uso 4 Instituto Profesional DuocUC Escuela de Ingeniería Creando una Base de Datos Una base de datos Oracle puede ser creada usando: • DBCA (Oracle Database Configuration Assistant – Interfaz gráfica que simplifica la creación de la base de datos. DBCA esta basado en Java y corre en cualquier plataforma que tenga el correspondiente Java Engine • Usando un script SQL con comandos CREATE DATABASE Ambiente del Sistema Operativo En UNIX el conjunto de variables a setear es el siguiente: ORACLE_BASE • Directorio raíz del software Oracle Ejemplo: /u01/app/oracle ORACLE_HOME • Directorio donde esta instalado el software Oracle Ejemplo: /u01/app/oracle/product/9i ORACLE_SID • Especifica el nombre de la instancia que debe ser único por máquina ORA_NLS33 • Requerido cuando se una un conjunto de caracteres diferente a US7ASCII PATH • Especifica el directorio donde el SO busca los ejecutables tales como SQL*PLUS. Los ejecutables de Oracle están en $ORACLE_HOME/bin LD_LIBRARY_PATH • Especifica directorios del SO y archivos de bibliotecas Oracle 5 Instituto Profesional DuocUC Escuela de Ingeniería Usando el DBCA DBCA le permite lo siguiente: Crear una base de datos • Usted puede crear una base de datos o template Configurar opciones • Se pueden agregar opciones de bases de datos que no han sido previamente configuradas (SQL*Plus Help, Advanced Replication, Oracle OLAP Services, Spatial, interMedia, Visual Information Retrival, otras) Borrar una base de datos Manejar templates • Crear un nuevo template usando uno definido • Crear un nuevo template desde una base de datos existente • Borrar un template de base de datos 6 Instituto Profesional DuocUC Escuela de Ingeniería Database Configuration Assistant (DBCA) DBCA ofrece las siguientes opciones: 1. Crear una Base de Datos Esta opcion permite crear una nueva BD o Template 2. Administrar Templates Esta opcion permite crear templates a través de los siguientes métodos: - Seteos predefinidos : Crear nuevos templates de otros definidos previamente. Se puede agregar o cambiar cualquier seteo de parámetros, opciones de almacenamiento, script customizados. - 7 Desde una BD existente (solo la estructura): Este template contiene información de la estructura similar a una BD existente. Incluye opciones de BD, tablespaces, datafiles y parámetros de inicialización de la BD fuente. El usuario define el schema y los datos no pueden ser parte del template creado. - Desde una BD existente (estructura y datos): Este template contendra la estructura y datos de una BD existente. La BD creada usando este template será idéntica a la fuente. El usuario define los schemas y los datos son parte de este template. Este template no permite agregar o eliminar datafiles, tablespace o rollback segments. 8 Instituto Profesional DuocUC Escuela de Ingeniería Creando la Base de Datos Creando la Base de Datos Se debe escoger uno de los templates definidos. La base de datos puede crearse con o sin datafiles. Sin datafiles - Contiene solo la estructura de la base de datos - Se puede especificar y cambiar todos los parámetros Con datafiles - Contiene la estructura y datafile fisicos de la base de datos - Todos los logfiles y control file son automáticamente creados y puedes agregar o eliminar control file, grupos de logs, cambiar el destino y nombres de los datafiles - No se puede agregar o eliminar datafiles, tablespaces o rollback segments - Los parámetros de inicialización no pueden ser modificados 9 Creando una base de datos (continuación) Seleccionando una instalación típica o customizada Crea una BD típica con la mínima interacción del usuario. Con la opción Typical se puede especificar uno de los siguientes ambientes para operar con la BD: OLTP, Multipropósito y Data Warehousing 1. OLTP (Online Transaction Processing): BD en ambientes OLTP tiene cientos de transacciones de muchos usuarios concurrentes día a día. Esas transacciones consisten en lecturas, escrituras o eliminación. La performance de estas BD estan dadas por el THROUGHPUT y la disponibilidad de los datos 2. Data Warehousing: BD en ambientes de Data Warehounsing deben procesar una variedad de consultas (típicamente solo de lectura), desde simples fetch de pocos registros hasta consultas complejas. El performance de estas BD esta dado por el tiempo de respuesta 3. Propósito General: Este tipo de BD soportan tanto OLTP como Data Warehousing. Es la BD por defecto que será instalada 4. Customizada: El usuario define que cosas implementar 10 Instituto Profesional DuocUC Escuela de Ingeniería Identificación de la Base de Datos Global Database Name Indentifica el nombre de la base de datos. Normalmente esta compuesto de nombre.dominio SID (Oracle System Identifier) El SID es el identificador por defecto de la instancia Oracle y debe ser único para la base de datos. Es importante comprender que el SID es el nombre de la instancia que se conectara a la base de datos y no necesariamente el nombre de la base de datos. En ambientes de real Application Cluster, múltiples instancias abren la misma base de datos (datafile, redo log file, control file) y los SID son diferentes para cada instancia. 11 Instituto Profesional DuocUC Escuela de Ingeniería Otros Parámetros • • • • Parámetros de Archive – Usado para recuperar una Base de Datos – Puede ser usado también en BD Standby Data Block Sizing – Setea el tamaño de bloque por defecto de la Base de Datos – Ayuda a determinar el SORT_AREA_SIZE Localizaciones de Archivos – Especifica los path para los trace – Especifica los path para el archivos de parámetros de inicialización Almacenamiento de la Base de Datos – Especifica los párametros de almacenamiento Otros Parámetros Parámetros de Archive Esta opcion deja la base de datos en modo ARCHIVELOG y habilita los redo log files que serán archivados antes de ser reusados BD Sizing Ayuda a definir el tamaño de bloque y tamaño del área de sort para la Base de Datos. El Data Block Size de la base de datos puede ser especificado solo al momento de la creación. SORT_AREA_SIZE es la cantidad máxima de memoria a ser usado en operaciones de sort Localizacion de Archivos -Especifica la localización para los archivos de trace -Especifica la lozaclización para el archivo de parámetros de inicialización -Almacenamiento de la Base de Datos Ayuda a especificar los parámetros de almacenamiento para creación de la base de datos. Se puede ver y cambiar lo siguiente: - Controlfiles - Tablespaces, Datafiles - Undo Segments, Redo Logs Groups 12 Instituto Profesional DuocUC Escuela de Ingeniería Opciones de Administración Esta página permite setear la creación de la base de datos para que pueda ser administrada a futuro por Enterprise Manager, el cual provee una interfaz basada en Web con diversas herramientas de administración para el DBA para administrar bases de datos Individuales como también un ambiente centralizado de administración del ambiente Oracle. Para poder utilizar estas capacidades, es preciso seleccionar en la creación Configure Database with Enterprise Manager. También es posible configurar SMTP para que lleguen notificaciones vía correo electrónico. Estas notificaciones están en una plantilla preestablecida por Oracle, en base a Buenas Prácticas. El DBA puede ajustar estas notificaciones a sus necesidades corporativas. Es posible habilitar backup automáticos de la base de datos que se esta creando, en hora que se define en esta pantalla. 13 Instituto Profesional DuocUC Escuela de Ingeniería Password y Tipo de Almacenamiento Password y Almacenamiento El database schema password: provee password para usuarios administradores, SYS, SYSTEM, SYSMAN y DBSNMP. Es posible indicar una password para cada uno de esos usuarios o bien, indicar una genérica para todos ellos. SYS: El usuario SYS es dueño de todas las tablas internas de Oracle que constituyen el diccionario de datos. Normalmente, se deben ejecutar algunas acciones con el usuario SYS y la cuenta debe estar bloqueada. Nunca modifique objetos cuyo propietario sea SYS. SYSTEM: SYSTEM es un usuario de soporte que contiene tablas y vistas administrativas adicionales a SYS. Esta cuenta debe estar bloqueada para prevenir el uso no autorizado de ella. DBSNMP: Es un usuario para conectarse al Enterprise Manager para facilitar las labores de monitoreo y recolección de estadísticas de la base de datos. SYSMAN: Es equivalente a SYS pero para facilidades con el Enterprise Manager (EM). Este administrador de Enterprise Manager puede crear y modificar otras cuentas de administración de EM como también administrar la instancia así misma. 14 Opciones de Almacenamiento File System: Es el medio mas común de almacenamiento. Este tipo de almacenamiento es administrado por el Sistema Operativo. DBCA utiliza el Optimal Flexible Architecture (OFA) que es un diseño de directorio predefinidos por Oracle. OFA es el método recomendado por Oracle para diseñar una estructura de directorios flexible y con convenciones de nombres estándares para los archivos de BD. Automatic Storage Managemen (ASM): ASM es un nuevo mecanismo de almacenamiento disponibles desde Oracle 10g. En ASM los archivos son creados y mantenidos automáticamente por ORACLE y se obtienen ventajas como Mirroring y Stripping. Para llevar todo este control, ORACLE crea una instancia adicional en la creación, asociada al ASM. Raw Devices: Son discos que no son administrados por el Sistema Operativo. Son particiones de discos que no estan en el Filesystem. Generalmente se utiliza este tipo de configuraciones cuando se esta familiarizado con el uso de particiones Raw Devices. 15 Instituto Profesional DuocUC Escuela de Ingeniería Localización de Archivos Determina la ubicación de los archivos físicos de la base de datos que se esta creando. Independiente de la opción seleccionando, posterior a la creación de la instancia es posible modificar estas parametrizaciones. Use Database File Locations from Templates Si se selecciona esta opción, se asumen las localizaciones por defecto del template propuesto por Oracle. Si selecciona esta opción, posterior a la creación es posible hacer cambios a la localización y nombres de archivos. Use Common Locations for all Database Files Si se selecciona esta opción, se tiene la posibilidad de especificar un nuevo directorio para los archivos de bases de datos. Si selecciona esta opción, posterior a la creación es posible hacer cambios a la localización y nombres de archivos. Use Oracle-Managed Files Si se selecciona ASM en la pantalla de Storage Options, usted debe seleccionar esta opción y seleccionar el path del directorio apropiado en el disco que será usado para almacenar la base de datos. Esta área de disco será administrada totalmente por la segunda instancia Oracle llamada ASM. Si se selecciona esta opción, usted no tiene posibilidad de revisar o hacer modificaciones posteriores en la ubicación de archivos. 16 Instituto Profesional DuocUC Escuela de Ingeniería Variables de Localización de Archivos En varias páginas usted puede hacer click en File Location Variables, lo que abrirá una página que muestra las definiciones de variables. Estas variables son usadas para la definición de los PATH de archivos de la base de datos. No es posible cambiar estos valores mientras se esta en DBCA. Si algún valor necesita ser modificado, se debe salir del DBCA, cambiar la variable del Sistema Operativo y reiniciar DBCA. 17 Instituto Profesional DuocUC Escuela de Ingeniería Parámetros de Contenidos e Inicialización Sample Schemas: Son un conjunto de schemas usado para demostraciones y capacitación Oracle. Custom scripts: Aquí se puede especificar algún script que usted quiera ejecutar en la creación. Initialization parameters: Hay cuatro pestañas (tabs) que puede utilizar para setear parámetros mas comunes y haciendo click en All Initialization Parameters, usted puede ver y setear todos los parámetros de la base de datos (solo recomendado quien tenga experiencia en ellos). •Memory: Para configurar el tamaño de los parámetros de base de datos relativos a la memoria de la instancia Oracle (SGA y PGA). Existen dos formas de administrar los parámetros de memoria: Automáticamente y Manualmente. Automáticamente, significa asignar un porcentaje de la memoria física del servidor para que sea administrada por Oracle (valor por defecto es 40%) tanto para SGA como PGA. Si se elige opción Custom, usted deberá setear cada parámetro asociado a la SGA y PGA, ej. Shared Pool, Buffer Cache, Java Pool, Large Pool. 18 Parametros de contenido e inicializacion (Continuación) •Sizing: Aquí se setea el tamaño del bloque de la base de datos y el número de procesos que pueden conectarse en esta base de datos. El bloque corresponde a la más pequeña unidad de almacenamiento dentro de una base de datos Oracle. El valor por defecto es 8 KB, pero puede ser modificado en esta etapa. Si la base de datos esta creada, el tamaño del bloque no puede ser modificado. El valor máximo y mínimo depende del sistema operativo. 8 KB es suficiente para la mayoria de las aplicaciones orientadas a transacciones. Un bloque de 16 KB es recomendable para aplicaciones de data warehouse. El seteo de procesos indica el número máximo de procesos del sistema operativo simultáneos que pueden conectarse a la base de datos. Al menos se deben incluir 6 procesos para cada proceso background. •Character Sets: Se setea el conjunto de caracteres por defecto que será usado por la mayoría de los tipos de datos en la base de datos. Se debe especificar National Character Set, Default Language y Default Date Format. 19 Instituto Profesional DuocUC Escuela de Ingeniería Almacenamiento de la Base de Datos Esta pantalla permite revisar y cambiar las localizaciones de los objetos que componen la base de datos, nombres, datafiles, archivos de control y archivos de redolog. Esta pantalla despliega un árbol de directorios en el lado izquierdo. Se puede recorrer la estructura y modificar aquello que se estime necesario, sin embargo, si se usan templates no es posible agregar datafiles pero si agregar mas archivos de control y archivos de redo log. Se pueden mantener múltiples copias de archivos de control para efectos de seguridad. DBCA multiplexa automáticamente los archivos de control en 3 archivos. Usted puede agregar más si desea. Los archivos de redo log trabajan en grupos y debe ser multiplexados. DBCA no multiplexa automáticamente los archivos de redo log. Cada archivo en un grupo es una copia exacta de otro miembro en el grupo. Usted puede agregar mas miembros por grupo en este instante o posterior a la creación de la base de datos. 20 Instituto Profesional DuocUC Escuela de Ingeniería Creación de BD y Opciones Usted tiene la alternativa de salvar la configuración que ha definido para la creación de esta base de datos en un template. Asi en una próxima creación, podrá utilizar este template (plantilla) y el proceso será aún más automatizado. Al finalizar la instalación, se presenta una página que da la oportunidad de desbloquear cuentas creadas y cambiar passwords si se desea. Al hacer click en Password Management, permite desbloquear cuentas y cambiar password de ellas. 21 Instituto Profesional DuocUC Escuela de Ingeniería Creando una BD Manualmente • • • • • • • Decidir el nombre de instancia única y el nombre de la base de datos Seleccionar el set de caracteres Setear las variables del sistema operativo Editar y Crear el archivo de parámetros de inicialización Levantar la instancia (nomount) Ejecutar el comando CREATE DATABASE Correr el script para generar el diccionario de datos y continuar con los pasos de la creación Hay 3 formas de crear una base de datos Oracle: • Usando el Database Configuration Assistant (DBCA) • Con sentencias SQL • A través del upgrade de una base de datos existente Los siguientes pasos corresponden a la segunda opción antes señalada. 1. Especificar el SID de la Instancia Podría existir más de una instancia en una máquina. Para distinguir entre ellas Oracle utilice un System Identifier (SID), que es un string. El SID se setea a traves de la variable de ambiente ORACLE_SID. MSDOS# set ORACLE_SID=DUOC Unix-Linux# export ORACLE_SID=DUOC 22 2. Creando un Servicio Oracle Sobre Windows, cada instancia requiere de un servicio Windows. Este servicio debe ser creado primero con oradim: D:\oracle\product\10.1.0\Db_1>oradim -new -sid %ORACLE_SID% -intpwd MYSECRETPASSWORD -startmode MInstance created. Se debe verificar que el servicio Windows fue creado tipeando services.msc en la consola. Un servicio llamado OracleServiceDUOC (DUOC = %ORACLE_SID%) debería encontrarse. Oracle también crea un archivo de password bajo ORACLE_HOME/database o ORACLE_HOME/dbs D:\oracle\product\10.1.0\Db_1>dir database Volume in drive D has no label. Volume Serial Number is C4E9-469A Directory of D:\oracle\product\10.1.0\Db_1\database 03/05/2005 03:54 PM <DIR> . 03/05/2005 03:54 PM <DIR> .. 03/05/2005 11:16 AM <DIR> archive 03/05/2005 11:13 AM 31,744 oradba.exe 03/05/2005 03:54 PM 2,560 PWDDUOC.ORA Como puede verse, el SID esta en el nombre del archive de password. 3. Creando el archive de parámetros de inicialización Cuando una instancia se levanta, require de un archive de parámetros de inicialización (initSID.ora) o spfileSID.ora. SPFILES es un archivo de contenido binario y debe ser creado desde el archivo initSID.ora. Por tanto, el archivo initSID.ora (archivo ordinario de texto) es lo primero que se crea. Este archivo se encuentra bajo ORACLE_HOME/dbs en un ambiente Unix. Usted, podrá agregar mas parámetros a este archivo de texto (initSID.ora). D:\oracle\product\10.1.0\Db_1\database\initDUOC.ora control_files = (d:\oracle\databases\ora10\control01.ora, d:\oracle\databases\ora10\control02.ora, d:\oracle\databases\ora10\control03.ora) undo_management = auto db_name db_block_size = ora10 = 8192 El parámetro de Uno es necesario si se requiere administración automática de undo. Probablemente se requiera definir las variables background_dump_dest, core_dump_dest y user_dump_dest. 23 4. Levantando la instancia Ahora que se ha creado el servicio Oracle y el archive initSID.ora, se puede levantar la instancia. D:\oracle\product\10.1.0\Db_1>sqlplus /nolog SQL*Plus: Release 10.1.0.2.0 - Production on Sat Mar 5 16:05:15 2005 Copyright (c) 1982, 2004, Oracle. All rights reserved. SQL> connect sys/MYSECRETPASSWORD as sysdba 5. Conectarse a una instancia SQL*Plus indica que se esta conecta a una instancia idle. Esto significa que aun no esta operativa. El siguiente paso es levantar la instancia. Se ha iniciado la instancia sin montarla (nomount) por tanto no hay una base de datos montada en este instante. SQL> startup nomount ORACLE instance started. Total System Global Area 113246208 bytes Fixed Size 787708 bytes Variable Size 61864708 bytes Database Buffers 50331648 bytes Redo Buffers 262144 bytes Esto crea la SGA (System Global Area) y los procesos background. 6. Creando la base de datos En este instante se esta en condiciones de finalmente crear la base de datos: SQL>create database ora10 logfile group 1 ('D:\oracle\databases\ora10\redo1.log') size 10M, group 2 ('D:\oracle\databases\ora10\redo2.log') size 10M, group 3 ('D:\oracle\databases\ora10\redo3.log') size 10M character set WE8ISO8859P1 national character set utf8 datafile 'D:\oracle\databases\ora10\system.dbf' size 50M autoextend on next 10M maxsize unlimited extent management local sysaux datafile 'D:\oracle\databases\ora10\sysaux.dbf' size 10M autoextend on next 10M maxsize unlimited undo tablespace undo datafile 'D:\oracle\databases\ora10\undo.dbf‘ size 10M 24 default temporary tablespace temp tempfile 'D:\oracle\databases\ora10\temp.dbf‘ size 10M; Si hay algún error en la creación, Oracle lo notificara en el archive de log’s llamado alertSID.log. Este archive normalmente esta en el directorio especificado en la variable de ambiente background_dump_dest. Si este parámetro no fuese especificado explicitamente, el archive de alertas se encontrará en ORACLE_HOME/rdbms/log en un ambiente UNIX o en %ORACLE_HOME%/RDMBS/trace en ambiente Windows. Si aparece un error ORA-01031: insufficient privileges, significa la mayoria de las veces que el usuario actual no esta en el grupo DBA (para ambientes Unix) o al grupo ORA_DBA (para ambientes Windows). Si el archivo initSID.ora no se encuentra en la localización por defecto, aparece un error ORA-01078: failure in processing system parameters y un error LRM-00109: could not open parameter file 'XXXX’ is issued. El comando create database también ejecuta un archive determinado en parámetros ocultos (_init_sql_file) por defacto llamado sql.bsq. Después de la creación de la base de datos, esta debe ser montada y abierta 7. Completando la creación de la Base de Datos Una vez finalizada la creación de la base de datos, ejecutar los siguientes pasos en el mismo orden indicado, los scripts deben ser ejecutados por el usuario sys: %ORACLE_HOME%/rdbms/admin/catalog.sql %ORACLE_HOME%/rdbms/admin/catproc.sql and SQL> @?/rdbms/admin/catalog.sql SQL> @?/rdbms/admin/catproc.sql catalog.sql crea el diccionario de datos catproc.sql crea todas las esctruras requeridas para llamadas PL/SQL. catalog.sql cllama por ejemplo, a catexp.sql el que es requerido para exp (export), o dbmsstdx.sql el que es requerido para crear triggers. Con el usuario system ejecutar ?/sqlplus/admin/pupbld.sql. pupbld.sql crea una tabla que permite bloquear el acceso a SQL*Plus SQL> connect system/manager SQL> @?/sqlplus/admin/pupbld Por supuesto, tablespaces, usuarios y tablas deben crearse de acuerdo al uso que se le dará a la base de datos. 25 Instituto Profesional DuocUC Escuela de Ingeniería Preparando el archivo de parámetros • Crear un nuevo archivo initSID.ora. Siendo SID db01 # cp init.ora $ORACLE_HOME/dbs/initdb01.ora • Modificar el archivo initdb01.ora para editar los parámetros 26 Instituto Profesional DuocUC Escuela de Ingeniería Creando el SPFILE • Crear el SPFILE desde el initSID.ora CREATE SPFILE FROM PFILE; El SPFILE debe ser creado desde el archivos de parámetros de inicialización. Se debe tener el rol de SYSDBA o SYSOPER para ejecutar la sentencia CREATE SPFILE. 27 Instituto Profesional DuocUC Escuela de Ingeniería Levantando la Instancia • Conectarse como SYSDBA # export ORACLE_SID=db01 # sqlplus / as sysdba • Levantar la instancia en modo NOMOUNT STARTUP NOMOUNT; STARTUP PFILE=<localizacion>/initdb01.ora NOMOUNT; Levantando la instancia Conectarse como SYSDBA usando el método de autentificación del sistema operativo o archivo de password y levantar la instancia usando el comando STARTUP. Si el archivo de parámetros no esta en la localización por defecto, se necesitara especificar la cláusula PFILE en el comando STARTUP. 28 Instituto Profesional DuocUC Escuela de Ingeniería Creando la Base de Datos @crdbb01.sql SQL> create database db01 logfile GROUP 1 (‘/u01/oradata/db01/log_01_db01.rdo’) SIZE 15M, GROUP 2 (‘/u01/oradata/db01/log_02_db01.rdo’) SIZE 15M, GROUP 3 (‘/u01/oradata/db01/log_03_db01.rdo’) SIZE 15M datafile ‘/u01/oradata/db01/system_01_dbd01.dbf’ SIZE 100M undo tablespace UNDO datafile ‘/u01/oradata/db01/undo_01_dbd01.dbf’ SIZE 40M default temporary tablespace temp tempfile ‘/u01/oradata/db01/temp_01_dbd01.dbf’ SIZE 20M extent management local uniform size 128K character set AL32UTF8 national character set AL16UTF16 set time_zone = ‘America/New_York’; Creando una base de datos CREATE DATABASE [database] [CONTROLFILE REUSE] [LOGFILE [GROUP integer] filespec [MAXLOGFILES integer] [MAXLOGMEMBERS integer] [MAXLOGHISTORY integer] [MAXDATAFILES integer] [MAXINSTANCES integer] [MAXINSTANCES integer] [ARCHIVELOG | NOARCHIVELOG] [CHARACTER SET charset] [NATIONAL CHARACTER SET charset] [DATAFILE filespec [autoextent_clause] filespec :== ‘file’ SIZE integer][K][M] [REUSE] 29 Creando una base de datos (Continuacion) autoextent_clause :== [AUTOEXTEND {OFF|ON [NEXT integer [K|M]] MAXSIZE {UNLIMITED | integer [K|M]} }] [DEFAULT TEMPORARY TABLESPACE tablespace filespec [temp_tablespace_extent_clause] temp_tablespace_extent_clause :== EXTENT MANAGEMENT LOCAL UNIFORM [SIZE integer][K|M]] [UNDO TABLESPACE tablespace DATAFILE filespec [autoextent_clause]] [SET TIME_ZONE [time_zone_region]]}] 30 Instituto Profesional DuocUC Escuela de Ingeniería Opciones para Creación •DATABASE •CONTROLFILE REUSE •LOGFILE GROUP •MAXLOGFILES •MAXLOGMEMBERS •MAXLOGHISTORY •DATAFILE •AUTOEXTEND •MAXDATAFILES •MAXINSTANCES •ARCHIVELOG •NOARCHIVELOG •CHARACTER SET •NATIONAL CHARACTER SET •DEFAULT TEMPORARY TABLESPACE •UNDO TABLESPACE •SET TIME_ZONE DATABASE : Es el nombre de la base de datos a ser creada. Si el nombre es omitido, se usa el nombre del parámetro de inicialización DB_NAME CONTROLFILE REUSE: Especifica que un controlfile existente en el archivo de parámetros debe ser reutilizado LOGFILE GROUP: Especifica el nombre de los archivos de log a ser usados y los grupos a los que ellos pertenecen MAXLOGFILES: Especifica el máximo número de grupos redo logs que pueden ser creados en la base de datos MAXLOGMEMBERS: Especifica el máximo número de miembros de archivos de logs para un grupo MAXLOGHISTORY: Especifica el número máximo de archivos de redo logs para recuperación automática de Oracle Parallel Server DATAFILE: Especifica los archivos de datos a ser usados AUTOEXTEND: Habilita o deshabilita la extensión automática para el datafile 31 MAXDATAFILES: Especifica el tamaño inicial del datafile o del controlfile. Al agregare un nuevo archivo, el número podría ser mayor que el MAXDATAFILES pero debe ser menor o igual que DB_FILES. MAXINSTANCES: Es el número máximo de instancias que puede simultáneamente montar o abrir la base de datos ARCHIVELOG: Establece que los archivos de redo log deben ser archivados antes de ser reusados NOARCHIVELOG: Establece que los archivos de redo log puede ser reusados sin archivar su contenido CHARACTER SET: Seteo de caracteres que usara la base de datos para almacenar los datos. Esto NO puede ser modificado ya creada la BD NATIONAL CHARACTER SET: Especifica el seteo de caracteres a ser usados para almacenar los datos en columnas definidas como NCHAR, NCLOB o NVARCHAR2. Sino se especifica, el NATIONAL CHARACTER SET es el mismo que el CHARACTER SET DEFAULT TEMPORARY TABLESPACE: Crea un tablespace temporal por defecto para la base de datos. Oracle asignara este tablespace temporal a cualquier usuario que no se le especifique un tablespace temporal por defecto UNDO TABLESPACE: Crea un tablespace de UNDO y crea el datafile especificado como parte del tablespace de UNDO SET TIME_ZONE: Setea la zona horaria para la base de datos 32 Instituto Profesional DuocUC Escuela de Ingeniería Problemas La creación de la base de datos falla si: • Hay errores de sintáxis en el script SQL • Los archivos a ser creados ya existen • Errores de sistema operativo tales como: • Archivos o directorios sin los permisos debidos • Espacio insuficiente en disco Despues de la creación Una vez que la base de datos ha sido creada, la instancia esta corriendo y la base de datos esta abierta y disponible para uso normal. La base de datos creada contiene: •Datafiles, control files y redo log files •Usuario SYS con la password change_on_install •Usuario SYSTEM con la password manager •Dependiendo del método de creación utilizado DBCA o manual, otros usuarios podrían ser creados •Se recomienda cambiar las passwords de SYS y SYSTEM •Tablas internas y vistas dinamicas como V$LOGFILE, V$CONTROLFILE y V$DATAFILE (pero no las vistas del diccionario de datos, estas deben crearse posteriormente) Es preciso ejecutar ciertos scripts para creación del catalogo y diccionario de la base de datos 33 Instituto Profesional DuocUC Escuela de Ingeniería Fin de la Lección Jaime Amigo P. © 2006, Santiago - Chile