Download - Unidad 2 Pacheco
-
7/21/2019 Unidad 2 Pacheco
1/38
2.1_ Lossistemas de administracin de bases de datos son usados para: Permitir a los usuarios acceder y manipular la base de datos proveyendo mtodos
para construir sistemas de procesamiento de datos para aplicaciones que requieranacceso a los datos. Proveer a los administradores las herramientas que les permitan ejecutar tareas de
mantenimiento y administracin de los datos.Algunas de sus caractersticas son:Control de la redundancia de datosEste consiste en lograr una mnima cantidad de espacio de almacenamiento paraalmacenar los datos evitando la duplicacin de la informacin. De esta manera selogran ahorros en el tiempo de procesamiento de la informacin, se tendrn menosinconsistencias, menores costos operativos y har el mantenimiento ms fcil.
Compartimiento de datosUna de las principales caractersticas de las bases de datos, es que los datos puedenser compartidos entre muchos usuarios simultneamente, proveyendo, de estamanera, mxima eficiencia.
Mantenimiento de la integridadLa integridad de los datos es la que garantiza la precisin o exactitud de la informacincontenida en una base de datos. Los datos interrelacionados deben siemprerepresentar informacin correcta a los usuarios.
Soporte para control de transacciones y recuperacin de fallas.
Se conoce como transaccin toda operacin que se haga sobre la base de datos. Lastransacciones deben por lo tanto ser controladas de manera que no alteren laintegridad de la base de datos. La recuperacin de fallas tiene que ver con la capacidadde un sistema DBMS de recuperar la informacin que se haya perdido durante una fallaen el software o en el hardware.
Independencia de los datos.En las aplicaciones basadas en archivos, el programa de aplicacin debe conocer tantola organizacin de los datos como las tcnicas que el permiten acceder a los datos. Enlos sistemas DBMS los programas de aplicacin no necesitan conocer la organizacinde los datos en el disco duro. Este totalmente independiente de ello.
SeguridadLa disponibilidad de los datos puede ser restringida a ciertos usuarios. Segn losprivilegios que posea cada usuario de la base de datos, podr acceder a mayorinformacin que otros.
VelocidadLos sistemas DBMS modernos poseen altas velocidades de respuesta y proceso.
-
7/21/2019 Unidad 2 Pacheco
2/38
Independencia del hardwareLa mayora de los sistemas DBMS estn disponibles para ser instalados en mltiplesplataformas de hardware.
Los sistemas de bases de datos relacionales RDBMS (Relational Database ManagementSystem, por sus siglas en Ingls) tales como Oracle, MySQL, SQL Server, PostgreSQL,Informix, entre otros, le permiten ejecutar las tareas que se mencionan a continuacin,de una forma entendible y razonablemente sencilla:
Le permiten ingresar datos al sistema. Le permiten almacenar los datos. Le permiten recuperar los datos y trabajar con ellos. Le proveen herramientas para capturar, editar y manipular datos. Le permiten aplicar seguridad. Le permiten crear reportes e informes con los datos.
2.1.1_ La memoria se puede estructurar en las siguientes partes:
rea Global del sistema (SGA), la cual se comparte entre todos los servidores y losprocesos en segundo plano.
reas globales de programas (PGA), que es privada para cada servidor y proceso ensegundo planos; a cada proceso se asigna un PGA.
rea de Ordenaciones (Sort Areas).Memoria Virtual
j Area de codigo de software.
-
7/21/2019 Unidad 2 Pacheco
3/38
Instancia de una Base de DatosCada instancia est asociada a una base de datos. Cuando se inicia una base de datosen un servidor (independientemente del tipo de computadora), se le asigna un rea dememoria (SGA) y lanza uno o ms procesos. A la combinacin del SGA y de losprocesos es lo que se llama instancia. La memoria y los procesos de una instanciagestionan los datos de la base de datos asociada de forma eficiente y sirven a uno ovarios usuarios.
Cuando se inicia una instancia El DBMS monta la base de datos, es decir, asocia dichainstancia a su base de datos correspondiente. En un misma computadora puedenejecutarse varias instancias simultneamente, accediendo cada una a su propia basede datos fsica.
nicamente el administrador de la base de datos puede iniciar una instancia y abriruna base de datos. Si una base de datos est abierta, entonces el administrador puedecerrarla y, cuando esto ocurre, los usuarios no pueden acceder a la informacin quecontiene.
-
7/21/2019 Unidad 2 Pacheco
4/38
2.1.2_ En una base de datos almacenamos informacin relevante para nuestro negociou organizacin y desde el punto de vista fsico, la base de datos est conformada pordos tipos de archivos:
Archivos de datos: contiene los datos de la base de datos internamente,est compuesto por pginas enumeradas secuencialmente que representa launidad mnima de almacenamiento. Cada pgina tiene un tamao de 8kb deinformacin. Existen diferentes tipos de pginas, a tener en cuenta:
Pginas de datos: es el tipo principal de pginas y son las que almacenanlos registros de datos.
Pginas de espacio libre (PFS Page Free Space): almacenan informacinsobre la ubicacin y el tamao del espacio libre.
Paginas GAM and SGAM: utilizadas para ubicar extensiones.
-
7/21/2019 Unidad 2 Pacheco
5/38
Pginas de Mapa de Ubicaciones de ndices (IAM Index Allocation Map):contiene informacin sobre el almacenamiento de pginas de una tabla ondice en particular.
Pginas ndices: Utilizada para almacenar registros de ndices.
Archivo de Registro de Transacciones: El propsito principal del registrode transacciones es la recuperacin de datos a un momento en el tiempo ocomplementar una restauracin de copia de respaldo completa (full backup). Elregistro de transacciones no contiene pginas, sino entradas con todos loscambios realizados en la base de datos, como son las modificaciones de datos,modificaciones de la base de datos y eventos de copia de seguridad yrestauracin. El acceso a datos es secuencial, ya que el registro detransacciones se actualiza en el mismo orden cronolgico en el que se hacen lasmodificaciones.
Este archivo no puede ser ledo por herramientas de usuario de SQL auqnue existen
herramientas de terceros que leen este archivo para recuperar los cambios efectuados.
Dependiendo de la versin el registro de transacciones se utiliza para otros propsitos
como por ejemplo bases de datos espejo (mirror) y transporte remoto de transacciones
(log shipping).
Para muchos de los administradores de bases de datos, la imagen anterior representala parte lgica y la parte fsica, donde:Data File:Los datafiles son los archivos fsicos en los que se almacenan los objetos que formanparte de un tablespace. Un datafile pertenece solamente a un tablespace y a una
instancia de base de datos. Un tablespace puede estar formado por uno o variosdatafiles. Cuando se crea un datafile, se debe indicar su nombre, su ubicacin odirectorio, el tamao que va a tener y el tablespace al que va a pertenecer. Adems, alcrearlos, ocupan ya ese espacio aunque se encuentran totalmente vacos, es decir,Oracle reserva el espacio para poder ir llenndolo poco a poco con posterioridad. Porsupuesto, si no hay sitio suficiente para crear un archivo fsico del tamao indicado, seproducir un error y no se crear dicho archivo.Cuando se van creando objetos en un tablespace, stos fsicamente se vanalmacenando en los datafiles asignados a dicho tablespace, es decir, cuando creamosuna tabla y vamos insertando datos en ella, estos datos realmente se reparten por losarchivos fsicos o datafiles que forman parte del tablespace. No se puede controlar enqu archivo fsico se almacenan los datos de un tablespace. Si un tablespace estformado por 2 datafiles y tenemos una tabla en ese tablespace, a medida que vamosinsertando filas stas se almacenarn en cualquiera de los dos datafilesindistintamente, es decir, unas pueden estar en un datafile y otras en otro.El espacio total disponible en un tablespace es lgicamente la suma de los tamaosque ocupan los archivos fsicos o datafiles que lo forman. Como hemos indicado estosdatafiles, al crearlos, estn totalmente vacos, simplemente es un espacio reservado yformateado por Oracle para su uso. A medida que se van creando objetos en ellos
-
7/21/2019 Unidad 2 Pacheco
6/38
como tablas, ndices, etc. y se van insertando registros en estas tablas, los datafiles sevan llenando o, lo que es lo mismo, el tablespace se va llenando.Tienen las siguientes caractersticas:
Un archivo slo puede estar asociado con una base de datos. Los archivos de datos tienen atributos que permiten reservar
automticamente para ellos extensiones cuando se acaba el espacio. Uno o ms archivos de datos forman una unidad lgica de almacenamiento
llamada tablespace
Os Block:Conocidos como Disk Block, estos mapean a los data blocks. A la hora de crear unanueva base de datos se debe indicar cuntos bloques de sistema operativo formarnun bloque de datos.
2.1.3 _ Antes de instalar cualquier SGBD es necesario conocer los requerimientos dehardware y software, el posible software a desinstalar previamente, verificar el registrode Windows y el entorno del sistema, as como otras caractersticas de configuracinespecializadas como pueden ser la reconfiguracin de los servicios TCP/IP y lamodificacin de los tipos archivos HTML para los diversos navegadores.Se presenta a continuacin una serie de requerimientos mnimos de hardware ysoftware para instalar oracle 11g Express y MySQL estndar versin 5.1. en Windows
Seven y Ubuntu 10.
Requerimiento OracleMySQL
RAM 512 MB 512 MB
Memoria virtual 1024 MB 1024 MB
-
7/21/2019 Unidad 2 Pacheco
7/38
Requerimiento OracleMySQL
Espacio disco duro 1.5 GB 1 GB
Tamao mximo de la base de datos 4 GB Sin limiteSistema Operativo: Windows Server, Windows Seven, Linux, Unix
Arquitectura del Sistema 32/64-bit
Protocolo de red TCP/IP
Protocolo de red TCP/IP con SSL
1La regla general para determinar el tamao de la memoria virtual depende del tamao dememoria RAM instalada. Si su sistema tiene menos de 4 GB de RAM por lo general el espacio deintercambio debe ser de al menos dos veces este tamao. Si usted tiene ms de 8 GB dememoria RAM instalada puede considerar usar el mismo tamao como espacio de intercambio.Cuanta ms memoria RAM tenga instalada, es menos probable usar el espacio de intercambio, amenos que tenga un proceso inadecuado.
2.1.4_ Debido al constante crecimiento de datos que generan las empresas hoy en da,se ha vuelto muy necesaria la bsqueda de nuevas plataformas para almacenar y
analizar la informacin, ambientes que consuman menos recursos, que sean msescalables y que provean una alta disponibilidad. La solucin consiste en elprocesamiento paralelo de los datos de una base de datos.
Una base de datos en modo transaccional significa que la BD ser capaz de que lasoperaciones de insercin y actualizacin se hagan dentro de una transaccin, es uncomponente que procesa informacin descomponindola de forma unitaria enoperaciones indivisibles, llamadas transacciones, esto quiere decir que todas lasoperaciones se realizan o no, si sucede algn error en la operacin se omite todo elproceso de modificacin de la base de datos, si no sucede ningn error se hacen todala operacin con xito.
Una transaccin es un conjunto de lneas de un programa quellevan inserto updateo delete. Todo aqul software que tiene un log de transacciones(que es la "bitcora" que permite hacer operaciones de commito rollback),propiamente es un software de BD; aqul que no lo tiene (v.g. D-Base), propiamenteno lo es. Todo software de base de datos es transaccional; si el software de la BD noes "transaccional", en realidad NO es un "software" de BD; en todo caso, es unsoftware que emula el funcionamiento de un verdadero software de BD. Cada
-
7/21/2019 Unidad 2 Pacheco
8/38
transaccin debe finalizar de forma correcta o incorrecta como una unidad completa.No puede acabar en un estado intermedio.Se usan las siguientes mtodos :
Begin TRans para iniciar la transaccin CommitTrans para efectuar los cambios con xito RollbackTrans para deshacer los cambios
Y depende que base de datos uses para efectuar las operaciones pero, es la mismateora para cualquier BD.
Una vez que se sabe la forma de ingresar comandos, es el momento de acceder a unabase de datos.
Suponga que en su hogar posee varias mascotas y desea registrar distintos tipos deinformacin sobre ellas. Puede hacerlo si crea tablas para almacenar sus datos eintroduce en ellas la informacin deseada. Entonces, podr responder una variedad depreguntas acerca de sus mascotas recuperando datos desde las tablas. Los pasosseran:
Crear una base de datos Crear una tabla Introducir datos en la tabla Recuperar datos desde la tabla de varias maneras Emplear mltiples tablas
La base de datos menagerie(palabra inglesa que en espaol significa "coleccin de
animales") se ha hecho deliberadamente simple, pero no es difcil imaginar situacionesdel mundo real donde podra usarse un tipo similar de base de datos. Por ejemplo,para un granjero que desee hacer el seguimiento de su hacienda, o para los registrosde los pacientes de un veterinario.Una vez instalado MySQL (disponible en el sitio web de MySQL en formato TAR:
http://downloads.mysql.com/docs/menagerie.tar.gzY Zip:
(http://downloads.mysql.com/docs/menagerie.zip)Se realiza lo siguiente: Mediante la sentencia SHOW se encuentran las bases de datos
que existen actualmente en el servidor:mysql> SHOW DATABASES;
+----------+| Database |+----------+| mysql || test |
http://downloads.mysql.com/docs/menagerie.tar.gzhttp://downloads.mysql.com/docs/menagerie.tar.gzhttp://downloads.mysql.com/docs/menagerie.zip)http://downloads.mysql.com/docs/menagerie.zip)http://downloads.mysql.com/docs/menagerie.zip)http://downloads.mysql.com/docs/menagerie.zip)http://downloads.mysql.com/docs/menagerie.tar.gz -
7/21/2019 Unidad 2 Pacheco
9/38
| tmp |+----------+
La lista obtenida puede ser distinta, pero es casi seguro que tendr las bases de datosmysql y test. La base de datos mysql es necesaria porque es la que describe losprivilegios de acceso de los usuarios. La base de datos test se provee para que losusuarios hagan pruebas.
Tenga en cuenta que si no tiene el privilegio SHOW DATABASES, no podr ver todaslas bases de datos que hay en el servidor. Consulte Seccin 13.5.1.3, Sintaxis de
GRANT y REVOKE. Si la base de datos test existe, intente acceder a ella:
mysql> USE testDatabase changed
Advierta que, al igual que QUIT, USE no necesita que ponga un punto y coma al final(aunque puede hacerlo si lo desea). La sentencia USE tiene otra particularidad: debeescribirse en una sola lnea.Puede colocar los ejemplos siguientes en la base de datos test, si tiene acceso a ella,pero si trabaja en un ambiente compartido, lo que deposite all puede ser fcilmenteborrado por alguien ms que tenga el acceso. Por este motivo, debera pedirle a suadministrador permiso para usar una base de datos propia. Suponga que quierellamarla menagerie. El administrador necesitar ejecutar un comando como este:
mysql> GRANT ALL ON menagerie.* TO 'su_nombre_mysql'@'su_host_cliente';Donde su_nombre_mysql es el nombre de usuario que se le asign, y su_host_clientees el host u computadora desde donde se conectar.
2.1.5_ 1.5. Variables de Ambiente y archivosimportantes para instalacin.
Variable: Es un espacio en memoria al cual se le da un nombre Hay
variables especficas que se crean al momento de entrar al sistema, pero
tambin hay variables que pueden ser definidas por el usuario. Las
variables son una forma de pasar informacin a los programas al
momento de ejecutarlos.
Variables de ambiente: Se usan para personalizar el entorno en el
que se ejecutan los programas y para ejecutar en forma correcta los
comandos del shell.
-
7/21/2019 Unidad 2 Pacheco
10/38
Toman su valor inicial generalmente de un archivo .profile, pero hay
veces en que el usuario tiene que modificar los valores de alguna
variable de ambiente cuando est tratando de instalar o ejecutar un
nuevo programa
A continuacin se comentan las opciones ms utilizadas de la
seccin mysqld (afectan al funcionamiento del servidor MySQL), se
almacenan en el archivomy.cnf(o my.ini)
basedir=ruta. Ruta a la raz MySQL
console. Muestra los errores por consola independientemente de lo
que se configure para log_error.
datadir=ruta. Ruta al directorio de datos default-table-type=tipo. Tipo de la Tabla InnoDB o, MyISAM
flush. Graba en disco todos los comandos SQL que se ejecuten
(modo de trabajo, sin transaccin)
general-log=valor. Con valor uno, permite que funcione el archivo
LOG para almacenar las consultas realizadas.
general-log-file=ruta. Indica la ruta al registro general de
consultas. language. Especifica el idioma de los lenguajes de error,
normalmente esots archivos de lenguaje, estn bajo /usr/local/share
log-error=ruta. Permite indicar la ruta al registro de errores.
log=ruta. Indica la ruta al registro de consultas.
long-query-time=n. Segundos a partir de los cuales una consulta
que tardes ms, se considerar una consulta lenta.
og-bin=ruta. Permite indicar la ruta al registro binario. pid-file=ruta. Ruta al archivo que almacena el identificador de
proceso de MySQL.
port=puerto. Puerto de escucha de MySQL
-
7/21/2019 Unidad 2 Pacheco
11/38
skip-grant-tables. Entra al servidor saltndose las tablas de
permisos, es decir todo el mundo tiene privilegios absolutos
skip-networking. El acceso a MySQL se har solo desde el
servidor local.
slow-query-log=0|1 . Indica si se hace LOG de las consultas
lentas.
slow-query-log-file=ruta . Ruta al archivo que hace LOG de las
consultas lentas
socket=ruta. Archivo o nombre de socket a usar en las conexiones
locales.
standalone. Para Windows, hace que el servidor no pase a ser un
servicio.
user=usuario. Indica el nombre de usuario con el que se iniciar
sesin en MySQL.
tmpdir=ruta. Ruta al directorio para archivos temporales
Archivos LOG en MySQL
Hay cuatro registros (logs):
Registro de errores (Error Log). Indica cuando arranc y se
detuvo el servidor. Se graba por defecto en la carpeta de datos de
MySQL (archivohost_name.err, donde host_name es el nombre del
servidor), pero la variable de sistema log_error permite indicar otra
ruta si fuera necesario.
Registro general de consultas (General Log File). Est
en la carpeta de datos de MySQL, salvo que se indique la
variable general- log-f i le. Contiene las consultas realizadas. Es el
archivo host_name.log. Registro binario (Binary Log). Registra instrucciones DML.
Los archivos binarios se almacenan por defecto en el directorio de
datos. Sirve para intentar restaurar una base de datos en caso de
desastre. Es binario, por lo que su manejo es complicado, para ver el
-
7/21/2019 Unidad 2 Pacheco
12/38
contenido se usa la utilidad mysq lb in logde esta forma:mysq lb in log
archivoLOG
Registro de consultas lentas (Slow Query Log File).
Registra las consultas que tardaron ms del tiempo mnimo
establecido. El archivo est (salvo quese especifique slow- log-
f i lecomo parmetro) en la carpeta de datos de MySQL con el
nombre host_name-slow.log.
2.1.6_ Oracle Database XE es una gran base de datos para:
Desarrolladoresque trabajan en PHP, Java, .NET, XML, y Open Sourceapplications
DBAsque necesitan desarollar librementeVendedores de Software y hardwareque necesitan distribuir sin cargos
Instituciones educativas y estudiantesque cursan materias relacionados conbase de datos
Oracle es lder en bases de datos. Con Oracle XE, es posible desarrollar y desplegar aplicacionespotentes, actualizar sin costo y generar complejas migraciones.
Oracle Express Edition se instala en una mquina con cualquier nmero de procesadores, solopuede contener una base de datos y direccionar un mximo de 4GB de datos y un mximo de 1GB
RAM.
Oracle Database XE, usa una interface basada en browser (Navegador) para:Administrar la base de datos
Crear tablas, vistas, y otros objetos de base de datos
Importar, exportar, y ver tablas de datos
Ejecutar consultas y scripts SQL
Generar reportes
Oracle Database XE incluye Oracle Application Express release 2.1, un ambiente de desarrollo
grfico para crear aplicaciones Web con base de datos. Oracle Database XE es una versinreducida de Oracle con las misma caractersticas y potencialidad de Oracle Database. Esnecesario destacar que no soporta todos los tipos de datos de Oracle Database XE.
Oracle Database XE incluye las siguientes utilidades:
Lnea de comandos SQL (SQL*Plus), para ejecutar sentencias SQL y comandosPL/SQL y ejecutar scripts
-
7/21/2019 Unidad 2 Pacheco
13/38
SQL*Loader, para insertar datos en la base de datos
Utilidades para importar, exportar y volcar la base de datos
Download Oracle Database 11g Express Edition.Proceso que descargara elarchivoOracleXE112_Win32.zipdescomprimalo en el archivo de su preferencia.
Requerimientos del sistema para Oracle Database XEServer y Oracle Database XE Client.
Requerimiento Valor
Arquitectura delsistema
Intel x86 (desde Windows 2000 hasta seven) o Linux x86 (Debian,Mandriva, Novell, Red Hat y Ubuntu )
Protocolo de red TCP/IP
Espacio en discoServidor : 1.6 gigabytes mnimoCliente: 75 megabytes
RAM 256 megabytes mnimo, 512 megabytes recomendado
Estos puertos son usados por defecto por OracleDatabase XE
1521: Oracle database listener2030: Oracle Services para Microsoft Transaction Server8080: Puerto para Oracle XML DB y la inteface grfica de usuario Oracle DatabaseXE.
Instalacin de Oracle Database XE en WindowsDoble clic sobre el icono o el archivosetup.exeen ambos casos con privilegios deadministrador. Pulse sobre el botn desiguientepara iniciar la instalacin.
Acepte los trminos de acuerdo de licencia
http://www.oracle.com/technology/software/products/database/xe/index.htmlhttp://www.oracle.com/technology/software/products/database/xe/index.htmlhttp://www.oracle.com/technology/software/products/database/xe/index.html -
7/21/2019 Unidad 2 Pacheco
14/38
Verifique los requerimientos de espacio y si los cumple pulse aceptar. Considere un Giga ms para
almacenamiento.
Introduzca el password para el usuario SYSTEM. Despus determinar la instalacin deber iniciar la base de datos con esteusuario.
-
7/21/2019 Unidad 2 Pacheco
15/38
A continuacin Oracle Database XE nos informa sobre lospuertos que utilizara. Pulse Instalar.
El tiempo de instalacin de Oracle Database XE depende de suequipo (procesador y memoria). Al terminar el proceso deinstalacin pulse el botn Terminar.
-
7/21/2019 Unidad 2 Pacheco
16/38
Al pulsar el botn Terminar nos direccionara a la pgina de acceso de la base de datos(http://127.0.0.1:8080/apex). Recuerde iniciar por primera vez con el usuario SYSTEM y supassword.
Pulse el iconoSessionse introduzca la siguiente informacin
Para futuros accesos usted puede pulsar botn de inicio, todos los programas, base de datos 10gExpress Edition o el icono en su escritorio denominado Base de Datos
Ahora vamos a crear un usuario
Conteste el siguiente formulario
-
7/21/2019 Unidad 2 Pacheco
17/38
Instalacin de Oracle Database XE en Ubunto 10
Lo primero que tenemos que hacer es descargar el paquete .deb correspondiente. Paraello accedemos a lapagina oficial de oracle.Note que para poder descargar hay que registrasegratuitamente
http://www.oracle.com/technetwork/database/express-edition/downloads/102xelinsoft-102048.htmlhttp://www.oracle.com/technetwork/database/express-edition/downloads/102xelinsoft-102048.htmlhttp://www.oracle.com/technetwork/database/express-edition/downloads/102xelinsoft-102048.html -
7/21/2019 Unidad 2 Pacheco
18/38
Seleccionado el paquete oracle-xe-universal_10.2.0.1-1.0_i386.deb es necesario abrir con elinstalador de paquetesGDebi.
Terminada la descarga instale el paquete
-
7/21/2019 Unidad 2 Pacheco
19/38
Una vez que termina de instalarse el paquete. Tenemos que configurar la base de datos. Para ello
ejecutamos el comando:
sudo /etc/init.d/oracle-xe configure
Con eso arranca un script de configuracin en modo texto que nos hara una serie de preguntas:
Puerto de la aplicacion web que nos permite administrar graficamente la base dedatos,
Puerto de la base de datos,
Password el usuario SYSTEM de Oracle,
Si queremos arrancar la base de datos cada vez que iniciemos la mquina.
Oracle Database 10g Express Edition Configuration-------------------------------------------------
This will configure on-boot properties of Oracle Database 10g Express
Edition. The following questions will determine whether the database
should
be starting upon system boot, the ports it will use, and the passwords
that
will be used for database accounts. Press to accept the defaults.
Ctrl-C will abort.
Specify the HTTP port that will be used for Oracle Application Express
[8080]:8080
Specify a port that will be used for the database listener [1521]:1521
Specify a password to be used for database accounts. Note that the same
password will be used for SYS and SYSTEM. Oracle recommends the use of
different passwords for each database account. This can be done after
initial configuration:
Confirm the password:
-
7/21/2019 Unidad 2 Pacheco
20/38
Do you want Oracle Database 10g Express Edition to be started on boot
(y/n) [y]:y
Starting Oracle Net Listener...Done
Configuring Database...Done
Starting Oracle Database 10g Express Edition Instance...Done
Installation Completed Successfully.
To access the Database Home Page go to "http://127.0.0.1:8080/apex"
Yo respondi usando los valores por defecto, cambia los valores de los puertos si entran en conflictocon otros usados en tu mquina y no te olvides de la contrasea que pongas para SYS y SYSTEM,la usaremos posteriormente.
En ambos sistemas operativos despus de introducir el usuario y el password correspondiente. Esnecesario definir un usuario con los privilegios necesarios para administrar la base de datos.
Para administrar graficamente tu base de datos usaremos la siguiente URL.
http://127.0.0.1:8080/apex
MySQL Enterprise Edition
MySQL Enterprise Edition incluye el conjunto ms completo de caractersticas avanzadas yherramientas de gestin para alcanzar los ms altos niveles de escalabilidad, seguridad, fiabilidady tiempo de actividad. Reduce el riesgo, costo y complejidad en el desarrollo, implementacin yadministracin de aplicaciones crticas de negocio MySQL.
MySQL Enterprise Edition incluye:
MySQL Enterprise Backup: Realiza copias de seguridad de bases de datos MySQL en lnea, delos subconjuntos de tablas InnoDB, y la recuperacin mediante puntos de restauracin.MySQL Enterprise de alta disponibilidadque proporciona, con soluciones certificadas queincluyen replicacin de MySQL, Oracle VM Templates para MySQL.MySQL Enterprise Escalabilidad: permite alcanzar el rendimiento sostenido y la escalabilidad decada vez mayor de usuarios, consulta, y las cargas de datosMySQL Enterprise Security: Proporciona listas para utilizar los mdulos de autenticacinexternos para integrar fcilmente las infraestructuras existentes de seguridad,incluyendoPluggable Authentication Modules y el directorio activo de WindowsMySQL Enterprise Monitorsupervisa continuamente su base de datos y de forma proactiva le
asesora sobre cmo implementar las mejores prcticas de MySQL, incluyendo consejos y alertasde seguridadMySQL Query AnalyzerMejora el rendimiento de las aplicaciones mediante el control derendimiento de las consultas y precisa localizacin de cdigo SQL que est causando unadesaceleracinMySQL WorkbenchOfertas de modelado de datos, desarrollo de SQL y herramientas deadministracin integral para la administracin del servidor de configuracin del usuario, y muchoms.
-
7/21/2019 Unidad 2 Pacheco
21/38
La versin 5.2. est preinstalada en Ubuntu para su configuracin seleccionaremos del menu
principalAplicaciones,MySQL Administrador. Introduzca el password deroot.
Obtendr como respuesta la interface de conexin. Teclee el password de root y presione el
botnconect.
Similar a Oracle procederemos a crear un usuario administrador para evitar usar root.SeleccioneUser Administrationy presione el botnNew User
-
7/21/2019 Unidad 2 Pacheco
22/38
Introduzca los datos solicitados. Es necesario dar privilegios al usuario (Scheme Privileges), sin
mayores explicaciones otorgue todos y pulse el botnApply Changes.
2.1.7_ GUA PARA INSTALAR EL DBMS
INSTALACIN DE ORACLE 11G EN WINDOWS XP
Requerimientos:
1. Permisos de Administrador: Es necesario tener permisos de administrador para ejecutar el
instalador.
2. Requisitos mnimos de Hardware:Es necesario cumplir con los siguientes requerimientos
mnimos en equipo donde se desea instalar:
Requisito Mnimo
Memoria Fsica (RAM) 1Gb
Memoria Virtual El doble de tamao que la RAM
(2Gb)
Espacio en disco Instalacin Bsica: 4.55Gb
Instalacin Avanzada: 4.92Gb
-
7/21/2019 Unidad 2 Pacheco
23/38
Adaptacin de Vdeo 256 colores
Procesador 550Mhz
3. Requisitos mnimos de Software:
Arquitectura de procesador Intel (x86), AMD64, o Intel EM64T
Sistema Operativo o Windows 2000 Service Pack 1 o
superior
o Windows Server 2003 o
Superior
o Windows XP
Professional
o Windows Vista Businnes o
Superior
*Windows NT no esta soportado
Compilador o ACUCOBOL-GT version 6.2
o Micro Focus Net Express 5.0
Protocolo de red o TCP/IP
o TCP/IP with SSL
o Named Pipes
4. Navegadores web soportados:
o Netscape Navigator 7.2 o Superior
o Mozilla version 1.7 o Superior
o Microsoft Internet Explorer 6.0 SP2 o Superior
o Firefox 1.0.4 o Superior
Descarga de Oracle Database 11g Standard Edition para Windows XPProfesional
Con cualquier navegador de Internet, como Mozilla Firefox, accederemos a la URL:
-
7/21/2019 Unidad 2 Pacheco
24/38
http://www.oracle.com/technology/software/products/database/index.html
Para poder realizar la descarga deberemos ser usuarios registrados de Oracle (es gratuito).
Si somos usuarios registrados introduciremos usuario y contrasea en "Username" y "Password" y
pulsaremos "Continue" para iniciar la descarga. Si no lo somos pulsaremos "sign up now" paraproceder al registro.
Tras haber introducido usuario y contrasea o haber realizado el proceso de registro de nuevousuario, nos mostrar la ventana de descarga de Mozilla Firefox, marcaremos "Guardar archivo" ypulsaremos "Aceptar".
A continuacin indicaremos la ubicacin de la descarga delficherowin32_11gR1_database_1013.zip. Es importante mencionar que ocupa casi 2GB deespacio en disco.
Tras la descarga del fichero win32_11gR1_database_1013.zip, lo descomprimeros
con WinZIPoWinRAR.
Instalacin de Oracle Database 11g Standard Editionen Windows XP Profesional
Pasos para instalar el DBMS:
1. Tras la descompresin, accederemos a la carpeta ../database y ejecutaremos el fichero setup.exe.
2. En nuestro caso marcaremos la opcin "Instalacin Avanzada" que permite personalizar casi todas
las opciones de instalacin. Pulsaremos "Siguiente" para continuar:3. A continuacin seleccionaremos el tipo de instalacin, en nuestro caso marcaremos "Personal
Edition". Pulsaremos "Siguiente" para continuar.
4. Especificaremos un directorio base en "Directorio Base de Oracle" y en Ubicacin del Software
indicaremos un "Nombre" para identificar esta instalacin de Oracle y una "Ruta de Acceso" (dondese copiarn los archivos de Oracle). Pulsaremos "Siguiente" para continuar.
5. Si todo es correcto indicar "0 requisitos a verificar", si encuentra algn problema lo indicar y
podremos subsanarlo. Cuando todo sea correcto pulsaremos "Siguiente" para continuar.
6. En nuestro caso tenemos instalada ya Oracle Database 10g Express Edition., por lo que nos pedir
si queremos actualizar, marcaremos "No" pues queremos dejar la versin XE tambin operativo,pulsaremos "Siguiente" para continuar.
7. En nuestro caso seleccionaremos "Crear Base de Datos", pues queremos utilizar Oracle Database
como servidor de Oracle una vez finalizado el proceso de instalacin. Pulsaremos "Siguiente" paracontinuar.
http://www.oracle.com/technology/software/products/database/index.htmlhttp://www.oracle.com/technology/software/products/database/index.htmlhttp://www.oracle.com/technology/software/products/database/index.html -
7/21/2019 Unidad 2 Pacheco
25/38
8. En nuestro caso seleccionaremos "Uso General/Procesamiento de Transacciones", pues queremos
crear un servidor de base de datos Oracle para uso general (aplicaciones de Contabilidad,Facturacin, Recursos Humanos, Gestin, etc.). Pulsaremos "Siguiente" para continuar.
9. En nuestro caso, tanto "Nombre de la Base de Datos Global" como el "SID" tendrn el mismo valor:
"bdoracle". Teniendo en cuenta que nuestra base de datos de Oracle no se configurar para Oracle
Real Application Clusters (RAC) ni habr varias bases de datos. Pulsaremos "Siguiente" paracontinuar.
10. En nuestro caso marcaremos "Activar Gestin Automtica de Memoria", teniendo en cuenta que
tenemos un equipo con 2GB de RAM, indicaremos a Oracle que utilice hasta un mximo de 800MB(40%).
11. En nuestro caso marcaremos "Usar Valor por Defecto", que se basar en el juego de caracteres
del sistema operativo (WE8MSWIN1252).
12. En nuestro caso no marcaremos la opcin "Desactivar Todos los Valores de Seguridad", de esta
forma podremos disponer de los nuevos valores de seguridad mejorados.
13. En nuestro caso, puesto que no tenemos instalado Oracle Management Agent, slo podremosseleccionar "Usar Database Control para Gestin de Base de Datos". No marcaremos "ActivarNotificacin de Correo Electrnico" pues an no tenemos un servidor de email disponible (estaopcin se puede modificar posteriormente):
14. En nuestro caso, para almacenar los archivos de base de datos, seleccionaremos la opcin: a)
Seleccione Sistema de Archivos. y b) En el campo Especificar Ubicacin de Archivo de Base deDatos, especifique el directorio principal para los archivos de base de datos.
15. En nuestro caso, puesto que s queremos que se active la copia de seguridad automtica,
marcaremso "Activar Copias de Seguridad Automticas" y marcaremos tambin en"Almacenamiento de rea de Recuperacin" la opcin "Sistema de Archivos", en "Ubicacin del
rea de Recuperacin" indicaremos la unidad y carpeta de destino de la copia de seguridad. En"Credenciales de Trabajo de Copia de Seguridad utilizaremos el usuario "alonso" que pertenece algrupo de seguridad "Administradores" del sistema operativo Microsoft Windows XP.
16.A continuacin indicaremos las contraseas para cada usuario que Oracle crear por defecto
(SYS, SYSTEM, SYSMAN, DBSNMP). Podremos establecer la misma contrasea para todosmarcando la opcin "Usar la misma contrasea para todas las cuentas" y escribiendo la contraseaen "Introducir Contrasea" y "Confirmar Contrasea".
17. En este punto, Oracle Universal Installer nos permite introducir los datos de cuanta de usuario
MetaLink, en nuestro caso, puesto que no disponemos de esta cuenta, no marcaremos la opcin"Activar Oracle Configuration Manager". Pulsaremos "Siguiente" para continuar con la instalacin
de Oracle Database.
18. Por ltimo, antes de iniciar la instalacin, Oracle Universal Installer nos muestra un resumen de los
valores seleccionados en las ventanas anteriores (Valores Globales, Idioma del Producto,Requisitos de Espacio, Nuevas instalaciones, etc.). Para iniciar la instalacin pulsaremos "Instalar".
19. Tras la instalacin, podremos comprobar que Oracle funciona correctamente entrando en la
administracin (Oracle Enterprise Manager), abriendo un navegador de Internet (por ejemploMozilla Firefox) y escribiendo la URL: https://nombre_servidor:1158/em. Para el caso de Mozilla
-
7/21/2019 Unidad 2 Pacheco
26/38
Firefox nos advertir de que "La conexin segura ha fallado" debido a que el certificado deseguridad no es vlido, pulsaremos en "O puede aadir una excepcin".
En la ventana de inicio de sesin de Oracle Enterprise Manager, introduciremos el usuario (system)y la contrasea y pulsaremos "Conectar":
Como se puede observar en los archivos de apoyo, en Oracle Database 11g, toda las administracines va web (http), bastante intuitiva y sencilla. Podremos acceder a esta administracin desdecualquier equipo de nuestra red (LAN) sin necesidad de instalar software cliente ni nada por elestilo, con un simple navegador de Internet. Slo necesitaremos tener abierto el puerto 1158 en elequipo con Oracle Database 11g.
2.1.8_ Una tabla es un sistema de elementos de datos (atributo - valores) que seorganizan que usando un modelo vertical - columnas (que son identificados por sunombre)- y horizontal filas. Una tabla tiene un nmero especfico de columnas, peropuede tener cualquier nmero de filas. Cada fila es identificada por los valores queaparecen en un subconjunto particular de la columna que se ha identificado por una llaveprimaria.
http://2.bp.blogspot.com/-kKhO4asto48/Tf3wFOiz0tI/AAAAAAAAABs/KlF-BMM4Z-c/s1600/tablespace.pnghttp://3.bp.blogspot.com/-zfuC9JJtEBo/Tf3vU2hHXpI/AAAAAAAAABo/vMH2RJR_aD0/s1600/tablespace.pnghttp://2.bp.blogspot.com/-kKhO4asto48/Tf3wFOiz0tI/AAAAAAAAABs/KlF-BMM4Z-c/s1600/tablespace.pnghttp://3.bp.blogspot.com/-zfuC9JJtEBo/Tf3vU2hHXpI/AAAAAAAAABo/vMH2RJR_aD0/s1600/tablespace.png -
7/21/2019 Unidad 2 Pacheco
27/38
Una tabla de una base de datos es similar en apariencia a una hoja de clculo, en cuantoa que los datos se almacenan en filas y columnas. Como consecuencia, normalmente esbastante fcil importar una hoja de clculo en una tabla de una base de datos. La principaldiferencia entre almacenar los datos en una hoja de clculo y hacerlo en una base dedatos es la forma de organizarse los datos.
Por lo tanto, la creacin de las tablas en el proceso de programacin en Oracle juegan unpapel muy importante. En el momento de crear las tablas se definen caractersticas a dosniveles: Tabla y Columna, como se muestra a continuacin:
A nivel de tabla: Refieren a una o a varias columnas, donde cada columna se defineindividualmente.
Nombre:
Nombre de la tabla puede ser de 1 a 30 caracteres. La tabla tiene comopropietario al usuario que las crea. Por ejemplo EQUIPO.Hay que tener en cuenta tambin ciertas restricciones con los nombresde las tablas: longitud mxima de 30 caracteres, no puede habernombres de tabla duplicados, deben comenzar con un carcteralfabtico, permitir caracteres alfanumricos y el guin bajo '_', y Oracleno distingue entre maysculas y minsculas.
Propietario:
La tabla tiene como propietario al usuario que las crea En nuestro casosomos el usuario ALUMNO. Otro usuario que desee usar nuestrastablas debe tener autorizacin para ello y hacer referencia a la tablacomo ALUMNO.EQUIPO(propietario.tabla)
Cantidad deColumnas:
Una tabla puede tener un mximo de 254 columnas.
A nivel deColumnael nombre de la columna puede tener un mximo de 30 caracteres.
En Oracle podemos implementar diversos tipos de tablas. A continuacin sepresenta una recopilacin no exhaustiva de ellas.
-
7/21/2019 Unidad 2 Pacheco
28/38
Tipo Tabla Descripcin
Regular(heap)
Son el mecanismo de almacenamiento de los datos en una base dedatos Oracle. Contienen un conjunto fijo de columnas. Las columnasde una tabla describen los atributos de la entidad que se representa
con la tabla. Cada columna tiene un nombre y caractersticasespecficas: tipo de dato y longitud, restricciones, etc.
Clustered
Un cluester proporciona un mtodo opcional de almacenar datos detabla. Un cluster est compuesto de un grupo de tablas que compartenlos mismos bloques de datos. Las tablas son agrupadas mediantecolumnas comunes.
Index
Aqu una tabla es almacenada en la estructura de un ndice. Estoimpone orden fsico a las filas por si mismas. A diferencia de un heap,donde los datos son almacenados en donde caben, en una tabla IOT
(Tabla Organizada por Indices) los datos son almacenados en el ordende la clave primaria.
Particionadas
Es un esquema de organizacin de los datos con el cual podemosdividirla en mltiples objetos de almacenamientos llamados particionesde datos o rangos, dependiendo los valores puede ser dividido en unoo ms columnas de la tabla. Cada particiones de datos es almacenadoseparadamente. Estos objetos almacenados pueden estar endiferentes tablespaces, en el mismo o en una combinacin de ambos.
Temporales
Son tablas cuyos datos permanecern en el sistema slo durante el
tiempo que dure la transaccin o sesin involucrada. No obstante, aligual que para las tablas permanentes, la definicin de las tablastemporales se almacena en las tablas del sistema.
La sintaxis del comando que permite crear un tabla es la siguiente
Del examen de la sintaxis de la sentenciaCreate Tablese pueden concluir quenecesitamos conocer los distintos tipos de columna y las distintas restricciones que sepueden imponer al contenido de las columnas.
Existen varios tipos de datos en SQL. De esta manera, cada columna puede albergar unainformacin de naturaleza distinta. Los tipos de datos ms comunes y sus caractersticas
-
7/21/2019 Unidad 2 Pacheco
29/38
en Oracle Express (10 Y 11g) se resumen en la siguiente tabla. Las versiones de Oraclecomercial soportan una gama mucho ms amplia de tipos de datos.
Tipo de Dato Descripcin
BLOB
Contiene datos binarios con un tamao mximo de 4 gigabytes.
Los datos binarios nos van a permitir guardar en la base dedatos archivos, imagenes, sonidos, etc ...Casi siempre es preferible guardar la ruta del archivo en la basede datos en lugar del propio archivo en modo binario, peroexisten ciertas circunstancias en las que no nos queda otrasolucin.
BINARY_DOUBLE Presicin doble
BINARY_FLOAT Presicin simple
CLOB
Un tipo de datos CLOBde Oracle contiene datos de caracteresbasados en el juego de caracteres predeterminados delservidor. Su tamao mximo es de 4 gigabytes. Se asignaa cadena.
Use la siguiente expresin para una consulta de un campoCLOB
SELECTDBMS_LOB.substr(campo,DBMS_LOB.getlength(campo),1)
FROMtablaprueba;
CHARAlmacena datos de tipo carcter alfanumrico de longitud fija,con un tamao mximo de 2000. caracteres
DATEAlmacena fechas desde el 1-Ene-4712 AC hasta el 31-Dic-4712DC.
NUMBER(dig [,
dec])Datos numricos dendgitos, de los cualesdecsondecimales. El tamao mximo es de 38 dgitos.
NVARCHAR2 Almacena un valor alfanumrico de longitud variable encaracteres Unicode con las mismas restricciones de varchar.
TIMESTAMPFecha y hora (incluidos los segundos), con un tamao queabarca desde 7 a 11 bytes.
VARCHAR2(tamao
)Guarda datos de tipo carcter alfanumrico de longitudvariable, con un tamao mximo de 4,000 caracteres.
-
7/21/2019 Unidad 2 Pacheco
30/38
Ejemplo:Considere la siguiente tabla de datos correspondientes a los campeones deFrmula 1 (1950 - 2012) y sus escuderas. Y su traduccin a sentencias Oracle.
Ao Campen Escudera
2012 - -
2011 Sebastian Vettel Red Bull Racing
2010 Sebastian Vettel Red Bull Racing
2009 Jenson Button Brawn GP
2008 Lewis Hamilton McLaren
2007 Kimi Raikkonen Ferrari
2006 Fernando Alonso Renault
2005 Fernando Alonso Renault
2004 Michael Schumacher Ferrari
2003 Michael Schumacher Ferrari
2002 Michael Schumacher Ferrari
2001 Michael Schumacher Ferrari
2000 Michael Schumacher Ferrari
CREATE TABLEf1 (
year INTEGER PRIMARY KEY,
campeon CHAR(30),
escuderia CHAR(20)
);
Ejemplo: Estados, capitales, densidad de poblacin y superficie de la RepublicaMexicana
CREATE TABLEestados (
idEstado INTEGER PRIMARY KEY,
nombreEstado CHAR(25) NOT NULL,
capital CHAR(25) NOT NULL,
densidad INTEGER NOT NULL,
-
7/21/2019 Unidad 2 Pacheco
31/38
poblacion INTEGER NOT NULL
);
Tablas TemporalesOracle permite la creacin de tablas temporales para mantener datos propios y exclusivosa una sesin Oracle determinada. Estos datos permanecern en el sistema slo duranteel tiempo que dure la transaccin o sesin involucrada. No obstante, al igual que para lastablas permanentes, la definicin de las tablas temporales se almacena en las tablas delsistema.
La siguiente sintaxis permite crear una tabla temporal personal para cada sesion. Esosignifica que los datos no se comparten entre sesiones y se eliminan al final de la misma.
CREATEGLOBAL TEMPORARYTABLE[ schema. ]table (
nombreColumna tipoDato [DEFAULT
expresin] [NOT NULL
],
[,nombre_columna tipo_dato [DEFAULT expresin]
[restriccin_columna] ...
|restriccin_tabla];
ON COMMIT{ DELETE | PRESERVE} ROWS]
[ physical_properties ]
Con la opcionON COMMIT DELETE ROWSse borran los datos cada vez que sehaceCOMMITen la sesion.Con la opcionON PRESERVE DELETE ROWSlos datos no se borran hasta el final de lasesion.
Sus ventajas son varias, la informacin contenida en ella esta solo disponible para lasesin actual, cualquierinsercin,borrado,actualizacinsolo se refleja en la sesinactiva.
Muchas funcionalidades de cualquier tabla normal se mantienen en ella, como triggers anivel tabla, vistas, indices, exportar e importar (claro solo la definicin de la tabla).
No es posible declarar llaves forneas en una tabla temporal.
-
7/21/2019 Unidad 2 Pacheco
32/38
(DROP) Eliminacin
Cuando una tabla ya no es til y no vamos a volver a necesitarla debe ser borrada. Estaoperacin se puede realizar con el comando DROP TABLE.
DROP TABLEnombre_tabla[CASCADE CONSTRAINTS][PURGE]
Se borra la tabla de la base de datos, borrando toda la informacin contenida en la tabla,es decir, todas las filas. Tambin se borrar toda la informacin que sobre la tablaexistiera en el diccionario.
Si alguna columna de la tabla a borrar sirve como clave ajena de alguna tabla detalle,impide la eliminacin de la tabla, ya que existe una restriccin que requiere de laexistencia de la tabla maestra. Esto se puede areglar colocando la sentencia CASCADECONSTRAINTS.
Esto produce que las restricciones de la tabla detalle se borren antes de borrar la tablamaestra.PURGEevita que los objetos borrados se vayan a la papelera
La siguiente sentencia produce la eliminacin de la tabla BORRAME.
Modificacin
Oracle permite modificar las restricciones definidas para una tabla. Esto puede llevar ainconsistencia de los datos ya introducidos en la base de datos. Por ello, Oracle tienedefinidos mecanismos para modificacin de los datos ya existentes.
Esta operacin se puede realizar con el comandoALTER TABLE.
-
7/21/2019 Unidad 2 Pacheco
33/38
ALTER TABLE[esquema.]tablaclausula_constraint[,][ENABLEclausula_activa |DISABLEclausula_disable][{ENABLE|DISABLE}TABLE LOCK][{ENABLE|DISABLE}ALLTRIGGERS];
Hay que tener en cuenta varios puntos:
No es posible disminuir el tamao de la calumna, si esta contiene datos En modificaciones, todos los datos tanto nuevos como viejos deben de ser
compatibles o la tabla debe de estar vacia. La opcion ADD NOT NULLsolo sera posible si la tabla esta vacia La opcion MODIFI NOT NULLsolo se podra modificazr siempre y cuando
no se tenga un valor nulo o este vacia la calumna en cuestion.
Considere el ejemploPropietario - Automvil, bajo el criterio de hacienda del Gobiernodel Estado de Veracruz, Mxico. Modificaremos el ejemplo para aadir el atributocolor.
Es factible modificar una tabla aadiendo o eliminando restricciones, en este caso para elejemplo anterior el comando a utilizar ser
ALTER TABLEtabla{ADD|DROP}CONSTRAINTrestr iccin;
ALTER TABLEautomovilDROP CONSTRAINTFK_Propietario;
ALTER TABLEautomovil ADD
CONSTRAINTFK_Propietario FOREIGN KEY(idPropietario)
REFERENCESpropietario (idPropietario)
ON DELETE CASCADE;
-
7/21/2019 Unidad 2 Pacheco
34/38
El cual permitir el borrado en cascada.Ahora veremos los comandos en:MySQL
MySQL soporta varios motores de almacenamiento que tratan con distintos tipos de tabla.Los motores de almacenamiento de MySQL incluyen algunos que tratan con tablastransaccionales y otros que no lo hacen:
MyISAMtrata tablas no transaccionales. Proporciona almacenamiento yrecuperacin de datos rpida, as como posibilidad de
bsquedasfulltext.MyISAMse soporta en todas las configuraciones MySQL, yes el motor de almacenamiento por defecto a no ser que tenga una configuracindistinta a la que viene por defecto con MySQL.
El motor de almacenamientoMEMORYproporciona tablas en memoria.El motor de
almacenamientoMERGEpermite una coleccin de tablasMyISAMidnticas sertratadas como una simple tabla. ComoMyISAM, los motores dealmacenamientoMEMORYyMERGEtratan tablas no transaccionales y ambos seincluyen en MySQL por defecto.
Nota: El motor de almacenamientoMEMORYanteriormente se conoca comoHEAP.Los motores de almacenamientoInnoDByBDBproporcionan tablastransaccionales. BDB se incluye en la distribucin binaria MySQL-Max en aquellos
sistemas operativos que la soportan.InnoDBtambin se incluye por defecto entodas las distribuciones binarias de MySQL 5.0 . En distribuciones fuente, puedeactivar o desactivar estos motores de almacenamiento configurando MySQL a su
gusto.El motor de almacenamientoEXAMPLEes un motor de almacenamiento 'tonto'que no hace nada. Puede crear tablas con este motor, pero no puede almacenar datosni recuperarlos. El objetivo es que sirva como ejemplo en el cdigo MySQL para ilustrarcmo escribir un motor de almacenamiento. Como tal, su inters primario es paradesarrolladores.
NDB Clusteres el motor de almacenamiento usado por MySQL Cluster paraimplementar tablas que se particionan en varias mquinas. Est disponible endistribuciones binarias MySQL-Max 5.0. Este motor de almacenamiento est disponiblepara linux, Solaris, y Mac OS X. Los autores mencionan que se anadir soporte para
este motor de almacenamiento en otras plataformas, incluyendo Windows en prximasversiones.
El motor de almacenamientoARCHIVEse usa para guardar grandes cantidades dedatos sin ndices con una huella muy pequea.
El motor de almacenamientoCSVguarda datos en archivos de texto usando formatode valores separados por comas.
-
7/21/2019 Unidad 2 Pacheco
35/38
El motor de almacenamientoFEDERATEDse aadi en MySQL 5.0.3. Este motorguarda datos en una base de datos remota. En esta versin slo funciona con MySQLa travs de la API MySQL C Client. En futuras versiones, ser capaz de conectar conotras fuentes de datos usando otros drivers o mtodos de conexin clientes.
La versin 5 de MySQL crea por defecto tablas innoDB que permiten el manejo deintegridad referencial, transacciones. Al igual que las tablas regulares de oracle. Parasaber si el gestor de base de datos de MySQL que tenemos las soporta es necesarioejecutar la siguiente sentencia.
SHOW VARIABLES liKE'%innodb%';
Ejecutar
Si nuestro gestor soporta por defecto las tablas innodb las sentencias para crear las
tablas previamente mostradas sern exactamente igual a las de oracle. En caso contrariose muestra la sintaxis correspondiente
CREATE TABLEf1 (
year INTEGER PRIMARY KEY,
campeon CHAR(30),
escuderia CHAR(20)
) ENGINE= InnoDB;
Ejemplo: Estados, capitales, densidad de poblacin y superficie de la RepublicaMexicana
CREATE TABLEestados (
idEstado INTEGER PRIMARY KEY,
nombreEstado CHAR(25) NOT NULL,
capital CHAR(25) NOT NULL,
densidad INTEGER NOT NULL,
poblacion INTEGER NOT NULL
) ENGINE= InnoDB;
Comando Describe
MySQL proporciona este comando que resulta til para conocer la estructura de unatabla, las columnas que la forman y su tipo y restricciones. La sintsis es lasiguienteDESCRIBEnombreTabla.
DESCRIBEf1;
Ejecutar
Comando SHOW TABLES y SHOW CREATE TABLE
http://www.prograweb.com.mx/tallerBD/ejecutables/0202ShowVariables.php?TB_iframe=true&height=375&width=500http://www.prograweb.com.mx/tallerBD/ejecutables/0202ShowVariables.php?TB_iframe=true&height=375&width=500http://www.prograweb.com.mx/tallerBD/ejecutables/0202Describe.php?TB_iframe=true&height=150&width=350http://www.prograweb.com.mx/tallerBD/ejecutables/0202Describe.php?TB_iframe=true&height=150&width=350http://www.prograweb.com.mx/tallerBD/ejecutables/0202Describe.php?TB_iframe=true&height=150&width=350http://www.prograweb.com.mx/tallerBD/ejecutables/0202ShowVariables.php?TB_iframe=true&height=375&width=500 -
7/21/2019 Unidad 2 Pacheco
36/38
El comandoSHOW TABLESmuestra las tablas dentro de una base de datosySHOW CREATE TABLESmuestra la estructura de creacin de la tabla.
Descargar
Ejecutar
Tablas temporales
Las tablas temporales solo existen mientras la sesin est viva . Si se corre este cdigoen un script de PHP ( Cualquier otro lenguaje), la tabla temporal se destruirautomticamente al termino de la ejecucin de la pgina. Si no especfica MEMORY, latabla se guardar por defecto en el disco.
CREATE TEMPORARY TABLEtemporal (
ife INTEGER(13) PRIMARY KEY,nombre CHAR(30) NOT NULL UNIQUE
);
Este tipo de tabla solo puede ser usada por el usuario que la crea.
Si creamos una tabla que tiene el mismo nombre que una existente en la base de datos,la que existe quedar oculta y trabajaremos sobre la temporal.
Tablas Memory ( Head )Se almacenan en memoria
Una tabla head no puede tener ms de 1600 camposLas tablas MEMORY usan una longitud de registro fija.
MEMORY no soporta columnas BLOB o TEXT.
MEMORY en MySQL 5.0 incluye soporte para columnas AUTO_INCREMENT e ndicesen columnas que contengan valores NULL.
Las tablas MEMORY se comparten entre todos los clientes (como cualquier otra tablano-TEMPORARY).
CREATE TEMPORARY TABLEtemporal (ife INTEGER(13) PRIMARY KEY,
nombre CHAR(30) NOT NULL UNIQUE
) ENGINE= MEMORY;
Modificacin
http://www.prograweb.com.mx/tallerBD/codigo/0202Muestra.rarhttp://www.prograweb.com.mx/tallerBD/codigo/0202Muestra.rarhttp://www.prograweb.com.mx/tallerBD/ejecutables/0202Muestra.php?TB_iframe=true&height=450&width=600http://www.prograweb.com.mx/tallerBD/ejecutables/0202Muestra.php?TB_iframe=true&height=450&width=600http://www.prograweb.com.mx/tallerBD/ejecutables/0202Muestra.php?TB_iframe=true&height=450&width=600http://www.prograweb.com.mx/tallerBD/codigo/0202Muestra.rar -
7/21/2019 Unidad 2 Pacheco
37/38
Esta operacin se puede realizar con el comandoALTER TABLE. Para usar ALTER
TABLE, necesita permisosALTER,INSERTyCREATEpara la tabla.La sintaxispara MySQL es
ALTER[IGNORE] TABLEtbl_name
alter_specification [, alter_specification] ...;
alter_specification:
ADD[COLUMN] column_definition [FIRST| AFTERcol_name ]| ADD[COLUMN] (column_definition,...)| ADD INDEX[index_name] [index_type] (index_col_name,...)| ADD[CONSTRAINT[symbol]]
PRIMARY KEY[index_type] (index_col_name,...)| ADD[CONSTRAINT[symbol]]
UNIQUE[index_name] [index_type] (index_col_name,...)| ADD[FULLTEXT|SPATIAL] [index_name] (index_col_name,...)| ADD[CONSTRAINT[symbol]]
FOREIGN KEY[index_name] (index_col_name,...)
[reference_definition]
| ALTER[COLUMN] col_name {SET DEFAULTliteral | DROP DEFAULT}| CHANGE[COLUMN] old_col_name column_definition
[FIRST|AFTERcol_name]| MODIFY[COLUMN] column_definition [FIRST| AFTERcol_name]| DROP[COLUMN] col_name| DROP PRIMARY KEY| DROP INDEXindex_name| DROP FOREIGN KEYfk_symbol| DISABLE KEYS| ENABLE KEYS| RENAME[TO] new_tbl_name|ORDER BYcol_name| CONVERT TO CHARACTER SETcharset_name [COLLATEcollation_name]| [DEFAULT] CHARACTER SETcharset_name [COLLATEcollation_name]| DISCARD TABLESPACE| IMPORT TABLESPACE
| table_options
Considere el ejemploPropietario - Automvil, bajo el criterio de hacienda del Gobierno
del Estado de Veracruz, Mxico. Modificaremos el ejemplo para aadir elatributocolorsegn la sintaxis MySQL
ALTER TABLEautomovil
ADD(color CHAR(15) NOT NULL);
-
7/21/2019 Unidad 2 Pacheco
38/38
Descargar
Ejemplo: Eliminar una llave foraneaALTER TABLEautomovilDROP FOREIGN KEYFK_Propietario;
Ejemplo: Agregar una llave foranea con borrado en cascada
ALTER TABLEautomovil ADDCONSTRAINTFK_PropietarioFOREIGN KEY(idPropietario)REFERENCESpropietario (idPropietario)ON DELETE CASCADE;
Puede ejecutar mltiples clusulasADD,ALTER,DROP, yCHANGEen un nicocomandoALTER TABLE. Esta es una extensin MySQL al estndar SQL, que permiteslo una de cada clusula por comandoALTER TABLE.
http://www.prograweb.com.mx/tallerBD/codigo/020PropAutoMySQL.rarhttp://www.prograweb.com.mx/tallerBD/codigo/020PropAutoMySQL.rar