Top Banner
Título: Creación manual de una base de datos 11g en Windows Fecha: 19/08/2011 Página 1 de 20 Creación manual de una base de datos 11g en Windows Departamento: Proyecto: Documento: Creacion-Manual-bbdd-11g- windows.docx Nº pags: 20 Asunto: Autor: ODMS http://locutoriorama.blogspot.com/ Aprobado por: Fecha de creación: 19/08/2011 Fecha de aprobación: Lista de Distribución:
20

Oracle - Creación MANUAL de una base de datos 11g en Windows

Mar 06, 2015

Download

Documents

locuto

Documento que describe una creación manual de una base de datos 11g en plataforma Windows.
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Oracle - Creación MANUAL de una base de datos 11g en Windows

Título: Creación manual de una base de datos 11g en Windows

Fecha: 19/08/2011

Página 1 de 20

Creación manual de una base

de datos 11g en Windows

Departamento:

Proyecto:

Documento: Creacion-Manual-bbdd-11g-

windows.docx

Nº pags: 20

Asunto:

Autor: ODMS http://locutoriorama.blogspot.com/

Aprobado por:

Fecha de creación: 19/08/2011 Fecha de aprobación:

Lista de Distribución:

Page 2: Oracle - Creación MANUAL de una base de datos 11g en Windows

Título: Creación manual de una base de datos 11g en Windows

Fecha: 19/08/2011

Página 2 de 20

Introducción .......................................................................................................................................................... 4

PASOS ................................................................................................................................................................. 5

Usuario ............................................................................................................................................................. 5

Entorno de usuario .......................................................................................................................................... 5

Estructura de carpetas .................................................................................................................................... 6

Servicio oracle ................................................................................................................................................. 6

Fichero de password. ...................................................................................................................................... 7

Fichero de inicialización .................................................................................................................................. 7

Instancia........................................................................................................................................................... 9

Comando CREATE DATABASE .................................................................................................................. 10

Tablespaces .................................................................................................................................................. 12

Diccionario de datos...................................................................................................................................... 12

Recompilar..................................................................................................................................................... 13

SPFILE ........................................................................................................................................................... 13

Bloqueo de cuentas ...................................................................................................................................... 13

Cambiar contraseñas. ................................................................................................................................... 14

Editar servicio ................................................................................................................................................ 14

Configuración de Oracle Net ....................................................................................................................... 14

Page 3: Oracle - Creación MANUAL de una base de datos 11g en Windows

Título: Creación manual de una base de datos 11g en Windows

Fecha: 19/08/2011

Página 3 de 20

Page 4: Oracle - Creación MANUAL de una base de datos 11g en Windows

Título: Creación manual de una base de datos 11g en Windows

Fecha: 19/08/2011

Página 4 de 20

Introducción

En este documento se describe una prueba de creación manual (sin asistente) de una base de datos

Oracle 11g en Windows (no clúster).

Page 5: Oracle - Creación MANUAL de una base de datos 11g en Windows

Título: Creación manual de una base de datos 11g en Windows

Fecha: 19/08/2011

Página 5 de 20

PASOS

Usuario

Conectamos con el usuario propietario del software, u otro usuario que creemos específicamente para

crear y administrar la base de datos. En este ejemplo, voy a crear uno nuevo, local (no de dominio):

Lo incluimos en el grupo Administradores y ORA_DBA (este grupo lo crea la instalación del software).

Conectamos con el usuario recién creado.

A partir de aquí vamos a trabajar directamente en una consola DOS en modo administrador.

Entorno de usuario

Lo primero es configurar el entorno del usuario. Al menos las siguientes variables:

Page 6: Oracle - Creación MANUAL de una base de datos 11g en Windows

Título: Creación manual de una base de datos 11g en Windows

Fecha: 19/08/2011

Página 6 de 20

set ORACLE_BASE=c:\app\vmware

set ORACLE_HOME=C:\app\vmware\product\11.2.0\dbhome_1

set ORACLE_SID=ASIS

set PATH=%ORACLE_HOME%\bin;%PATH%

set NLS_LANG=SPANISH_SPAIN.WE8MSWIN1252

Estructura de carpetas

A continuación creamos la estructura de carpetas, por ejemplo:

mkdir C:\bbdd\admin\ASIS\pfile

mkdir C:\bbdd\admin\ASIS\scripts

mkdir C:\bbdd\admin\ASIS\adump

mkdir C:\bbdd\datos\ASIS\

mkdir C:\bbdd\indices\ASIS

mkdir C:\bbdd\rbk\ASIS

mkdir C:\bbdd\logA\ASIS

mkdir C:\bbdd\logB\ASIS

