Ahora me ha tocado aprender database vault para un proyecto en el que iba a ser consultora, y por vueltas del destino me tocó ser el dba que instaló el producto en varias bases de datos del mismo proyecto.
Les paso la guía que generé después de algo de investigación, espero que les guste y les sirva.
Agradezco a mi compañero Nacho Vega por ayudarme a mejorar y completar mi documentación.
saludos!
1. Ingresar al servidor y fijar ambiente a la base de datos a instalar.
2. Realizar respaldo de la base de datos en frío.
3. Realizar respaldo del Home de Oracle de la base de datos a instalar.
4. Configurar el oraInventory:
Dependiendo el sistema operativo :
AIX /etc
Solaris /var/opt/oracle
a. Renombrar el archivo oraInst.loc, y renombrar el archivo oraInst de la base de datos a actualizar a oraInst.loc, o en su defecto, modificar la ruta de oraInst.loc para que apunte al inventory del Home de Oracle a instalar.
b. Esto es para que la instalación quede registrada en el inventory propio de la base de datos.
5. crear password file para la base de datos
6. Realizar los pasos de instalación de emca (opcional, se usará la consola de DBVault 11g):
a. Ejecutar el script de creación del usuario dbsnmp:
?/rdbms/admin/catsnmp.sql
b. Ejecutar emca con la siguiente sintaxis:
emca –config dbcontrol db –repos create
preguntara varios datos
Database SID:
Listener port number:
Password for SYS user:
Password for DBSNMP user:
Password for SYSMAN user:
Email address for notifications (optional):
Outgoing Mail (SMTP) server for notifications (optional):
c. En caso de ser necesario recrear o eliminar el repositorio, seguir los pasos indicados en la nota de metalink 278100.1
7. Respaldar los siguientes archivos:
Dependiendo el sistema operativo
AIX /etc
Solaris /var/opt/Oracle
a. oratab
Respaldar los archivos de red
b. /var/opt/oracle/listener.ora
c. /var/opt/oracle/tnsnames.ora
8. Revisar que el archivo de script bndlchk, ubicado en $ORACLE_HOME/bin, tenga configurado correctamente el ORACLE_HOME, para evitar errores al momento de instalar DBVault.
9. Crear un servicio de red (listener) con nombre LISTENER y en el puerto 1521.
10. Asegurarse que la variable TNS_ADMIN y ORACLE_BASE no tenga valor asignado.
unset TNS_ADMIN
unset ORACLE_BASE
11. bajar los servicios excepto el listener del puerto 1521
12. Ejecutar runinstaller como se muestra a continuación:
13. runInstaller ORACLE_HOSTNAME= xxx (donde xxx es el nombre del equipo)
14. El log de instalación puede ser monitoreado en $ORACLE_HOME/oraInventory/logs
15. Introducir los datos correspondientes al ambiente:
a. ORACLE_HOME donde será instalado.
b. Base de datos donde será instalado.
c. Usuario y contraseña del dueño de DBVault (dvowner).
d. Usuario y contraseña del administrador de cuentas (dacctmgr).
e. Seleccionar “User Verified” al error que indica que la variable ORACLE_BASE no está correctamente configurada.
Nota que para este post, estoy tomando como usuario "dvowner" y "dvacctmgr" como dueños de Database Vault y Administrador de cuentas respectivamente.
16. dar el password de sys y verificar que el ORACLE_HOME y la base de datos que selecciona el Universal Installer sean correctos
17. mandara un mensaje de que dará de baja los servicios
18. Ya verificado los procesos de instalación se debe de dar ok
19. Se verifica que debe de estar en la home correcto
20. Por un defecto en el software, dvca falla durante el proceso de instalación, por lo mismo es necesario ejecutarlo manualmente.
21. Verificar que la base de datos este levantada con spfile
show parameter spfile
22. Ejecutar dvca con los siguientes parámetros:
dvca -action option -oh $ORACLE_HOME -s_path /tmp -logfile $ORACLE_HOME/cfgtoollogs/dvca_install.log -owner_account dvowner -owner_passwd pass1234# -acctmgr_account dvacctmgr -acctmgr_passwd pass1234# -jdbc_str jdbc:oracle:oci:@$ORACLE_SID -sys_passwd xxx -languages {en} –nodecrypt
Donde:
Pass1234# es la contraseña que hayamos asignado a los usuarios dvowner y dvacctmgr
Xxx es la contraseña de nuestro usuario sys
$ORACLE_SID es el nombre de nuestra base de datos, la cual debe de estar previamente configurada en la variable de ambiente ORACLE_SID
$ORACLE_HOME también debe de estar previamente configurado al path del software de oracle
23. Realizar verificación de la instalación de Database Vault:
a. Primero, al ejecutar SQL*Plus, vemos que marca como opción Database Vault y antes no lo marcaba:
SQL*Plus: Release 10.2.0.5.0 - Production on Wed Aug 18 13:20:16 2010
Copyright (c) 1982, 2010, Oracle. All Rights Reserved.
Connected to:
Oracle Database 10g Enterprise Edition Release 10.2.0.5.0 - 64bit Production
With the Partitioning, Oracle Label Security, OLAP, Data Mining,
Oracle Database Vault and Real Application Testing options
b. Verificar que todos los objetos de DVSYS y DVF estén válidos
select owner,status,count(1)
from dba_objects
group by owner,status
order by 1;
c. Verificar que es posible ejecutar lo siguiente:
Select dvf.f$session_user from dual;
F$SESSION_USER
--------------------------------------------------
SYS
d. Verificar que el usuario sys no puede ver la siguiente table:
Select * from dvsys.audit_trail$;
Select * from dvsys.audit_trail$
*
ERROR at line 1:
ORA-01031: insufficient privileges
e. Eliminar los datos de OLAP que pueden ocasionar problemas al momento de realizar exports con Data Pump:
Delete from SYS.EXPPKGACT$ where package=’DBMS_AW_EXP’;
e. Bajar la Base de datos.
24. Cambiar contraseñas de DVSYS y DVF, y desbloquear cuentas. Para esto, es necesario primero deshabilitar DBVault y realizar los cambios.
25. Para deshabilitar Database Vault:
a. cd $ORACLE_HOME/rdbms/lib
b. make –f ins_rdbms.mk dv_off
c. cd $ORACLE_HOME/bin
d. relink all
26. Aplicar los parches de database vault:
a. 6401347 solo aplica para versión 10.2.0.4
27. Levantar la base de datos
28. Ejecutar una compilación de objetos inválidos:
@?/rdbms/admin/utlrp.sql
29. Revisar nuevamente que todos los objetos de DVSYS y DVF estén válidos.
select owner,status,count(1)
from dba_objects
group by owner,status
order by 1;
30. Cambiar passwords y desbloqueo de los usuarios dvsys y dvf (Esto aunque no está en el manual de oracle, yo lo recomiendo para no tener que deshabilitar database vault en el momento en que se quieran desbloquear las cuentas, hay que considerar que para deshabilitar database vault hay que bajar la base de datos)
alter user dvsys identified by cambiame;
alter user dvf identified by cambiame;
alter user dvsys account unlock;
alter user dvf account unlock;
31. Bajar la base de datos y habilitar nuevamente Database Vault.
32. Para habilitar Database Vault:
a. cd $ORACLE_HOME/rdbms/lib
b. make –f ins_rdbms.mk dv_on
c. cd $ORACLE_HOME/bin
d. relink all
miércoles, 18 de agosto de 2010
Suscribirse a:
Entradas (Atom)