miércoles, 22 de abril de 2009
Modos de Apagado de una Base de Datos
1.- Cierre de la base de datos
2.- Unmount the database. desmontar la base de datos
3.- Cerrar la instancia
Un administrador de bases de datos puede realizar estos pasos usando Enterprise Manager. Oracle automaticamente realiza los tres pasos cuando un caso esta apagado.
Al cerrar yba base de datos,escriba todos los datos y la recuperacion de datos en el SGA para el datafiles y rehacer os archivos de regustro, respectivamente. A continuacion, cierra todas las de Oracle en linea datafiles y rehacer los archivos de registro. (Cualquier datafiles desconectado de cualquier linea de tablas se han cerrado ya. si porteriormente reabrir la base de datos,tablas que fue todo fuera de linea y sus datafiles permanecer fuera de linea y cerrado, respectivamente). En este punto, la base de datos esta cerrado e inaccesible para las operaciones normales. Los archivos de control permanecera abierto despues de una base de datos esta cerrada, pero aun montada.
Cierre de la Base de Datos por la terminal Instancia
en raras situaciones de emergencia, usted puede rescindir el ejemplo de una base de datos para abrir y cerrar el cierre completo de la base de datos instantanea. Este proceso es rapido, por que la operación de escribir todos los datos en los buffers de la SGA, a la datafiles y rehacer los archivos de registro se omite. La posterior reapertura de la base de datos exige la recuperacion, que Oracle realiza automaticamente.
Desmontar una Base de Datos
Despues que la base de datos esta cerrada, desmonta la base de datos Oracle para descincular de la instancia. En este punto, sigue siendo la instancia en la memoria de su ordenador.
Despues de una base de datos esta sin montar, Oracle cierra los archivos de control de la base de datos
Apagar una Instancia
Este es el paso final del cierre de la base de datos. Cuando usted cierra un ejemplo, el SGA se extrae de la memoria y los procesos en segundo plano se terminan
Tablespace Del Tipo Undo
El tablespace undo se usa para los segmentos de undo, son parecidos a los segmentos de "rollback", en cuanto a su utilización, pero no en diseño y es recomendado por
Oracle su no utilización.
transacciones.
Se utiliza para:
• Rollback de las transacciones.
• Lectura consistente.
• Operaciones de recuperación de la base de datos.
• Funcionalidad de Flashback.
- Mediante create database.
- Create undo tablespace undotbs02 datafile 'c:\oraclexe\oradata\ex\undo02.dbf' size 25M reuse
- drop tablespace undotbs02;
viernes, 3 de abril de 2009
tnsnames
Ejemplo de configuración del tnsnames.ora
CNNORASITE =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 193.168.4.220)(PORT = 2484))
)
(CONNECT_DATA =
(SERVICE_NAME = orasite)
)
)
Parámetros del archivo:
HOST: Dirección ip del servidor con el cual queremos conectar
PORT: Puerto donde escucha la base de datos
SERVICE_NAME: Nombre del servicio de base de datos al que queremos conectar
DESCRIPTOR DE CONEXION: En este caso el descriptor para conectarnos es CNNORASITE
Podemos comprobar si la conexión es correcta mediante el comando TNSPING
$TNSPING nb_descriptor_de_red
RESOLUCIÓN POR TNSNAMES.ORA ("LOCAL NAMING")
1.- Configurar el listener del servidor (listener.ora) para que dé servicio a cada una de las BDs de la máquina y arrancarlo. Configurar los clientes (tnsnames.ora) y probar la conexión a las BDs. Al configurar los clientes, la resolución de string de conexión por defecto es a través del archivo TNSNAMES.ORA: parámetro names.directory_path del fichero SQLNET.ORA:
names.directory_path = (TNSNAMES, HOSTNAME, ONAMES)
Para ver cómo se crean los procesos servidores dedicados (si no se usa configuración MTS - Servidor compartido):
a) hacer telnet a VENTAS y conectarse con sql*plus ó conectarse a la base validando localmente, y desde sql*plus mirar los procesos que se han creado (el de usuario:sql*plus, y el proceso servidor dedicado (local=YES)); consultando la vista v$session y v$process. Utilizar el comando lsnrctl services y explicar resultado->no pasa por el listener, luego no se refleja la conexión en este comando.
b)conectarse en cliente/servidor a la BD y comprobar de nuevo los procesos (proceso cliente de sql*plus en el cliente, proceso servidor dedicado (local=NO)). Utilizar el comando lsnrctl services y explicar resultado, diferencias con el apartado a)->pasa por el listener, por lo que se refleja el establecimiento de conexión a través del servidor dedicado.
Si la base está configurada en modo compartido, forzar que los clientes se conecten por servidor dedicado en lugar de compartido. Esto se puede hacer de 2 formas:
En el tnsnames.ora del cliente crear un nuevo string de conexión igual que el ya existente para esta BD pero en la sección CONNECT_DATA añadir (SERVER=DEDICATED): VENTAS_DEDICADOS.world =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS =
(PROTOCOL = TCP)
(Host = 128.0.0.20)
(Port = 1521)
)
)
(CONNECT_DATA = (SID = orcl) (SERVER=DEDICATED)
)
)
y comprobar la conexión a través de este nuevo alias-> irá por servidor dedicadoen el sqlnet.ora del cliente añadir el parámetro USE_DEDICATED_SERVER=ON y comprobar cómo se realiza la conexión (usar el string de conexión inicial, no el anterior).
MÉTODO DE RESOLUCIÓN DE CONEXIÓN POR "HOST NAMING"
1.- No se puede usar Oracle Connection Manager, hay que usar TCP/IP, y resolución de direcciones por DNS/NIS/fich.hosts.
2.- Al configurar los clientes, indicar en primer lugar en el fichero SQLNET.ORA el método Host Naming para la resolución de string de conexión:
names.directory_path = (HOSTNAME, TNSNAMES, ONAMES)
3.- En el servidor de BD hay que poner el global_dbname para cada BD (antes del SDI_NAME) en el listener.ora de la siguiente forma (en lugar de ORACLE_SID.DB_DOMAIN):
global_dbname=
4.- En el cliente, añadir la dirección IP y el alias de la máquina a la que se quiere acceder (servidor de BD) en el fichero de hosts (si es que no existe DNS o NIS). Y para conectarse usar como string de conexión el nombre o dir.IP de la máquina servidor.
jueves, 2 de abril de 2009
El listener
- Por defecto el puerto del listener es el 1521
- El listener no limita el número de conexiones a la base de datos
Toda la información del listener la contiene un archivo denominado listener.ora ( $ORACLE_HOME/network/admin. )
El comando para gestionar el listener es lsnrctl. Mediante este comando podemos:
Parar el listener.
- Ver el estado del listener.
- Arrancar el listener.
- Rearrancar el listener.