mkdir C:\bbdd\tmp\ASIS

mkdir C:\bbdd\control\ASIS

mkdir C:\bbdd\archives\ASIS

Servicio oracle

Creamos el servicio oracle, de momento en modo manual:

C:\app\vmware\product\11.2.0\dbhome_1\bin\oradim.exe -new -sid ASIS -

startmode manual

Si se crea correctamente:

Si no estuvieramos trabajando en una consola DOS en modo administrador, nos dará este error:

Page 7: Oracle - Creación MANUAL de una base de datos 11g en Windows

Título: Creación manual de una base de datos 11g en Windows

Fecha: 19/08/2011

Página 7 de 20

Comprobamos que se han creado dos servicios, gráficamente:

O desde la consola:

Fichero de password.

Creamos el fichero de password. Pedirá la password de SYS (a nivel de fichero de password):

C:\app\vmware\product\11.2.0\dbhome_1\bin\orapwd.exe

file=C:\app\vmware\product\11.2.0\dbhome_1\database\PWDASIS.ora force=y

Fichero de inicialización

Creamos un fichero de inicialización:

##################################################################

# initASIS.ora

##################################################################

###########################################

# Cache and I/O

###########################################

db_block_size=8192

###########################################

# File Configuration

###########################################

control_files=("C:\bbdd\control\ASIS\control01.ctl", "C:\bbdd\control\ASIS\control02.ctl")

###########################################

# Cursors and Library Cache

###########################################

Page 8: Oracle - Creación MANUAL de una base de datos 11g en Windows

Título: Creación manual de una base de datos 11g en Windows

Fecha: 19/08/2011

Página 8 de 20

open_cursors=300

###########################################

# Database Identification

###########################################

db_domain=WORKGROUP

db_name=ASIS

###########################################

# Identificacion de instancia

###########################################

SERVICE_NAMES=asis.workgroup #por defecto el global_name

INSTANCE_NAME=asis #por defecto el SID

###########################################

# Service Registration

###########################################

LOCAL_LISTENER=LSN_ASIS

# Para hacer que la instancia se registre con un listener en particular (si no lo haría con el listener por

# defecto en el 1521)

# Hay que crear una entrada en el tnsnames.ora del servidor llamada LSN_ASIS:

#LSN_ASIS=

# (ADDRESS=(PROTOCOL=tcp)(HOST=VMW2008)(PORT=1521))

###########################################

# NLS

###########################################

nls_language="SPANISH"

nls_territory="SPAIN"

###########################################

# Processes and Sessions

###########################################

processes=150

###########################################

# System Managed Undo and Rollback Segments

Page 9: Oracle - Creación MANUAL de una base de datos 11g en Windows

Título: Creación manual de una base de datos 11g en Windows

Fecha: 19/08/2011

Página 9 de 20

###########################################

undo_tablespace=UNDOTBS1

###########################################

# Security and Auditing

###########################################

audit_file_dest=C:\bbdd\admin\ASIS\adump

audit_trail=none #sin auditoria

remote_login_passwordfile=EXCLUSIVE

###########################################

# Miscellaneous

###########################################

compatible=11.2.0.0.0

diagnostic_dest=C:\bbdd\admin ¡OJO! IMPORTANTE, por defecto será el ORACLE_BASE. Dentro de

la carpeta indicada, se creará una estructura de carpetas que ya incluye el SID de cada base de datos.

memory_target=427819008

NOTAS:

Por defecto DIAGNOSTIC_DEST tiene el siguiente formato:

$ORACLE_BASE/diag/rdbms/$INSTANCE_NAME/$ORACLE_SID

Instancia

Levantamos la instancia con el init.ora que hemos creado:

Page 10: Oracle - Creación MANUAL de una base de datos 11g en Windows

Título: Creación manual de una base de datos 11g en Windows

Fecha: 19/08/2011

Página 10 de 20

Comando CREATE DATABASE

Nota sobre el charset recomendado:

https://support.oracle.com/CSP/main/article?cmd=show&type=NOT&id=306411.1

Ejecutamos el comando CREATE DATABASE:

CREATE DATABASE "ASIS"

MAXINSTANCES 8

MAXLOGHISTORY 1

MAXLOGFILES 16

MAXLOGMEMBERS 3

MAXDATAFILES 100

DATAFILE 'C:\bbdd\datos\ASIS\system01.dbf' SIZE 700M REUSE

EXTENT MANAGEMENT LOCAL

SYSAUX DATAFILE 'C:\bbdd\datos\ASIS\sysaux01.dbf' SIZE 600M REUSE

SMALLFILE DEFAULT TEMPORARY TABLESPACE TEMP TEMPFILE

