190 likes | 396 Views
COMPONENTES DE MIDDLEWARE DE BD. MIDDLEWARE El middleware de BD consta de tres componentes principales: Interface de Programación de Aplicación (API) . Traductor de BD. Traductor de Red.
E N D
MIDDLEWARE • El middleware de BD consta de tres componentes principales: • Interface de Programación de Aplicación (API). • Traductor de BD. • Traductor de Red. • Interface de Programación de Aplicaciones es pública con respecto a la aplicación cliente. El programador interactúa con el middleware mediante API provistos por el software de éste. • El API de middleware permite que el programador escriba un código SQL genérico en lugar de un código específico de cada servidor de BD.
MIDDLEWARE • En otras palabras, el API de middleware permite que el proceso cliente sea independiente del servidor de BD. • Tal independencia significa que el servidor puede ser cambiado sin que se tengan que volver a escribir en su totalidad. • Traductor de BD traduce las solicitudes SQL en la sintaxis del servidor de BD específica. • La capa traductora de la BD acepta la solicitud SQL genérica y la proyecta en el protocolo SQL del servidor de BD.
MIDDLEWARE • Si la solicitud SQL utiliza datos de dos servidores de BDs diferentes, la capa traductora de la BD se encargará de comunicarse con cada servidor, recuperar los datos que utilizan el formato común esperado por la aplicación cliente. • El traductor de red maneja los protocolos de comunicación de red. • La capa de red maneja todos los detalles de comunicaciones de cada BD de manera invisible para la aplicación cliente.
COMPONENTES DEL MIDDLEWARE DE BASE DE DATOS Extremo Cliente API Middleware de Base de Datos Traductor de BD Traductor de Red Protocolo de Red
INTERACCIÓN ENTRE LOS COMPONENTES MIDDLEWARE C/S El cliente hace interface con el middleware. Extremo Cliente Servidor de base de datos BD Se hacen solicitudes SQL genéricos que son trasladados al servidor de BD. Middleware Middleware Protocolo de Red Protocolo de Red El middleware envía las solicitudes SQL al Servidor a través de la red.
MIDDLEWARE • Se pueden identificar tres beneficios principales de utilizar software de middleware. Los clientes pueden: • Acceder a múltiples BD (y bastantes diferentes). • Ser independientes del Servidor de BD. • Ser independientes del protocolo de red.
MIDDLEWARE ACCEDIENDO A MULTIPLES SERVIDORES DE BD Aplicación Cliente Middleware API Windows UNIX Sql Server Sql Server Postgresql Postgresql Protocolo de comunicaciones de BD Protocolo de comunicaciones de BD Named Pipes Named Pipes JDBC JDBC NetBIOS TCP/IP NetBIOS TCP/IP Red Red
POSTGRESQL • Para comenzar con postgresql se debe: • Correr o ejecutar el demonio postgresql. • Ser o cambiarse al usuario postgres. • Crear o iniciar la Bd con: initdb -D /var/lib/pgsql/data. • E iniciar despues el servidor de BD, con: • /usr/bin/postmaster -D /var/lib/pgsql/data, o • /usr/bin/pg_ctl -D /var/lib/pgsql/data -l logfile start. • El archivo de configuración se encuentra en: • /var/lib/pgsql/data/postgresql.conf
POSTGRESQL • Para crear usuarios en Postgres, se utiliza el comando: postgres$ createuser <Nombre_usuario> • ¿Debe permitirsele al usuario la creación de base de datos? (s/n) • ¿Debe permitirsele al usuario la creación de otros usuarios? (s/n) • CREATE USER • Para iniciar la base de datos: • $initdb -D /var/lib/pgsql/data • Para crear una BD, se utiliza: • bash$ createdbmi_base_de_datos
POSTGRESQL • Y para hacer uso de la BD creada: • bash$ psqlmi_base_de_datos • Forma de crear y asignarle un usuario propietario a la BD: • CREATE DATABASE mi_based OWNER usuario; • Para modificar privilegios y asignar passwords a los usuarios del SMBD, en SQL: • $ ALTER USER <usuario> PASSWORD ‘nueva_clave’;
POSTGRESQL • Archivos de Configuración del SMBD Postgresql, así como su ubicación: • $ls /var/lib/pgsql/data • /base • pg_ident.conf • postmaster.opts • pg_hba.conf • PG_VERSION • postgresql.conf
POSTGRESQL • Para cambiar o asignar privilegios a un usuario sobre una BD es: • GRAN ALL PRIVILEGES ON DATABASE <Base_Datos> TO <Usuario>;
MYSQL • Forma de iniciar con un usuario en el SMBD de Mysql: • >mysql-hhost_name-uuser_name-pyour_pass; • Para que un usuario pueda tener acceso a la BD, de manera remota es necesario especificar la red o el nodo desde el cual se conectará: • Por ejemplo: • GRANT ALL PRIVILEGES ONdb.*TO usuario@'10.27.43.0/255.255.255.0';
MYSQL • Para cambiar o asignar una clave a un usuario se puede utiliza el siguiente comando: • SET PASSWORD FOR ‘usuario’@'host_name' = 'eagle'; • Pero se recomienda el siguiente, para evitar problemas de acceso, ya que con el comando password se encripta la clave: • SET PASSWORD FOR‘usuario’@'host_name’ = PASSWORD(‘clave_nueva’);
MYSQL • El usuario Root, puede asignar privilegios a las cuentas de usuario, sobre las BDs. • Las siguientes sentencias usan el comando GRANT para configurar las cuentas: • mysql> GRANT ALL PRIVILEGES ON *.* TO 'monty'@‘localhost’ IDENTIFIED BY 'some_pass' WITH GRANT OPTION; • mysql> GRANT ALL PRIVILEGES ON *.* TO 'monty'@‘%’ IDENTIFIED BY 'some_pass' WITH GRANT OPTION;
Procesamiento de Bases de Datos 8a. Ed. David M. Kroenke. Pearson. • http://www.cs.cinvestav.mx/BDChapa/Beto/Blanco.htm • http://www.itlp.edu.mx/publica/tutoriales/basedat1/tema7.htm • http://www.itlp.edu.mx/publica/revistas/revista_isc/anteriores/mzo99/bdoo.html • http://www.elrinconcito.com/articulos/BaseDatos/BasesDatos.htm