En esta sección se explica como diseñar un procedimiento almacenado usando el PL/SQL.
El presente blog tiene como finalidad dar a conocer las principales herramientas y bondades que nos brinda Oracle para el manejo de sistemas cliente servidor.
martes, 26 de octubre de 2010
martes, 19 de octubre de 2010
Archivo de Configuración de la Red oracle
En esta entrada vamos a ver la configuración de la red de oracle, dependiendo de la configuración que se utilice se pueden configurar unos archivos u otros.
listener.ora
tnsnames.ora
sqlnet.ora
names.ora
ldap.ora
- listener.ora Archivo ubicado en el servidor de base de datos. Es el archivo de configuración del listener de la base de datos.Este archivo tendrá que estar ubicado en $ORACLE_HOME/network/admin/listener.ora. El comando para gestionar el listener es lsnrctl. Este ejecutable lo podemos encontrar en $ORACLE_HOME/bin/lsnrctl. Ejemplo de configuración del listener.ora
- Direcciones de protocolo en las que acepta solicitudes de conexión.
- Servicios de base de datos
- Parámetros de control utilizados por el listener.
- tnsnames.ora Archivo ubicado en los clientes,contiene los nombres de servicio de red, asignados a descriptores a través de los cuales se nos permite acceder Ejemplo de configuración del tnsnames.ora
- sqlnet.ora Archivo ubicado en el cliente y en servidores de base de datos Ejemplo de configuración del sqlnet.ora
- names.ora Archivo ubicado en el servidor de ORACLE NAMES. Este archivo incluye la ubicación y la información de dominio y los parámetros de configuración opcionales para un servidor de ORACLE NAMES
- ldap.ora Archivo ubicado en el servidor de base de datos y en el cliente configurados para que funcionen como gestión centralizada. Contiene los parámetros necesarios para acceder al servidor de directorios.
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:
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
Este archivo es importante para la conexión de la base de datos del servidor con los clientes.
NAMES.PREFERRED_SERVERS =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = onames.orasite.com)(PORT = 1640))
)
NAMES.DIRECTORY_PATH= (ONAMES,TNSNAMES)
Parámetros del archivo:
Este ejemplo de archivo sqlnet, es una archivo configurado para que en un principio resuelva resuelva por ONAMES y en segundo lugar por TNSNAMES. Esta configuración busca primero el descriptor en ONAMES y si no existe busca la configuración de conexión en el TNSNAMES.
NAMES.PREFERRED_SERVERS:Indica la dirección del servidor ONAMES junto con su puerto
NAMES.DIRECTORY_PATH:Orden de archivos a mirar para resolver el descriptor de servicio
martes, 5 de octubre de 2010
Crear un usuario en Oracle
Para correr este scritp debemos haber instalado el PL/SQL
Ingresamos al PL/SQL con el usuario
SYS y la clave que ingresamos al momento de crear la base de datos
Despues el siguiente scritp:
-- Create the user
create user DESAidentified by "DESA"default tablespace USERStemporary tablespace TEMPprofile DEFAULT;
-- Grant/Revoke object privileges
grant execute on SYS.DBMS_STATS to DESA;
-- Grant/Revoke role privileges
grant connect to DESA with admin option;
grant dba to DESA with admin option;
grant resource to DESA with admin option;
-- Grant/Revoke system privileges
grant alter session to DESA with admin option;
grant create any procedure to DESA with admin option;
grant create any table to DESA with admin option;
grant create sequence to DESA with admin option;
grant create session to DESA with admin option;
grant create synonym to DESA with admin option;
grant create view to DESA with admin option;
grant execute any class to DESA with admin option;
grant unlimited tablespace to DESA with admin option;
Ingresamos al PL/SQL con el usuario
SYS y la clave que ingresamos al momento de crear la base de datos
Despues el siguiente scritp:
-- Create the user
create user DESAidentified by "DESA"default tablespace USERStemporary tablespace TEMPprofile DEFAULT;
-- Grant/Revoke object privileges
grant execute on SYS.DBMS_STATS to DESA;
-- Grant/Revoke role privileges
grant connect to DESA with admin option;
grant dba to DESA with admin option;
grant resource to DESA with admin option;
-- Grant/Revoke system privileges
grant alter session to DESA with admin option;
grant create any procedure to DESA with admin option;
grant create any table to DESA with admin option;
grant create sequence to DESA with admin option;
grant create session to DESA with admin option;
grant create synonym to DESA with admin option;
grant create view to DESA with admin option;
grant execute any class to DESA with admin option;
grant unlimited tablespace to DESA with admin option;
martes, 21 de septiembre de 2010
Estructura de una Base de datos Oracle
Una BD tiene una estructura física y una estructura lógica:
1.- Estructura Lógica: Se divide en unidades de almacenamiento lógicas: Tablespace, que contiene objetos relacionados. Una base de datos por ejemplo puede estar formada por una o mas tablespace SYSTEM -> catálogo del sistema.
Los esquemas con la colección de objetos o estructuras lógicas que corresponden directamente a los datos almacenados. Se crea un nuevo esquema por cada usuario que crea objetos en la base de datos.
El control del espacio se hace a través de estructuras lógicas de almacenamiento: bloques de datos, extensión y segmento.
El nuevo Automatic Storage Management (ASM) de Oracle Database 10g (o administración automática de almacenamiento) permite eliminar la necesidad de un sistema de ficheros y gestor de volumenes para gestionar los ficheros y log.
ASM distribuye automáticamente todos los datos de la base de datos a través de todos los discos. ASM detecta picos de carga y mueve información para aliviarlos.
2.- Estructura Física:
Una BD tiene uno o mas ficheros de datos. Estos ficheros sonde tamaño fijo se establecen en el momento que se crea la base de datos o en el momento en el que se crean tablespaces.Los ficheros de datos son leídos cuando se necesitan y sitados en una caché de memoria compartida.
El conjunto de ficheros REDO LOG sirven para registrar todos los cambios (insert, update, delete, create, alter o drop) sobre una BD y recuperarla ante un error.
¿Qué es la SGA?
Fuente: http://0101.netclime.net/1_5/06b/0d8/03e/1183040257561682.JPG
El SGA se utiliza para almacenar los datos de entrada (los datos de búfer según lo definido por el parámetro db_cache_size), y la información de control interno que se necesita la base de datos.
El SGA se sub-divide en varias estructuras de memoria:
* The buffer cache (db_cache_size) * El buffer cache (db_cache_size)
* The shared pool (shared_pool_size) * La piscina compartida (SHARED_POOL_SIZE)
* The redo log buffer (log_buffer) * El búfer del registro de rehacer (log_buffer)
¿Qué es la PGA?
Las siglas provienen de Program/Private Global Area, y es la memoria privada de cada proceso servidor. En esta memoria cada proceso almacena información que sólo es necesaria para su propio funcionamiento como por ejemplo sus variables globales, el estado actual de cada cursor (SQL).
Fuente: http://dis.um.es/~jfernand/0405/dbd/DBD04T06-oracle.pdf
Oracle 10g Administración y análisis de base de datos.
Oracle Tuning
1.- Estructura Lógica: Se divide en unidades de almacenamiento lógicas: Tablespace, que contiene objetos relacionados. Una base de datos por ejemplo puede estar formada por una o mas tablespace SYSTEM -> catálogo del sistema.
Los esquemas con la colección de objetos o estructuras lógicas que corresponden directamente a los datos almacenados. Se crea un nuevo esquema por cada usuario que crea objetos en la base de datos.
El control del espacio se hace a través de estructuras lógicas de almacenamiento: bloques de datos, extensión y segmento.
El nuevo Automatic Storage Management (ASM) de Oracle Database 10g (o administración automática de almacenamiento) permite eliminar la necesidad de un sistema de ficheros y gestor de volumenes para gestionar los ficheros y log.
ASM distribuye automáticamente todos los datos de la base de datos a través de todos los discos. ASM detecta picos de carga y mueve información para aliviarlos.
2.- Estructura Física:
Una BD tiene uno o mas ficheros de datos. Estos ficheros sonde tamaño fijo se establecen en el momento que se crea la base de datos o en el momento en el que se crean tablespaces.Los ficheros de datos son leídos cuando se necesitan y sitados en una caché de memoria compartida.
El conjunto de ficheros REDO LOG sirven para registrar todos los cambios (insert, update, delete, create, alter o drop) sobre una BD y recuperarla ante un error.
¿Qué es la SGA?
Fuente: http://0101.netclime.net/1_5/06b/0d8/03e/1183040257561682.JPG
El SGA se utiliza para almacenar los datos de entrada (los datos de búfer según lo definido por el parámetro db_cache_size), y la información de control interno que se necesita la base de datos.
El SGA se sub-divide en varias estructuras de memoria:
* The buffer cache (db_cache_size) * El buffer cache (db_cache_size)
* The shared pool (shared_pool_size) * La piscina compartida (SHARED_POOL_SIZE)
* The redo log buffer (log_buffer) * El búfer del registro de rehacer (log_buffer)
¿Qué es la PGA?
Las siglas provienen de Program/Private Global Area, y es la memoria privada de cada proceso servidor. En esta memoria cada proceso almacena información que sólo es necesaria para su propio funcionamiento como por ejemplo sus variables globales, el estado actual de cada cursor (SQL).
Fuente: http://dis.um.es/~jfernand/0405/dbd/DBD04T06-oracle.pdf
Oracle 10g Administración y análisis de base de datos.
Oracle Tuning
Suscribirse a:
Entradas (Atom)