'C:\bbdd\tmp\ASIS\temp01.dbf' SIZE 20M REUSE

SMALLFILE UNDO TABLESPACE "UNDOTBS1" DATAFILE

'C:\bbdd\datos\ASIS\undotbs01.dbf' SIZE 200M REUSE

CHARACTER SET WE8MSWIN1252

NATIONAL CHARACTER SET AL16UTF16

LOGFILE GROUP 1 ('C:\bbdd\logA\ASIS\redo01_a.log',

'C:\bbdd\logB\ASIS\redo01_b.ora') SIZE 51200K,

GROUP 2 ('C:\bbdd\logA\ASIS\redo02_a.log',

'C:\bbdd\logB\ASIS\redo02_b.log') SIZE 51200K,

GROUP 3 ('C:\bbdd\logA\ASIS\redo03_a.log',

'C:\bbdd\logB\ASIS\redo03_b.log') SIZE 51200K;

Podríamos haber asignado ya la contraseña de SYS y SYSTEM, en la misma sentencia de CREATE

DATABASE, pero lo dejo para después.

Page 11: Oracle - Creación MANUAL de una base de datos 11g en Windows

Título: Creación manual de una base de datos 11g en Windows

Fecha: 19/08/2011

Página 11 de 20

Podemos consultar algunas vistas para comprobar que los datafiles se han creado correctamente.

(v$datafile, v$controlfile, v$logfile, etc).

También debemos revisar el alert.ora.

Como curiosidad, si miramos el alert.ora, vemos que durante la creación se ejecutan los siguientes

scripts:

processing %ORACLE_HOME%\RDBMS\ADMIN\dfmap.bsq

processing %ORACLE_HOME%\RDBMS\ADMIN\denv.bsq

processing %ORACLE_HOME%\RDBMS\ADMIN\drac.bsq

processing %ORACLE_HOME%\RDBMS\ADMIN\dsec.bsq

processing %ORACLE_HOME%\RDBMS\ADMIN\doptim.bsq

processing %ORACLE_HOME%\RDBMS\ADMIN\dobj.bsq

processing %ORACLE_HOME%\RDBMS\ADMIN\djava.bsq

processing %ORACLE_HOME%\RDBMS\ADMIN\dpart.bsq

processing %ORACLE_HOME%\RDBMS\ADMIN\drep.bsq

processing %ORACLE_HOME%\RDBMS\ADMIN\daw.bsq

processing %ORACLE_HOME%\RDBMS\ADMIN\dsummgt.bsq

processing %ORACLE_HOME%\RDBMS\ADMIN\dtools.bsq

processing %ORACLE_HOME%\RDBMS\ADMIN\dexttab.bsq

processing %ORACLE_HOME%\RDBMS\ADMIN\ddm.bsq

processing %ORACLE_HOME%\RDBMS\ADMIN\dlmnr.bsq

processing %ORACLE_HOME%\RDBMS\ADMIN\ddst.bsq

Page 12: Oracle - Creación MANUAL de una base de datos 11g en Windows

Título: Creación manual de una base de datos 11g en Windows

Fecha: 19/08/2011

Página 12 de 20

En este punto, los usuarios SYS y SYSTEM tendrán las contraseñas por defecto. Podemos cambiarlas.

Tablespaces

Creamos tablespaces adicionales, por ejemplo:

CREATE SMALLFILE TABLESPACE "USERS" LOGGING

DATAFILE 'C:\bbdd\datos\ASIS\users01.dbf' SIZE 5M REUSE

EXTENT MANAGEMENT LOCAL

SEGMENT SPACE MANAGEMENT AUTO;

ALTER DATABASE DEFAULT TABLESPACE "USERS";

Diccionario de datos

Creamos el diccionario de datos:

SET VERIFY OFF

connect "SYS"/"change_on_install" as SYSDBA

set echo on

spool C:\temp\scripts\creacion manual\CreaCatalog.log append

@C:\app\vmware\product\11.2.0\dbhome_1\rdbms\admin\catalog.sql;

@C:\app\vmware\product\11.2.0\dbhome_1\rdbms\admin\catblock.sql;

@C:\app\vmware\product\11.2.0\dbhome_1\rdbms\admin\catproc.sql;

@C:\app\vmware\product\11.2.0\dbhome_1\rdbms\admin\catoctk.sql;

@C:\app\vmware\product\11.2.0\dbhome_1\rdbms\admin\owminst.plb;

connect "SYSTEM"/"manager"

@C:\app\vmware\product\11.2.0\dbhome_1\sqlplus\admin\pupbld.sql;

connect "SYSTEM"/"manager"

set echo on

