Post on 18-Jan-2016
description
FACULTAD DE EDUCACION A DISTANCIA
PROGRAMA DE INGENIERIA DE SISTEMAS
INVESTIGACION MySQL
PROFESOR: ERICK SANG
BASES DE DATOS – GRUPO VIERNES
ORLANDO ESTEBAN LEMAITRE VARGAS
COD. 011013111064
AGOSTO 24 DE 2.012
1. INSTALACION DE MySQL.
1.1. Requisitos del S.O.
• Un sistema operativo Windows de 32 bits, tal como 9x, Me, NT, 2000, XP, o
Windows Server 2003. Se recomienda fuertemente el uso de un sistema operativo
Windows basado en NT (NT, 2000, XP, 2003) puesto que éstos permiten ejecutar
el servidor MySQL como un servicio.
• Soporte para protocolo TCP/IP.
• Una copia de la distribución binara de MySQL para Windows, que se puede
descargar de http://dev.mysql.com/downloads/. Nota: Si se descarga la distribución
a través de FTP, se recomienda el uso de un cliente FTP adecuado que posea la
característica de reanudación (resume) para evitar la corrupción de ficheros
durante el proceso de descarga.
• Una herramienta capaz de leer ficheros .zip, para descomprimir el fichero de
distribución.
• Suficiente espacio en disco rígido para descomprimir, instalar, y crear las bases de
datos de acuerdo a sus requisitos. Generalmente se recomienda un mínimo de 200
megabytes.
También podrían necesitarse los siguientes ítems opcionales:
• Si se planea conectarse al servidor MySQL a través de ODBC, se deberá contar
con un driver Connector/ODBC.
• Si se necesitan tablas con un tamaño superior a 4GB, debe instalarse
MySQL en un sistema de ficheros NTFS o posterior. Al crear las tablas no
debe olvidarse el uso de MAX_ROWS y AVG_ROW_LENGTH.
1.2. Proceso de Instalación.
Tenemos tres tipos de instalación, típica, completa y personalizada, típica y completa
son muy sencillas basta con seleccionar siguiente, siguiente, siguiente…., pero haremos
la instalación personalizada para puntualizar ciertos aspectos interesantes de la
instalación de MySQL.
Luego de seleccionar Custom (personalizada), nos pide indicar que elementos
instalaremos, por defecto instalará todo menos los “Developers Components“, son
opcionales, contienen ejemplos, scripts y algunas librerías para los más curiosos.
La carpeta de instalación por defecto es c:\Archivos de Programa\MySQL\MySQL
Server 5.1\, podemos cambiarla con el botón Change, y debes recordarla para más
adelante. Presionamos siguiente e instalar para que comience a realizar la instalación de
MySQL.
Al finalizar la instalación nos presenta la versión Entreprise que es de pago y lo hace a
modo de publicidad, presionamos siguiente para continuar.
Es momento de configurar MySQL Server como un servicio en Windows 7 y si lo
deseamos registrarnos en SunConnect para obtener noticias, novedades y notificaciones
de actualizaciones de MySQL, luego presionamos Finalizar.
Configurar y Activar Servidor MySQL en Windows
En el asistente de configuraciones podemos decidir entre una configuración detallada o
estándar. La instalación estándar agrega MySQL como un servicio Windows que se
ejecuta automáticamente al iniciar, se debe utilizar en computadoras que no tengan
instaladas MySQL.
Pero haremos la configuración detallada que por ser más precisa nos permite ahondar
más en este artículo. En este punto de la configuración nos brinda tres formas posible:
• Developer Machine Es la que vamos a utilizar nosotros como desarrolladores, ya que usaremos
MySQL más que nada para testear nuestras aplicaciones. En esta opción
MySQL Server se configura para utilizar un mínimo de recursos y memorias de
forma de dejar parte del PC disponible para usarlo en otras aplicaciones.
• Server Machine Recomendada cuando instalamos MySQL Server en un servidor donde existen
otras aplicaciones en modo Servidor, por ejemplo Aplicaciones Web que se
sirven de este mismo servidor. En este caso MySQL hace un uso intermedio de
memoria y recursos.
• Dedicated MySQL Server Machine Esta opción configura MySQL asumiendo que solo MySQL Server estará
corriendo en este servidor, no deja lugar a que corran otras aplicaciones. En esta
configuración MySQL utilizara toda la memoria y recursos disponibles.
Seleccionaremos en nuestro caso Developer Machine:
y presionamos siguiente. Ahora debemos definir el tipo de uso que se le dará a las bases
de datos.
También se presenta tres opciones, debemos seleccionar una de ellas dependiendo del
tipo de optimización que deseamos:
• Multifunctional Database Define un propósito general, es la que seleccionaremos en nuestro caso para
testing y desarrollo. Optimizara el servidor para transacciones rápidas en
InnoDB y MyISAM.
• Transactional Database Only Se optimiza para servidor de aplicaciones y aplicaciones web. Seleccionaremos
esta opción si la aplicación que consume datos de MySQL está en producción y
utiliza principalmente InnoDB, aunque también admite MyISAM aunque no lo
beneficia.
• Non-Transactional Database Only Optimo para aplicaciones web sencillas, de control o programas de análisis. Solo
se activa el modelo no-transaccional MyISAM, por tanto no admite InnoDB.
En nuestro caso seleccionaremos Multifunctional Database.
La siguiente selección es la carpeta donde se almacenaran los datos, por defecto
podemos usar una subcarpeta que se creará en el lugar de la instalación de MySQL, y
continuamos con siguiente.
La cantidad de conexiones concurrentes al servidor es lo siguiente que debemos definir,
si son hasta 20 conexiones seleccionamos Decision Support (DSS)/OLAP, en caso de
requerir hasta 500 conexiones concurrentes seleccionamos Online Transaction
Processing (OLTP), o en este caso como es para testing seleccionamos Manual
Setting, y definimos el número de conexiones usando 5 o 10 conexiones.
La configuración de red es lo siguiente que debemos definir
La configuración de red es lo siguiente que debemos definir indicando su utilizaremos
protocolo TCP/IP y el puerto, dejaremos los valores por defecto indicando el puerto
3306 y también marcando “Add firewall exception for this port” de forma de no tener
problemas con el Firewall, y presionamos siguiente.
El juego de caracteres es lo siguiente a indicar
por defecto define Standard Character Set, o latin1, también conocido como iso-
8859-1, pero la mayoría de los servidores web y aplicaciones como WordPress utilizan
por defecto UTF8 ya que soporta mejor caracteres multilenguaje, la opción es Best
Support For Multilingualism que seleccionaremos en este caso, la última opción
Manual Selected Default Character Set / Collation nos permite seleccionar
manualmente el Char Set.
Debemos indicar ahora que MySQL Server se ejecutar como un Servicio Windows
(Install As Windows Service),
indicar un nombre de servicio, que dejaremos como MySQL, y marcaremos también la
opción de incluir los archivos de ejecución de MySQL en el PATH de Windows
(Include Bin Directory in Windows PATH) y continuamos con siguiente.
En este punto debemos prestar mucha atención
ya que es donde definimos el password del administrador principal del Servidor
MySQL, o sea el usuario root. También podemos indicar si queremos que nuestras
bases de datos se accedan desde maquinas remotas con el usuario root, y continuamos
con siguiente.
hemos culminado con estos los pasos, presionamos Execute para que se termine de
Instalar y Configurar MySQL. Presionamos Finish cuando aparezca el mensaje final
de instalación.
En el menú inicio podemos ejecutar nuevamente el Asistente de Configuración de
Instancias MySQL (MySQL Server Instance Config Wizard) en caso que sea
necesario.
Ahora ya podemos utilizar MySQL desde nuestras aplicaciones PHP, .NET, y
otras.
Error 1045 o problemas con Firewall al final de la instalación
En los comentarios de este blogs y algunos foros suelen comentarme sobre un error al
final de la instalación o específicamente el error 1045. Al parecer la solución es sencilla
pero es un poco difícil de darse cuenta.
Para como error nos confunde con un mensaje nos lleva a verificar el Firewall, y como
sucede cuando vamos a configurar la instancia y nos pregunta el puerto y usuario para
MySQL, salimos corriendo a ver el Firewall.
Afortunadamente el error me sucedió ayer por primera vez, luego de cientos de veces de
instalar MySQL sin problemas, pero gracias a ese errror ahora tengo para contarles.
El error sucede cuando ya teniamos una instancia o datos en la carpeta de MySQL, ya
sea por una instalación anterior o bien la actual que fallo por X causa, lo más sencillo si
no tenemos datos o ninguna base de datos, es eliminar la carpeta DATA y luego
configurar la instancia desde cero, con eso listo solucionado el problema.
2. USO DE MySQL.
La compra de MySQL AB por parte de Sun Microsystems a comienzos de este año, es
sin lugar a dudas un reconocimiento al buen trabajo hecho por la comunidad de
MySQL, para llevar a esta base de datos a ser una de las mejores bases de datos open
source que se encuentre en el mercado, y que hoy por hoy es la base de datos predilecta
por los desarrolladores, e incluso grandes empresas como Suzuki, Sagem, o la misma
Adobe o sitios como Yahoo! Finance, para bases de datos transaccionales o bodegas de
datos (Data Warehousing).MySQL provee entre sus herramientas, una denominada
MySQL Workbench la cual nos permite desde una ambiente gráfico, diseñar un modelo
E-R de una base de datos y luego crear la base de datos, como tal en una base de datos
MySQL. Para este tutorial es necesario tener instalado:
• MySQL 5.x o superior
• MySQL Workbench 5.x.x
NOTA: En esta demo, solo se mostrará el funcionamiento de MySQL Workbench, mas
no la instalación de éste ni la de MySQL Server. El servidor mysql puede estar instalado
en cualquier equipo y/o sistema operativo soportado (Windows, Linux, Aix, etc).
MySQL Workbench solo se encuentra disponible para Windows.
En el ejemplo crearemos una base de datos muy sencilla, la cual no representa un
ejemplo real. Simplemente es para probar las características.
Primero creemos el esquema “test”, haciendo click en el símbolo “+”. Abajo se abre una
pestaña en que nos pregunta el nombre del esquema (test) y el idioma del esquema, el
cual se recomienda dejar por default como se muestra en la figura. Si la aplicación
pregunta si desean renombrar todos los objetos, seleccionen “Si”.
Ya creado el esquema, procedemos a crear las tablas. Existen dos formas, aunque muy
similares de crearlas. La primera es desde la pantalla en la que estamos, la otra es
mediante la ventana visual, en la cual podremos además, realizar las relaciones entre las
tablas. Pero primero lo primero; las tablas.
Verifica que estes en el esquema “test” y luego haz doble click en el icono de “Add
Table”.
Al hacer click en esta opción, se despliega al lado un icono representando la nueva
tabla, mientras que debajo se abre una nueva pestaña, en la cual podemos editar todo al
respecto de las tablas haciendo (Columnas, llaves, triggers, etc) click en cada una de las
pestañas ubicadas en la parte inferior de esta nueva pestaña.
Nota: los triggers solo estan disponibles a partir de MySQL 5. Cualquier tabla con
triggers generada en Workbench arrojará un error cuando se corra en una versión
inferior a MySQL 5.0
Agregaremos un par de columnas a la tabla:
Al hacer click en la pestaña “Columns”, podemos editar todas las columnas dela tabla
indicada. Podemos alterar el nombre, el tipo de dato, si es nulo o no (NN) y si es Auto
incremental (AI), obviamente este último es sólo para datos de tipo numérico, De igual
forma podemos especificar un valor por default para la columna. En la parte derecha,
inmediatamente podemos indicar si la columna seleccionada hace parte de la llave
primaria (PRIMARY KEY), si es UNSIGNED o ZEROFILL para las variables
numéricas y si la variable es de tipo caracter, podemos especificar si es BINARY.
Ahora pasemos a crear una tabla por medio de un diagrama E-R. En la parte superior
observamos la opción “Add Diagram”. Hacemos doble click sobre ella.
Luego se abre una nueva pestaña en la cual encontramos un grid. A la izquierda,
ecnontramos una barra de herramientas, desde la cual podremos crear tablas y vistas,
además de relaciones (1:1,1:n,n:m…) y a la derecha un árbol con los objetos de nuestro
esquema (tablas, vistas, etc). De esa ventana, seleccionamos la tabla que creamos y la
arrastramos hasta el grid. Luego hacemos click derecho y seleccionamos “Edit table”,
abajo nos muestra la pestaña para editar la tabla y crear columnas, llaves, etc.
Buscamos a la izquierda el ícono que nos permite crear una nueva tabla. Hacemos un
click en el ícono y luego un click en el grid.
Editamos las segunda tabla y ahora haremos una relación muchos a uno.Seleccionamos
el icono, y luego cada una de las tablas (primero la de muchos y luego la de uno). En mi
caso, la tabla de “muchos” es table1. Quedaría algo asi:
Como ven el Workbench se apega a la teoría relacional, donde en este caso la llave de a
relación “uno” pasa a la tabla de “muchos”. Igualmente si creamos una relacion M.N
(muchos a muchos) generará una relación entre las dos tablas. A continuación viene la
mejor parte de esta herramienta: la generación del script SQL.
Como ven, podemos exportar el diseño, incluso como una imagen en pdf, o en png,
entre otros. La primera pantalla, nos muestra las opciones con las que queremos que se
genere el script DDL. Luego seleccionamos la ubicacion destino del archivo que se
creará.
Luego nos muestra un resumen de lo que creará; usuarios, tablas, vistas, rutinas y
triggers. Incluso si seleccionamos el botón “Detailed Selection” de cada sección,
podemos especificar aún más, por ejemplo, qué tablas deseo realmente exportar.
Luego finalizar, y en la ruta que le hallamos indicado estará un archivo .sql, con nuestro
script. Como se podrán dar cuenta Workbench, resuelve algunas limitantes en la
comunidad open source de un buen software front-end para MySQL, y sobre todo de
una herramienta que provea Forward Engineering, de una manera tan sencilla y bien
ilustrada. Digamos que la única limitante de Worlbench es su ausencia en otras
plataformas, o sea, en Linux :p.
****************************************************