Oracle - Creación MANUAL de una base de datos 11g en Windows
Short Description
Descripción: Documento que describe una creación manual de una base de datos 11g en plataforma Windows....
Description
Título: Creación manual de una base de datos 11g en Windows Fecha: 19/08/2011
Creación manual manual de una base de datos 11g en Windows
Departamento:
Proyecto:
Documento: Creacion-Manual-bbdd-11gwindows.docx
Asunto: Autor: ODMS http://locutoriorama.blogspot.com/ Fecha de creación: 19/08/2011 Lista de Distribución:
Aprobado por: Fecha de aprobación:
Nº pags: 20
Título: Creación manual de una base de datos 11g en Windows Fecha: 19/08/2011
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. 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
Título: Creación manual de una base de datos 11g en Windows Fecha: 19/08/2011
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
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: variables:
Título: Creación manual de una base de datos 11g en Windows Fecha: 19/08/2011
set ORACLE_BASE set ORACLE_BASE =c:\app\vmware =c:\app\vmware set ORACLE_HOME set ORACLE_HOME =C:\app\vmware\product\11.2.0\dbhome_1 =C:\app\vmware\product\11.2.0\dbhome_1 set ORACLE_SID set ORACLE_SID=ASIS =ASIS set PATH set PATH =%ORACLE_HOME%\bin;%PATH% =%ORACLE_HOME%\bin;%PATH% set NLS_LANG set NLS_LANG =SPANISH_SPAIN.WE8MSWIN1252 =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
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
open_cursors=300 ########################## ########################################## ################## # Database Identification ########################## ######################################### ################# ## db_domain=WORKGROUP db_name=ASIS ########################## ########################################### ################# # Identificacion de instancia ########################## ######################################### ################# ## SERVICE_NAMES=asis.workgroup #por defecto 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 t nsnames.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
########################## ######################################### ################# ## 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
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 MAXINSTANCES 8 MAXLOGHISTORY 1 MAXLOGFILES MAXLOGFILES 16 1 6 MAXLOGMEMBERS 3 MAXDATAFILES 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 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 CHARACTER SET WE8MSWIN1252 NATIONAL NATIONAL CHARACTER C HARACTER 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
Podemos consultar algunas vistas para comprobar que los datafiles se han creado correctamente. (v$datafile, (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\ %ORACLE_HOME%\RDBMS\ADMIN\dfmap.bsq dfmap.bsq processing %ORACLE_HOME%\RDBMS\ADMIN\ %ORACLE_HOME%\RDBMS\ADMIN\denv.bsq denv.bsq processing %ORACLE_HOME%\RDBMS\ADMIN\ %ORACLE_HOME%\RDBMS\ADMIN\drac.bsq drac.bsq processing %ORACLE_HOME%\RDBMS\ADMIN\ %ORACLE_HOME%\RDBMS\ADMIN\dsec.bsq dsec.bsq processing %ORACLE_HOME%\RDBMS\ADMIN\ %ORACLE_HOME%\RDBMS\ADMIN\doptim.bsq doptim.bsq processing %ORACLE_HOME%\RDBMS\ADMIN\ %ORACLE_HOME%\RDBMS\ADMIN\dobj.bsq dobj.bsq processing %ORACLE_HOME%\RDBMS\ADMIN\ %ORACLE_HOME%\RDBMS\ADMIN\djava.bsq djava.bsq processing %ORACLE_HOME%\RDBMS\ADMIN\ %ORACLE_HOME%\RDBMS\ADMIN\dpart.bsq dpart.bsq processing %ORACLE_HOME%\RDBMS\ADMIN\ %ORACLE_HOME%\RDBMS\ADMIN\drep.bsq drep.bsq processing %ORACLE_HOME%\RDBMS\ADMIN\ %ORACLE_HOME%\RDBMS\ADMIN\daw.bsq daw.bsq processing %ORACLE_HOME%\RDBMS\ADMIN\ %ORACLE_HOME%\RDBMS\ADMIN\dsummgt.bsq dsummgt.bsq processing %ORACLE_HOME%\RDBMS\ADMIN\ %ORACLE_HOME%\RDBMS\ADMIN\dtools.bsq dtools.bsq processing %ORACLE_HOME%\RDBMS\ADMIN\ %ORACLE_HOME%\RDBMS\ADMIN\dexttab.bsq dexttab.bsq processing %ORACLE_HOME%\RDBMS\AD %ORACLE_HOME%\RDBMS\ADMIN\ddm.bsq MIN\ddm.bsq processing %ORACLE_HOME%\RDBMS\ADMIN\ %ORACLE_HOME%\RDBMS\ADMIN\dlmnr.bsq dlmnr.bsq processing %ORACLE_HOME%\RDBMS\ADMIN\ %ORACLE_HOME%\RDBMS\ADMIN\ddst.bsq ddst.bsq
Título: Creación manual de una base de datos 11g en Windows Fecha: 19/08/2011
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
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 ACCOUNT_STATUS IN ('OPEN', 'LOCKED', 'EXPIRED') AND USERNAME NOT IN ( 'SYS','SYSTEM') '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
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
Título: Creación manual de una base de datos 11g en Windows Fecha: 19/08/2011
Comprobamos que nos ha creado el servicio:
Título: Creación manual de una base de datos 11g en Windows Fecha: 19/08/2011
# 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\db C:\app\vmware\product\11.2.0\dbhome_1) home_1) (PROGRAM = extproc) (ENVS = "EXTPROC_DLLS=ONLY:C:\app\vmware\prod "EXTPROC_DLLS=ONLY:C:\app\vmware\product\11.2.0\dbhome_1\bin\or uct\11.2.0\dbhome_1\bin\oraclr11.dll") aclr11.dll") ) )
Título: Creación manual de una base de datos 11g en Windows Fecha: 19/08/2011
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
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
View more...
Comments