> For the complete documentation index, see [llms.txt](https://sh4rpm1nd.gitbook.io/blog/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://sh4rpm1nd.gitbook.io/blog/software/mysql.md).

# MySQL

<figure><img src="https://3392123583-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FF3lO603vs49iK8czzdpG%2Fuploads%2FOtcQcP6y867yEXedOYoH%2Fmysql.png?alt=media&amp;token=6e3d7728-e8ad-4238-bab3-6af65c14c939" alt=""><figcaption></figcaption></figure>

## Definición de MySQL

**MySQL es un sistema de gestión de bases de datos relacionales (SGBDR) de código abierto desarrollado por Oracle Corporation.** Se caracteriza por su facilidad de uso, alta velocidad y escalabilidad, lo que lo convierte en una opción popular para una amplia gama de aplicaciones, desde sitios web y aplicaciones web hasta empresas y organizaciones.

**MySQL se basa en el modelo relacional de datos**, lo que significa que organiza la información en tablas que se relacionan entre sí. Esto permite un acceso eficiente y flexible a los datos, lo que es esencial para muchas aplicaciones.

**MySQL ofrece una amplia gama de características**, incluyendo:

* **Soporte para múltiples plataformas**: Windows, Linux, macOS y otras.
* **Alto rendimiento**: capaz de manejar grandes cantidades de datos y transacciones.
* **Escalabilidad**: se puede adaptar a las necesidades de pequeñas y grandes empresas.
* **Seguridad**: ofrece una variedad de características de seguridad para proteger los datos.
* **Facilidad de uso**: ofrece una interfaz gráfica de usuario intuitiva y un lenguaje de consulta SQL fácil de aprender.

## Comandos básicos de MySQL:

**Conexión a MySQL:**

* `mysql -u usuario -p contraseña`
* `mysql -h host -u usuario -p contraseña`

**Creación de bases de datos:**

* `CREATE DATABASE nombre_base_de_datos;`

**Selección de bases de datos:**

* `USE nombre_base_de_datos;`

**Creación de tablas:**

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

**Inserción de datos:**

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

**Selección de datos:**

* `SELECT * FROM nombre_tabla;`
* `SELECT columna1, columna2 FROM nombre_tabla;`
* `SELECT * FROM nombre_tabla WHERE condicion;`

**Actualización de datos:**

* `UPDATE nombre_tabla SET columna1 = valor1, columna2 = valor2 WHERE condicion;`

**Eliminación de datos:**

* `DELETE FROM nombre_tabla WHERE condicion;`

**Otros comandos:**

* `SHOW DATABASES;`
* `SHOW TABLES;`
* `DESCRIBE nombre_tabla;`
* `DROP DATABASE nombre_base_de_datos;`
* `DROP TABLE nombre_tabla;`

## **Recursos adicionales**

* **Documentación oficial de MySQL:** <https://dev.mysql.com/doc/>
* **Tutoriales de MySQL:** <https://www.w3schools.com/sql/default.asp>
* **Hoja de referencia de MySQL:** <https://dev.mysql.com/doc/refman/8.0/en/>
