Heinsohn Privacidad y Ciberseguridad para el sector educativo
MySQL. Tutorial Básico
1. MySQL
1. TUTORIAL BASICO
Josu Orbe
Dpto. Electrónica y Comunicaciones
POLITEKNIKA IKASTEGIA TXORIERRI S.Coop
Rev. 2017 Azaroa
2. MySQL - 1. TUTORIAL BASICO
INTRODUCCIÓN (1):
MySQL es un sistema de gestión de bases de datos relacional desarrollado bajo licencia dual
GPL/Licencia comercial por Oracle Corporation y está considerada como la base datos open source
más popular del mundo, sobre todo para entornos de desarrollo web.
Tradicionalmente se considera uno de los cuatro componentes de la pila de desarrollo LAMP y
WAMP.
MySQL es usado por grandes y conocidos sitios web como: Wikipedia, Google, Facebook,Twitter,
Flickr, YouTube…
También se usa como sistema de bases de datos de los más famosos CMSs como Wordpress,
Joomla, Drupal e incluso en Moodle.
Casi todas las aplicaciones web desarrolladas en lenguaje PHP que requieran de base de datos,
utilizan MySQL.
3. MySQL - 1. TUTORIAL BASICO
INTRODUCCIÓN (2):
Una base de datos está compuesta por tablas. Las tablas a su vez contienen registros que son los
espacios donde se guardan los datos de una determinada referencia. Esos datos suelen ser relativos
a diferentes conceptos que toman el nombre de campos. Es entos campos donde se almacenan los
datos que pueden ser de diferentes tipos: texto, números,... En la figura se muestra el ejemplo de
una tabla.
DNI NOMBRE APELLIDO FECHA
14555555 Iker Sopeña 1/3/2000
37000444 Miren Garcia 17/5/2001
59010101 Irene Etxebarria 22/1/1999
Campos
Registros
4. MySQL - 1. TUTORIAL BASICO
INSTALACIÓN Y EJECUCIÓN DEL SERVIDOR DE MySQL
Para la instalación del servidor y el cliente de MySQL, debemos instalar los paquetes mysql-server,
mysql-common y mysql-client mediante apt-get.
$ sudo apt-get install mysql-server mysql-common
Durante la instalación se nos pedirá una contraseña para el usuario “root” de MySQL.
El servidor de datos MySQL, al igual que todos los servicios en GNU/Linux de la familia de Debian,
dispone de un script de arranque y parada en la carpeta /etc/init.d
Para iniciar o reiniciar el servidor mysql: $ sudo /etc/init.d/mysql restart
Para parar el servidor mysql: $ sudo /etc/init.d/mysql stop
5. MySQL - 1. TUTORIAL BASICO
INSTALACIÓN Y EJECUCIÓN DEL CLIENTE DE MySQL (1)
Para la instalación de la aplicación cliente de MySQL, debemos instalar mysql-client mediante
apt-get. Esta aplicación se puede instalar en el propio servidor o en otra máquina que tenga acceso
por red al servidor.
$ sudo apt-get install mysql-client
Para iniciar el cliente MySQL ejecutaremos el comando...
$ mysql -h <IP/nombre servidor> -u <usuario> -p
En este caso estamos suponiendo que queremos conectarnos a un servidor remoto donde se está
ejecutando el gestor de base de datos con el usuario indicado.
6. INSTALACIÓN Y EJECUCIÓN DEL CLIENTE DE MySQL (2)
En el caso de la figura siguiente estamos iniciando sesión en el propio servidor a través del mismo
cliente.
MySQL - 1. TUTORIAL BASICO
7. INSTALACIÓN Y EJECUCIÓN DEL CLIENTE DE MySQL (3)
Una vez que hemos accedido al cliente MySQL y conectado con el gstor de base de datos, el prompt
del sistema habrá cambiado, mostrando ahora:
mysql>
A la espera de que sean introducidos los comandos correspondientes.
Para salir del cliente MySQL basta con teclear exit, quit o a combinación de teclas CONTROL+D.
MySQL - 1. TUTORIAL BASICO
8. SINTAXIS DE COMANDOS. ALGUNOS EJEMPLOS. (1)
Algunas notas sobre los comandos MySQL:
● Un comando normalmente consiste de un sentencia SQL seguida por un punto y coma.
● Tras la ejecucion de un comando por parte del servidor, se nos muestran los resultados y
regresa el prompt indicando que está listo para recibir más comandos o consultas.
● MySQL muestra los resultados de la consulta como una tabla (filas y columnas). La primera fila
contiene etiquetas para las columnas. Las filas siguientes muestran los resultados de la
consulta. Normalmente las etiquetas de las columnas son los nombres de los campos de las
tablas que estamos usando en alguna consulta. Si lo que estamos recuperando es el valor de
una expresión (como en el ejemplo anterior) las etiquetas en las columnas son la expresión en
sí.
● MySQL muestra cuántas filas fueron regresadas y cuánto tiempo tardó en ejecutarse la
consulta, lo cual puede darnos una idea de la eficiencia del servidor,
● Los comandos y consultas pueden ser escritas usando mayúsculas y minúsculas
MySQL - 1. TUTORIAL BASICO
9. SINTAXIS DE COMANDOS. ALGUNOS EJEMPLOS. (2)
Veamos algunos ejemplos:
Este comando nos muestra la versión de MySQL y la hora del sistema.
Hay que fijarse cómo el comando enlaza dos variables mediante la coma y se finaliza con el signo de
punto y coma.
Nos muestra los resultados y el sistema vuelve al prompt de MySQL a la espera de otro comando.
MySQL - 1. TUTORIAL BASICO
10. SINTAXIS DE COMANDOS. ALGUNOS EJEMPLOS. (3)
En este comando se han unido dos comandos (separados por punto y coma) en la misma línea.
MySQL - 1. TUTORIAL BASICO
11. SINTAXIS DE COMANDOS. ALGUNOS EJEMPLOS. (4)
Un comando se puede escribir en más de una línea pero no se ejecutará hasta añadir el punto y
coma seguido de <ENTER>
MySQL - 1. TUTORIAL BASICO
12. COMO VER LAS BASES DE DATOS EXISTENTES.
Para ver las bases de datos existentes en el servidor usamos el comando
SHOW DATABASES;
Según la salida del comando en nuestro servidor tenemos tres bases de datos.
MySQL - 1. TUTORIAL BASICO
13. COMO CREAR UNA BASE DE DATOS.
Para crear una base de datos usamos el comando
CREATE DATABASE <nombre_basedatos>;
En el ejemplo hemos creado la base de datos athletic y luego hemos comprobado el correcto
funcionamiento del comando.
MySQL - 1. INTRODUCCIÓN
14. COMO USAR UNA BASE DE DATOS EXISTENTE.
Cuando accedemos a un servidor de bases de datos MySQL no tenemos porque tener asignada una
base de datos para su uso. Para poder administrar una base de datos debemos acceder a ella
mediante el comando
USE <nombre_basedatos>;
En el caso del ejemplo anterior si queremos administrar la base de datos athletic usaremos el
comando
USE athletic;
En sistemas basados en servidores con GNU/Linux hay que tener cuidado con los nombres de las
bases de datos pues estos sistemas son sensibles a mayúsculas y minúsculas.
MySQL - 1. TUTORIAL BASICO
15. COMO PROTEGER UNA BASE DE DATOS.
Cuando el administrador del sistema crea una base de datos puede ser modificada por cualquier
usuario que tenga acceso a la misma. por esa razón es recomendable protegerla mediante el
comando
GRANT ALL on <nombre_basedatos>.* TO Usuario@Computadora
-> IDENTIFIED BY 'Contraseña';
Donde:
● Usuario es el nombre del usuario de MySql al que se le quieren dar permisos.
● Computadora es la IP del servidor de bases de datos.
● Contraseña es la clave del Usuario para MySql (No confundir con la clave que pueda tener
para acceder al sistema)
MySQL - 1. TUTORIAL BASICO
16. COMO CREAR UNA TABLA.
Para crear una tabla como la mostrada en la página 3 ejecutaríamos el comando
CREATE TABLE <nombre_tabla> ( DNI CHAR(8), NOMBRE VARCHAR(20),
-> APELLIDO VARCHAR(20), FECHA DATE);
Donde podemos ver distintos tipos de campos:
● Varchar es un tipo de dato de longitud variable de entre 1 y 255 caracteres.
● Char es un tipo de dato de longitud fija la IP del servidor de bases de datos.
● Date es un tipo específico para fechas
Para ver la estructura de la tabla creada usaremos el comando
DESCRIBE <nombre_tabla> ;
MySQL - 1. TUTORIAL BASICO
17. COMO INTRODUCIR DATOS EN UNA TABLA (1).
Tenemos dos formas de introducir datos en una tabla de una base de datos:
● De manera manual, registro a registro.
● Importanto los datos desde un fichero de texto.
MySQL - 1. TUTORIAL BASICO
18. COMO INTRODUCIR DATOS EN UNA TABLA (2).
Introducción de datos de manera manual.
Usaremos el comando
INSERT INTO <nombre_tabla>
-> VALUES ('Valor1',NULL,'Valor3',......,'ValorN');
Notense algunas cuestiones importantes:
● Los valores de los campos deben presentarse según el orden de campos de la tabla y van
encerrados entre comilla simple
● Si no conocemos el valor de un campo podemos hacer uso del valor NULL (sin comillas)
MySQL - 1. TUTORIAL BASICO
19. COMO INTRODUCIR DATOS EN UNA TABLA (3).
Importación de datos desde de un fichero de texto.
Usaremos el comando
LOAD DATA LOCAL INFILE "fichero.txt" INTO TABLE <nombre_tabla>;
Notense algunas cuestiones importantes:
● El fichero de texto debe situarse en el directorio del servidor en el que se ha iniciado MySql.
● Por defecto el tabulador es el separador de columnas (campos), y el salto de línea es el
separador de registros y el ficherotxt deberá ser creado de esa forma.
● Para incluir campos vacios (NULL) especificaremos la secuencia de caracteres N
MySQL - 1. TUTORIAL BASICO
20. COMO VISUALIZAR LOS DATOS DE UNA TABLA (1).
Para recuperar los datos de una tabla usaremos el comando SELECT cuya sintaxis de forma general
es:
SELECT <valor> FROM <nombre_tabla> WHERE <condición>
En la <condicion> el valor a buscar debe ir entre comillas simples, por ejemplo: NOMBRE=’Josu’
Tenemos diferentes opciones que veremos a continuación:
● Visualizar todos los datos de una tabla.
● Visualizar solo unos determinados registros.
● Visualizar solo determinados campos.
MySQL - 1. TUTORIAL BASICO
21. MySQL - 1. TUTORIAL BASICO
COMO VISUALIZAR LOS DATOS DE UNA TABLA (2).
Visualizar todos los datos de una tabla.
Usaremos el comando
SELECT * FROM <nombre_tabla>;
Esta instrucción es interesante para asegurarnos de que en la tabla están todos los registros
esperados después de la carga de un archivo.
22. MySQL - 1. TUTORIAL BASICO
COMO VISUALIZAR LOS DATOS DE UNA TABLA (3).
Visualizar solo determinados registros de una tabla.
Usaremos el comando
SELECT * FROM <nombre_tabla> WHERE <campo>="Valor"
Esta instrucción es interesante para verificar un cambio en un registro.
Se pueden especificar condiciones de búsqueda sobre cualquier campo. Además estas búsquedas
no son sensitivas respecto a mayúsculas o minúsculas.
Se pueden combinar condiciones de búsqueda mediante operaciones lógicas (mayor o menor que,
AND, OR,...)
23. MySQL - 1. TUTORIAL BASICO
COMO VISUALIZAR LOS DATOS DE UNA TABLA (4).
Visualizar solo determinados campos de una tabla.
Usaremos el comando
SELECT <campo1>, <campo2>,...<campon>* FROM <nombre_tabla> WHERE <campo>="Valor"
Esta instrucción es interesante para verificar un cambio en un registro.
Puede darse el caso de que la respuesta de una consulta muestre los valores del campo
correspondiente más de una vez. Para evitarlo usaremos la palabra clave DISTINC.
SELECT DISTINC <campo>* FROM <nombre_tabla>
24. MySQL - 1. TUTORIAL BASICO
COMO MOSTRAR LOS DATOS DE UN REGISTRO ORDENADOS.
Normalmente los valores que se muestran tras una orden SELECT no van ordenados. Sin embargo,
frecuentemente es más fácil examinar la salida de una consulta cuando las filas se muestran
ordenadas
Para ello usaremos el siguiente comando:
SELECT <campo1>, <campo2>,...<campon> FROM <nombre_tabla> ORDER BY <campo>;
Para ordenar en orden inverso, debemos agregar la palabra clave DESC al nombre de la columna
que estamos usando en el ordenamiento:
SELECT <campo1>, <campo2>,...<campon> FROM <nombre_tabla> ORDER BY <campo> DESC;
25. MySQL - 1. TUTORIAL BASICO
COMO MODIFICAR LOS DATOS DE UNA TABLA.
Para modificar los datos de algún registro de una tabla usaremos el siguiente comando:
UPDATE <nombre_tabla> SET <campo>="Valor_a_cambiar" WHERE <campo>="Valor";
26. MySQL - 1. TUTORIAL BASICO
COMO ELIMINAR LOS DATOS DE UNA TABLA.
Para eliminar todos los datos de una tabla usaremos el siguiente comando:
DELETE FROM <nombre_tabla>
Para eliminar un registro determinado usaremos el siguiente comando:
DELETE FROM <nombre_tabla> WHERE <campo>="Valor"
27. ERREFERENTZIAK:
● Wikipedia: https://es.wikipedia.org/wiki/MySQL
● Instalación y Configuración:
http://www.ite.educacion.es/formacion/materiales/85/cd/linux/m5/instalacin_y_configuracin_de_
mysql.html
● Tutorial básico: http://programacion.net/articulo/tutorial_basico_de_mysql_189
MySQL - 1. TUTORIAL BASICO
Lan hau Creative Commons Aitortu - Partekatu Berdin 4.0 Nazioartekoa Baimen baten mende dago.