My SQL

27
MySQL Oscar Martin Cortez Martinez

description

Tutorial de instalacion de My SQL

Transcript of My SQL

Page 1: My SQL

MySQL

Oscar Martin Cortez Martinez

Page 2: My SQL

¿Que es MySQL?

• MySQL es un software de código abierto, licenciado bajo la GPL de la GNU, aunque MySQL AB distribuye una versión comercial, en lo único que se diferencia de la versión libre, es en el soporte técnico que se ofrece, y la posibilidad de integrar este gestor en un software propietario, ya que de otra manera, se vulneraría la licencia GPL.

Page 3: My SQL

Caracteristicas Actuales

• Uso de transacciones ACID (Atomic, Consistent Isolated, Durable): Para construir aplicaciones más seguras mediante commit, rollback, crash recovery y bloqueo por registro.

• Store Procedures: Para mejorar la programación.• Triggers: Para mejorar las reglas del negocio.• Vistas: Para que la información sensible sea más segura.• Information Schema: Para un fácil acceso a los metadatos.• Transacciones Distribuidas(XA): Para soportar transacciones

entre múltiples ambientes de bases de datos

Page 4: My SQL

Proceso de instalacion

• 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.

Page 5: My SQL

• por defecto instalará todo menos los “Developers Components“, son opcionales, contienen ejemplos, scripts y algunas librerías para los más curiosos.

Page 6: My SQL

• 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 deMySQL, luego presionamos Finalizar.

Page 7: My SQL

• 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.

Page 8: My SQL
Page 9: My SQL

• Developer MachineEs 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 MachineRecomendada 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 MachineEsta 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.

Page 10: My SQL
Page 11: My SQL

• Multifunctional DatabaseDefine 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 OnlySe 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 OnlyOptimo para aplicaciones web sencillas, de control o programas de análisis. Solo se activa el modelo no-transaccional MyISAM, por tanto no admite InnoDB.

Page 12: My SQL
Page 13: My SQL

• 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.

Page 14: My SQL

• La configuración de red es lo siguiente que debemos definir indicando su utilizaremos protocoloTCP/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.

Page 15: My SQL

• 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.

Page 16: My SQL

• indicar un nombre de servicio, que dejaremos como MySQL, y marcaremos también la opción deincluir los archivos de ejecución de MySQL en el PATH de Windows (Include Bin Directory in Windows PATH) y continuamos con siguiente.

Page 17: My SQL
Page 18: My SQL
Page 19: My SQL

Conectividad

• ConnectionString = "DRIVER={MySQL ODBC 3.51Driver};SERVER=localhost;DATABASE=cursosfundecor;UID=root;PWD=t0n0t0n0;OPTION=16427"

Page 20: My SQL

• 'Lo primero que deberemos hacer es crear las siguientes variables: • Public conn As New ADODB.Connection 'Variable que conectará con la base de datos • Public rs As New ADODB.Recordset 'Variable donde se guardarán todas las consultas • • 'Lo siguiente que debemos hacer es poner la cadena de conexión a la variable • 'conn, para así conectarnos con la base de datos MySQL • conn.ConnectionString = "Driver={MySQL ODBC 3.51 • Driver};Server=servidor;Database=nombre_bbdd; • User=user;Password=pwd;Option=3;" • conn.Open 'Abrimos la conexión • • 'La variable ADODB.Recordset se encargará de ejecutar la consulta • 'Primero comprobamos que el recordset no esté abierto con otra consulta, • 'si está abierto, lo cerramos • If (rs.State <> adStateClosed) Then • rs.Close • End If • rs.ActiveConnection = conn 'Asignamos la conexión de la BBDD • rs.Open ("select * from table") 'Generamos la consulta • • 'Para acceder a la información generado deberemos hacer lo siguiente: • 'Comprobamos que la consulta a generado algún resultado con EndOfFile • if (Not rs.EOF){ • MsgBox (rs(0).value) 'Accedemos y mostramos la información del primer campo • }

Page 21: My SQL

Herramientas Gráficas

• MySQL Workbench• MySQL Query Browser• MySQL Administrator• MySQL Migration Toolkit

Page 22: My SQL

Drivers

• MySQL Native C Library• MySQL Drivers for ODBC, JDBC, .Net• Community Drivers for PHP, Perl, Python,

Ruby, etc• MySQL Connector/MXJ for deployment as a

JMX MBean

Page 23: My SQL

Tipos De Tablas

• ISAM: es el formato de almacenaje mas antiguo, presentaba limitaciones, exportación de ficheros entre maquinas de distintas arquitecturas o que no podia usar mayores de 4 GigaBytes

Page 24: My SQL

• MYISAM: es el tipo de tabla por defecto en MySQL, permite ficheros de tamaños mayores que las ISAM

• INNODB: InnoDB provee a MySQL con el soporte para trabajar con transacciones, además de hacer un mejor bloqueo de registros para las instrucciones SELECT muy parecido al usado por Oracle, con lo que incrementa el rendimiento y la concurrencia en ambientes multiusuario, por otro lado, InnoDB es el único formato que tiene MySQL para soportar llaves foráneas (FOREING KEY)

Page 25: My SQL

• HEAP: Tablas en memoria. Son temporales y desaparecen cuando el servidor se cierra, a diferencia de una tabla TEMPORARY, que solo puede ser accedida por el usuario que la crea, una tabla HEAP puede ser utilizada por diversos usuarios.

• BDB: Base de datos Berkeley. TST(Transactions safe tables). Solo en MySQL

Page 26: My SQL

• MAX: Este tipo de tablas permite la realización de transacciones.Estas tablas necesitan de una clave primaria en cada tabla.

• El TST: 'Transactions safe tables', o tablas para transacciones seguras. Son menos rápidas y ocupan mas memoria, pero a cambio ofrecen mayor seguridad frente a fallos durante la consulta.

Page 27: My SQL

Tabla de comparación entre MySQL y SQL Server

Característica MySQL SQL Server Express SQL Server

Costo Libre y de pago Libre De pagoOpen Source Si No No

PlataformasLinux,Windows y muchas otras

Sólo Windows Sólo Windows

Limite de tamaño de la base de datos

Limitado por el sistema operativo

10GbLimitado por el sistema operativo

Compatibilidad ACIDDepende del motor de almacenamiento

Si Si

Transacciones Si Si Si

Servicio de reportes No Si Si

Posibilidad de elegir diferentes formas de almacenamiento

Si No No

Claves Foráneas Depende del motor Si SiVistas Si Si SiProcedimientos almacenados

Si Si Si

Triggers Si Si SiCursores Si Si SiSubconsultas Si Si SiReplicación Si Limitado Si

Funciones definidas por el usuario (UDF)

Si Si Si