62631654 Oracle Creacion MANUAL de Una Base de Datos 11g en Windows
-
Upload
fanny-jimenez -
Category
Documents
-
view
18 -
download
1
Transcript of 62631654 Oracle Creacion 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:
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
Título: Creación manual de una base de datos 11g en Windows
Fecha: 19/08/2011
Página 3 de 20
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).
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:
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:
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
###########################################
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
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:
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.
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
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
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 ' ||
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:
Título: Creación manual de una base de datos 11g en Windows
Fecha: 19/08/2011
Página 15 de 20
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:
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")
)
)
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:
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)
)
)
Título: Creación manual de una base de datos 11g en Windows
Fecha: 19/08/2011
Página 20 de 20