SEGURIDAD LISTENER ORACLE 10G (securing the listener)
El principal paso para realizar la seguridad en el listener es ponerle una contraseña password.
El primer método para poner una contraseña al listener es editando el fichero listener.ora y escribiendo la siguiente línea:
PASSWORDS_LISTENER = orapass
Cuando guardemos el fichero con los cambios realizamos un reload del listener
lsnrctl> reload
Nota: El comando para entrar en el listener es lsnrctl ( $ORACLE_HOME/bin )
El segundo método para poder cambiar la contraseña al listener es el siguiente:
lsnrctl> change_password
Este comando te pedirá la clave antigua y la nueva clave.Si es la primera vez que ejecutas este comando la contraseña antigua ( old password ) habrá que dejarla en blanco.
El comando SET y SAVE CONFIG permite guardar esos cambios en el listener porque ahora el listener está gobernado por un password.
lsnrctl > set password
lsnrctl > save config
La información antigua se guardará enlistener.bck y listener.ora se actualizará con los nuevos datos.
Ejemplo de configuración del listener.ora
LISTENER9 =(DESCRIPTION_LIST =(DESCRIPTION =(ADDRESS_LIST =(ADDRESS = (PROTOCOL = TCP)(HOST = 193.168.4.220)(PORT = 2484)))))SID_LIST_LISTENER9 =(SID_LIST =(SID_DESC =(GLOBAL_DBNAME = orasite)(ORACLE_HOME = /oracle9/product/9.2.0)(SID_NAME = orasite)))
Parámetros del archivo:
HOST: Dirección ip del servidor de base de datos
PORT: Puerto de escucha de la base de datos ( por defecto suele ser el 1521 )
CLOBAL_DB_NAME: Nombre de la base de datos
ORACLE_HOME: Directorio de instalación de ORACLE ( ORACLE_HOME )
SID_NAME: SID de la base de datos ( muchas veces coincide con el GLOBAL_DB_NAME )
Este archivo incluye:
- Direcciones de protocolo en las que acepta solicitudes de conexión.
- Servicios de base de datos
- Parámetros de control utilizados por el listener.
Arquitectura de Oracle
Servidor Oracle: Hay varios archivos, procesos, y estructuras de memoria en un servidor Oracle, pero no todos ellos son usados cuando se procesa una instrucción SQL. Algunos son usados para mejorar el rendimiento de la base de datos, asegurando que la base de datos pueda ser recuperada en el evento de un error de software o de hardware, o ejecutar algunas tareas necesarias para la mantención de la base de datos. EL servidor Oracle consiste de una Instancia de Oracle y una base de datos Oracle.
1.- Instancia Oracle: Una instancia de Oracle, es la combinación de los procesos en segundo plano, y estructuras de memoria. La Instancia debe ser iniciada al accesar datos en la base de datos. Cada vez que una instancia es iniciada, una Area Global del Sistema (SGA) es asignada y los procesos en segundo plano de Oracle son iniciados. Los procesos en segundo plano realizan funciones en ayuda a los procesos invocados.
2.- Base de Datos de Oracle: Una base de datos en Oracle consiste de archivos del sistema operativo, conocidos como, archivos de base de datos, que proveen la actual información del almacenaje físico en la base de datos. Los archivos de base de datos son usados para asegurarse que los datos sean mantenidos de forma consistente y puedan recuperarse en el evento de una falla de la Instancia.
3.- Otros archivos claves: Archivos que no son de la base de datos, son usados para configurar la Instancia, autenticar los privilegios de usuarios, y recuperar la base de datos en el evento de una falla de disco.
4.- Procesos de Usuario y Servidor: Los procesos de usuario y servidor, son procesos primarios que son llamados cuando una instrucción SQL es ejecutada, no obstante, otros procesos pueden ayudar al servidor para que complete el procesamiento de la instrucción SQL.
5.- Otros Procesos: Muchos otros procesos existen y son usados por otros, tales como: Advanced Queuing, Real Applcation Clusters, Shared Server, Advanced Replication y más.
miércoles, 25 de marzo de 2009
Roles de un Administrador de Base de Datos
- Instalación y actualización del Oracle Server y de todos sus productos asociados
- Asignación de recursos para la utilización de Oracle: memoria, espacio en disco, perfiles de usuario etc.
- Ajuste de la base de datos para conseguir el rendimiento optimo.
- Enlace con el servicio mundial de asistencia al cliente de Oracle (Oracle Wordwide Support) para resolver problemas técnicos que requieran la intervención de Oracle.
- Estrategias de copia de seguridad y recuperación.
- Colaboración con el personal de administración del sistema y desarrolladores de aplicaciones.
Otros roles que Cumple son:
- Recuperabilidad: Crear y probar Respaldos.
- Integridad: Verificar ó ayudar a la verificación en la integridad de datos.
- Seguridad: Definir y/o implementar controles de acceso a los datos.
- Disponibilidad: Asegurarse del mayor tiempo de encendido
- Desempeño: Asegurarse del máximo desempeño incluso con las limitaciones.
- Desarrollo y soporte a pruebas: Ayudar a los programadores e ingenieros a utilizar eficientemente la base de datos.
Habilidades
Debido a la importancia de los datos que están a su cargo, el administrador de bases de datos debe ser experto en TI (tecnología de la información), teniendo particular conocimiento de DBMS (sistemas de administración de bases de datos) y el lenguaje de consulta SQL. También debe tener conocimiento de varios tipos de lenguaje de programación para poder automatizar ciertas tareas.
Una de sus tareas es la de asegurar la integridad del sistema de información de la compañía. Además, es necesario que posea un buen entendimiento de DBMS para optimizar las consultas, ajustar la configuración de DBMS o para sincronizar en forma precisa las herramientas de control del acceso a las bases de datos.
Es posible que el administrador de bases de datos tenga que brindar asistencia técnica a usuarios de las aplicaciones cliente o equipos de desarrollo para solucionar problemas, dar consejos o ayudar a resolver consultas complicadas.
Al trabajar con el jefe de seguridad , el administrador de bases de datos debe crear copias de seguridad, planes y procedimientos de restauración para preservar los datos de los cuales es responsable.
Además de estas habilidades técnicas, el administrador de bases de datos debe poseer un buen entendimiento de las aplicaciones de la compañía y estar dispuesto a atender las necesidades de los usuarios cuando desarrolla o edita una base de datos. En el mejor de los casos, debe tener experiencia en diseño de sistemas de información y modelos UML (Lenguaje unificado de modelos).