MySQL es
el servidor de bases de datos relacionales más popular, desarrollado y
proporcionado por MySQL AB. MySQL AB es una empresa cuyo negocio consiste en
proporcionar servicios en torno al servidor de bases de datos MySQL.El
servidor MySQL fue desarrollado originalmente para manejar grandes bases de
datos mucho más rápido que las soluciones existentes y ha estado siendo usado
exitosamente en ambientes de producción sumamente exigentes por varios años.
Aunque se encuentra en desarrollo constante, el servidor MySQL ofrece hoy un
conjunto rico y útil de funciones. Su conectividad, velocidad, y seguridad
hacen de MySQL un servidor bastante apropiado para acceder a bases de datos en
Internet.
Caption: : La parte SQL de "MySQL" significa "Lenguaje Estructurado de Consulta", y es el lenguaje más usado y estandarizado para acceder a bases de datos relacionales.
Slide 2
Estos son algunos comandos útiles usados por MySQL para manejar bases de datos. Es un
listado básico donde no hay mucha explicación. Simplemente es una guia para
comenzar a trabajar con la base de datos Mysql.
Obtener información sobre la Base de Datos MySQL:
show
databases; – Listar todas las bases de datos.
connect
[database]; – Conectarse a esa base de datos.
show
tables; – Listar todas las tablas de una base de datos.
show
table status; – Muestra información sobre las tablas de la base de datos.
describe
[table]; – Muestra la estructura de una tabla de la base de datos.
Manejo de datos MySQL:
drop table [table]; – Elimina la tabla,
incluyendo registros y estructura.
drop table if exists [table]; – Elimina
la tabla de la base de datos, pero antes verifica que exista.
truncate table [table]; – Elimina los
registros, pero mantiene la esrtuctura de la tabla.
rename table [table] to [nuevo nombre
de tabla]; – Renombra una tabla de la base de datos.
Algunos comandos útiles para consultas MySQL:
select * from [table] limit [numero]; –
Muestra los registros desde el 1 hasta [numero].
Instrucciones básicas para Bases de Datos MySQL
Base de datos MySQL en consola:
$ mysqladmin -u -p create – crear base
de datos.
$ mysqladmin -u -p drop – borrar la
base de datos.
$ mysqladmin -u root -p proc – listar
procesos en ejecución en el servidor de bases de datos Mysql.
$ mysqladmin -u root -p -i 5 status –
verificar status cada 5 segundos.
$ mysqldump –opt -u -h -p >
/path/to/file – Exportar base de datos a un archivo.
$ mysqldump –opt -u -h –all-databases
-p > /path/to/file – Exportar TODAS las bases de datos a un archivo.
$ mysql -h -u -p
$ mysqlcheck -o -u root -p
–all-databases – Optimizar las bases de datos mysql.
Verificación y reparación de bases de datos erróneas:
check table [table]; – Verificar la
tabla.
repair table [table]; – Reparar la
tabla rota.
Slide 3
TIPOS DE DATOS EN MySQL
Después de la fase de diseño de una base de datos,
y una vez se ha realizado el paso a tablas del mismo, en necesario crear las
tablas correspondientes dentro de la base de datos. Para cada campo de cada una
de las tablas, es necesario determinar el tipo de datos que contiene, para de
esa forma ajustar el diseño de la base de datos, y conseguir un almacenamiento
óptimo con la menor utilización de espacio. El presente artículo describe cada
uno de los tipos de datos que puede tener un campo en Mysql, para la versión
4.xx.xx.
Los tipos de datos que puede haber en un campo,
se pueden agrupar en tres grandes grupos:
Tipos
numéricos
Tipos de
Fecha
Tipos de
Cadena
Slide 4
1. Tipos numéricos:
Existen tipos de datos numéricos, que se pueden dividir
en dos grandes grupos, los que están en coma flotante (con decimales) y los que
no.
TinyInt: es
un número entero con o sin signo. Con signo el rango de valores válidos va
desde -128 a 127. Sin signo, el rango de valores es de 0 a 255
Bit ó Bool: un número entero que puede ser 0 ó 1
SmallInt: número
entero con o sin signo. Con signo el rango de valores va desde -32768 a 32767.
Sin signo, el rango de valores es de 0 a 65535.
MediumInt: número entero con o sin signo. Con signo el rango de valores va
desde -8.388.608 a 8.388.607. Sin signo el rango va desde 0 a16777215.
Integer, Int: número entero con o sin signo. Con signo el rango de valores va
desde -2147483648 a 2147483647. Sin signo el rango va desde 0 a
429.4967.295
BigInt: número
entero con o sin signo. Con signo el rango de valores va desde
-9.223.372.036.854.775.808 a 9.223.372.036.854.775.807. Sin signo el rango va
desde 0 a 18.446.744.073.709.551.615.
Float: número
pequeño en coma flotante de precisión simple. Los valores válidos van desde
-3.402823466E+38 a -1.175494351E-38, 0 y desde 1.175494351E-38 a
3.402823466E+38.
xReal, Double: número en coma flotante de precisión doble. Los valores permitidos
van desde -1.7976931348623157E+308 a -2.2250738585072014E-308, 0 y desde
2.2250738585072014E-308 a 1.7976931348623157E+308
Decimal, Dec, Numeric: Número en coma flotante desempaquetado. El
número se almacena como una cadena.
Slide 5
2. Tipos de fecha:
A la hora de almacenar fechas, hay que tener en
cuenta que Mysql no comprueba de una manera estricta si una fecha es válida o
no. Simplemente comprueba que el mes está comprendido entre 0 y 12 y que el día está comprendido entre 0 y 31.
Date: tipo
fecha, almacena una fecha. El rango de valores va desde el 1 de enero del 1001
al 31 de diciembre de 9999. El formato de almacenamiento es de año-mes-día
DateTime: Combinación
de fecha y hora. El rango de valores va desde el 1 de enero del 1001 a las 0
horas, 0 minutos y 0 segundos al 31 de diciembre del 9999 a las 23 horas, 59
minutos y 59 segundos. El formato de almacenamiento es de año-mes-día
horas:minutos:segundos
TimeStamp: Combinación de fecha y hora. El rango va desde el 1 de enero de
1970 al año 2037. El formato de almacenamiento depende del tamaño del
campo.
Slide 6
3. Tipos de cadena:
Char(n): almacena
una cadena de longitud fija. La cadena podrá contener desde 0 a 255
caracteres.
VarChar(n): almacena una cadena de longitud variable. La cadena podrá contener
desde 0 a 255 caracteres.
Dentro de los tipos de cadena se pueden
distinguir otros dos subtipos, los tipo Test y los tipo BLOB (Binary large
Object).
La diferencia entre un tipo y otro es el
tratamiento que reciben a la hora de realizar ordenamientos y comparaciones.
Mientras que el tipo test se ordena sin tener en cuenta las Mayúsculas y las
minúsculas, el tipo BLOB se ordena teniéndolas en cuenta.
Los tipos BLOB se utilizan para almacenar datos
binarios como pueden ser ficheros.
TinyText y TinyBlob: Columna con una longitud máxima de 255 caracteres.
Blob y Text: un texto con un máximo de 65535 caracteres.
MediumBlob y MediumText: un texto con un máximo de 16.777.215
caracteres.
LongBlob y LongText: un texto con un máximo de caracteres 4.294.967.295.
Hay que tener en cuenta que debido a los protocolos de comunicación los
paquetes pueden tener un máximo de 16 Mb.
Enum: campo
que puede tener un único valor de una lista que se especifica. El tipo Enum
acepta hasta 65535 valores distintos
Set: un
campo que puede contener ninguno, uno o varios valores de una lista. La lista
puede tener un máximo de 64 valores.