2. ¿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.
3. 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
4. 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.
5. • por defecto
instalará todo
menos los
“Developers
Components“,
son opcionales,
contienen
ejemplos,
scripts y
algunas
librerías para
los más
curiosos.
6. • 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.
7. • La instalación
estándar agrega
MySQL como un
servicio
Windows que se
ejecuta
automáticament
e al iniciar, se
debe utilizar en
computadoras
que no tengan
instaladas
MySQL.
8.
9. • 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.
10.
11. • 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.
12.
13. • La cantidad de
conexiones
concurrentes al
servidor es lo siguiente
que debemos definir,
si son hasta 20
conexiones
seleccionamos Decisio
n 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.
14. • 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.
15. • 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.
16. • 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.
20. • '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
• }
22. 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
23. 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
24. • 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)
25. • 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
26. • 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.
27. Tabla de comparación entre MySQL y SQL Server
Característica MySQL SQL Server Express SQL Server
Costo Libre y de pago Libre De pago
Open Source Si No No
Plataformas
Linux,Windows y muchas
otras
Sólo Windows Sólo Windows
Limite de tamaño de la
base de datos
Limitado por el sistema
operativo
10Gb
Limitado por el sistema
operativo
Compatibilidad ACID
Depende 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 Si
Vistas Si Si Si
Procedimientos
almacenados
Si Si Si
Triggers Si Si Si
Cursores Si Si Si
Subconsultas Si Si Si
Replicación Si Limitado Si
Funciones definidas por
el usuario (UDF)
Si Si Si