Guía de MySQL: Instalación, Consultas y Buenas Prácticas

MySQL es un sistema de gestión de bases de datos relacional de código abierto, ampliamente adoptado en proyectos de todos los tamaños. A continuación, se presentan conceptos fundamentales y operaciones esenciales para trabajar con esta herramienta.

Instalación y puesta en marcha

  • Instalación: Descarga el paquete correspondiente a tu sistema operativo (Windows, macOS o Linux) desde el sitio oficial y sigue las instrucciones del instalador.
  • Inicio del servicio: Puedes activar MySQL desde la línea de comandos o mediante el administrador de servicios del sistema.

Operaciones básicas

1. Conexión al servidor

mysql -u usuario -p

Tras ingresar la contraseña, se establece la conexión con el servidor MySQL.

2. Listar bases de datos

SHOW DATABASES;

3. Crear una base de datos

CREATE DATABASE nombre_base_datos;

4. Seleccionar una base de datos

USE nombre_base_datos;

5. Crear una tabla

CREATE TABLE nombre_tabla (
    columna1 tipo_dato,
    columna2 tipo_dato,
    ...
);

6. Insertar registros

INSERT INTO nombre_tabla (columna1, columna2, ...) VALUES (valor1, valor2, ...);

7. Consultar datos

SELECT columna1, columna2, ... FROM nombre_tabla WHERE condicion;

8. Actualizar registros

UPDATE nombre_tabla SET columna1 = nuevo_valor1, columna2 = nuevo_valor2, ... WHERE condicion;

9. Eliminar registros

DELETE FROM nombre_tabla WHERE condicion;

10. Eliminar una tabla

DROP TABLE nombre_tabla;

11. Eliminar una base de datos

DROP DATABASE nombre_base_datos;

Funcionalidades avanzadas

1. Índices

Los índices aceleran la recuperación de datos.

CREATE INDEX nombre_indice ON nombre_tabla (nombre_columna);

2. Vistas

Una vista es una tabla virtual generada a partir de una consulta SQL.

CREATE VIEW nombre_vista AS SELECT columna1, columna2, ... FROM nombre_tabla WHERE condicion;

3. Procedimientos almacenados

Son bloques de código SQL precompilados que se ejecutan bajo demanda.

DELIMITER //
CREATE PROCEDURE nombre_procedimiento()
BEGIN
    sentencias_sql;
END //
DELIMITER ;

4. Disparadores (Triggers)

Se activan automáticamente ante ciertos eventos en la base de datos.

CREATE TRIGGER nombre_trigger BEFORE INSERT ON nombre_tabla FOR EACH ROW
BEGIN
    sentencias_sql;
END;

Consejos de optimización

  • Análisis de consultas: Emplea EXPLAIN para revisar el plan de ejecución y detectar cuellos de botella.
  • Uso de índices: Prioriza su aplicación en columnas usadas en cláusulas WHERE o JOIN para evitar escaneos completos de tabla.
  • Diseño normalizado: Reduce la redundancia aplicando formas normales (1NF, 2NF, 3NF) según las necesidades del proyecto.
  • Tipos de datos adecuados: Asigna tipos (INT, VARCHAR, etc.) que se ajusten al volumen real de información para ahorrar espacio.
  • Ajustes de configuración: Modifica parámetros como innodb_buffer_pool_size o max_connections según los recursos del servidor.

Seguridad

1. Gestión de usuarios

Crea usuarios y asigna permisos específicos para limitar el acceso.

CREATE USER 'usuario'@'host' IDENTIFIED BY 'contraseña';
GRANT privilegios ON nombre_base_datos.* TO 'usuario'@'host';
FLUSH PRIVILEGES;

2. Cifrado de datos

  • Activa SSL/TLS para proteger la comunicación entre cliente y servidor.
  • Almacena información sensible (contraseñas, datos personales) utilizando funciones de hashing o cifrado como AES_ENCRYPT.

Etiquetas: MySQL SQL bases de datos relacionales instalación MySQL consultas SQL

Publicado el 7-19 22:52