spool C:\temp\scripts\creacion manual\sqlPlusHelp.log append

@C:\app\vmware\product\11.2.0\dbhome_1\sqlplus\admin\help\hlpbld.sql

helpus.sql;

spool off

Page 13: Oracle - Creación MANUAL de una base de datos 11g en Windows

Título: Creación manual de una base de datos 11g en Windows

Fecha: 19/08/2011

Página 13 de 20

spool off

Si queremos configurar XDB:

SET VERIFY OFF

connect "SYS"/"change_on_install" as SYSDBA

set echo on

spool C:\app\vmware\admin\ASIS\scripts\xdb_protocol.log append

@C:\app\vmware\product\11.2.0\dbhome_1\rdbms\admin\catqm.sql

change_on_install SYSAUX TEMP;

spool off

Recompilar

Comprobar los objetos invalidos y recompilar.

@?\rdbms\admin\utlrp

SPFILE

Creamos el spfile a partir del pfile creado antes:

create

spfile='C:\app\vmware\product\11.2.0\dbhome_1\database\spfileASIS.ora'

FROM pfile='C:\bbdd\admin\ASIS\pfile\initASIS.ora';

Reiniciar.

Bloqueo de cuentas

BEGIN

FOR item IN ( SELECT USERNAME FROM DBA_USERS WHERE

ACCOUNT_STATUS IN ('OPEN', 'LOCKED', 'EXPIRED') AND USERNAME

NOT IN (

'SYS','SYSTEM') )

LOOP

dbms_output.put_line('Locking and Expiring: ' || item.USERNAME);

execute immediate 'alter user ' ||

Page 14: Oracle - Creación MANUAL de una base de datos 11g en Windows

Título: Creación manual de una base de datos 11g en Windows

Fecha: 19/08/2011

Página 14 de 20

sys.dbms_assert.enquote_name(

sys.dbms_assert.schema_name(

item.USERNAME),false) || ' password expire account lock' ;

END LOOP;

END;

/

Cambiar contraseñas.

Por seguridad.

Editar servicio

Editar el servicio Oracle y ponerlo en automático.

Configuración de Oracle Net

Podemos utilizar el asistente de configuración de red de Oracle:

Page 15: Oracle - Creación MANUAL de una base de datos 11g en Windows

Título: Creación manual de una base de datos 11g en Windows

Fecha: 19/08/2011

Página 15 de 20

Page 16: Oracle - Creación MANUAL de una base de datos 11g en Windows

Título: Creación manual de una base de datos 11g en Windows

Fecha: 19/08/2011

Página 16 de 20

Comprobamos que nos ha creado el servicio:

Page 17: Oracle - Creación MANUAL de una base de datos 11g en Windows

Título: Creación manual de una base de datos 11g en Windows

Fecha: 19/08/2011

Página 17 de 20

# listener.ora Network Configuration File:

C:\app\vmware\product\11.2.0\dbhome_1\network\admin\listener.ora

# Generated by Oracle configuration tools.

LSN_ASIS =

(DESCRIPTION_LIST =

(DESCRIPTION =

(ADDRESS = (PROTOCOL = TCP)(HOST = VMW2008.localdomain)(PORT = 1521))

(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))

)

)

ADR_BASE_LSN_ASIS = C:\app\vmware

SID_LIST_LSN_ASIS =

(SID_LIST =

(SID_DESC =

(SID_NAME = CLRExtProc)

(ORACLE_HOME = C:\app\vmware\product\11.2.0\dbhome_1)

(PROGRAM = extproc)

(ENVS = "EXTPROC_DLLS=ONLY:C:\app\vmware\product\11.2.0\dbhome_1\bin\oraclr11.dll")

)

)

Page 18: Oracle - Creación MANUAL de una base de datos 11g en Windows

Título: Creación manual de una base de datos 11g en Windows

Fecha: 19/08/2011

Página 18 de 20

El tnsnames.ora también se puede configurar con el asistente:

Page 19: Oracle - Creación MANUAL de una base de datos 11g en Windows

Título: Creación manual de una base de datos 11g en Windows

Fecha: 19/08/2011

Página 19 de 20

Si todo está correcto, nos generará la entrada correspondiente en el fichero tnsnames.ora:

ASIS =

(DESCRIPTION =

(ADDRESS_LIST =

(ADDRESS = (PROTOCOL = TCP)(HOST = VMW2008)(PORT = 1521))

)

(CONNECT_DATA =

(SERVICE_NAME = ASIS)

)

)

Page 20: Oracle - Creación MANUAL de una base de datos 11g en Windows

Título: Creación manual de una base de datos 11g en Windows

Fecha: 19/08/2011

Página 20 de 20