Tutorial MySQL

MySQL es el sistema de base de datos relacional de código abierto más popular de SQL. MySQL es uno de los mejores RDBMS utilizados para desarrollar varias aplicaciones de software basadas en la web. MySQL es desarrollado, comercializado y soportado por MySQL AB, que es una compañía sueca. Este tutorial le dará un inicio rápido a MySQL y lo hará sentirse cómodo con la programación de MySQL.

¿Que es una base de datos?

Una base de datos es una aplicación separada que almacena una colección de datos. Cada base de datos tiene una o más API distintas para crear, acceder, administrar, buscar y replicar los datos que contiene.

También se pueden usar otros tipos de almacenes de datos, como archivos en el sistema de archivos o tablas hash grandes en la memoria, pero la recopilación y escritura de datos no sería tan rápida y fácil con ese tipo de sistemas.

Hoy en día, utilizamos sistemas de gestión de bases de datos relacionales (RDBMS) para almacenar y administrar un gran volumen de datos. Esto se denomina base de datos relacional porque todos los datos se almacenan en diferentes tablas y las relaciones se establecen mediante claves primarias u otras claves conocidas como claves externas.

Un sistema de gestión de bases de datos relacionales (RDBMS) es un software que:

  • Le permite implementar una base de datos con tablas, columnas e índices.
  • Garantiza la integridad referencial entre filas de varias tablas.
  • Actualiza los índices automáticamente.
  • Interpreta una consulta SQL y combina información de varias tablas.

Terminología de RDBMS

  • Base de datos: una base de datos es una colección de tablas, con datos relacionados.
  • Tabla: Una tabla es una matriz con datos. Una tabla en una base de datos parece una hoja de cálculo simple.
  • Columna: una columna (elemento de datos) contiene datos del mismo tipo, por ejemplo, el código postal de la columna.
  • Fila: una fila  es un grupo de datos relacionados, por ejemplo, los datos de una suscripción.
  • Redundancia: almacenar datos dos veces, de manera redundante para hacer que el sistema sea más rápido.
  • Clave principal: una clave principal es única. Un valor clave no puede aparecer dos veces en una tabla. Con una llave, solo puedes encontrar una fila.
  • Clave externa: una clave externa es el pin de enlace entre dos tablas.
  • Clave compuesta: una clave compuesta (clave compuesta) es una clave que consta de varias columnas, porque una columna no es lo suficientemente única.
  • Índice: un índice en una base de datos se parece a un índice en la parte posterior de un libro.
  • Integridad referencial: la integridad referencial se asegura de que un valor de clave externa siempre apunte a una fila existente.

Base de datos MySQL

MySQL es una base de datos rápida y fácil de usar que se usa para aplicaciones tanto grandes como pequeñas.

  • Se distribuye bajo una licencia de código abierto, así que no tienes nada que pagar para usarla.
  • Es un programa muy poderoso, con la misma funcionalidad que las bases de datos más caras y potentes del mercado.
  • Usa una forma estándar del conocido lenguaje de datos SQL.
  • Funciona en muchos sistemas operativos y en muchos idiomas, incluyendo PHP, PERL, C, C ++, JAVA, etc
  • Funciona muy rápidamente incluso con grandes conjuntos de datos.
  • Es muy amigable para PHP, el lenguaje más apreciado para el desarrollo web.
  • Soporta grandes bases de datos, hasta 50 millones de filas o más en una tabla. El límite de tamaño de archivo predeterminado para una tabla es de 4 GB, pero puede aumentar esto (si su sistema operativo puede manejarlo) a un límite teórico de 8 millones de terabytes (TB).
  • Es personalizable La licencia GPL de código abierto permite a los programadores modificar el software para que se ajuste a sus propios entornos específicos.

MySQL - Instalación

Todas las archivos para download se encuentran en la Página Web de MySQL. Elija el número de versión que desea, junto con la plataforma en la que lo ejecutará.

Instalar MySQL en Linux / UNIX

La forma recomendada de instalar MySQL en un sistema Linux es a través de RPM. MySQL AB pone los siguientes RPM disponibles para descargar en su sitio web

  • MySQL: el servidor de bases de datos MySQL administra las bases de datos y las tablas, controla el acceso de los usuarios y procesa las consultas SQL.
  • MySQL Cliente: Hace posible conectarse e interactuar con el servidor.
  • MySQL Devel: Bibliotecas y archivos de encabezado que son útiles cuando se compilan otros programas que usan MySQL.
  • MySQL Shared: Bibliotecas compartidas para el cliente MySQL.

Los RPM de MySQL enumerados aquí están todos construidos en un sistema SuSE Linux, pero generalmente funcionarán en otras variantes de Linux sin dificultad.

Ahora, deberá seguir los pasos que se indican a continuación para continuar con la instalación.

  • Inicie sesión en el sistema utilizando el usuario root.
  • Cambie al directorio que contiene los RPM.
  • Instale el servidor de base de datos MySQL ejecutando el siguiente comando. Recuerde reemplazar el nombre de archivo en cursiva con el nombre de archivo de su RPM.
[root@host]# rpm -i MySQL-5.0.9-0.i386.rpm

 

El comando anterior se encarga de instalar el servidor MySQL, creando un usuario de MySQL, creando la configuración necesaria e iniciando el servidor MySQL automáticamente.

Puede encontrar todos los binarios relacionados con MySQL en / usr / bin y / usr / sbin. Todas las tablas y bases de datos se crearán en el directorio / var / lib / mysql.

El siguiente cuadro de código tiene un paso opcional pero recomendado para instalar los RPM restantes de la misma manera.

[root@host]# rpm -i MySQL-client-5.0.9-0.i386.rpm
[root@host]# rpm -i MySQL-devel-5.0.9-0.i386.rpm
[root@host]# rpm -i MySQL-shared-5.0.9-0.i386.rpm
[root@host]# rpm -i MySQL-bench-5.0.9-0.i386.rpm

 

Instalar MySQL en Windows

La instalación predeterminada en cualquier versión de Windows es ahora mucho más fácil de lo que solía ser, ya que MySQL ahora viene empaquetado con un instalador. Simplemente descargue el paquete del instalador, descomprímalo en cualquier lugar y ejecute el archivo setup.exe.

El instalador predeterminado setup.exe lo guiará a través del proceso trivial y, de manera predeterminada, instalará todo bajo C: \ mysql.

Pruebe el servidor activándolo desde el símbolo del sistema la primera vez. Vaya a la ubicación del servidor mysqld que es probablemente C: \ mysql \ bin, y escriba

mysqld.exe --console

 

NOTA: si está en WINDOWS NT, tendrá que usar mysqld-nt.exe en lugar de mysqld.exe

Si todo salió bien, verá algunos mensajes sobre el inicio y InnoDB. Si no, puede tener un problema de permisos. Asegúrese de que el directorio que contiene sus datos sea accesible para cualquier usuario (probablemente MySQL) en el que se ejecutan los procesos de la base de datos.

MySQL no se agregará solo al menú de inicio, y tampoco hay una forma particularmente buena para detener el servidor. Por lo tanto, si tiende a iniciar el servidor haciendo doble clic en el ejecutable mysqld, debe recordar detener el proceso manualmente utilizando mysqladmin, Lista de tareas, Administrador de tareas u otros medios específicos de Windows.

Verificando la instalación de MySQL

Después de que MySQL se instaló correctamente y el servidor se inició: puede verificar que todo funciona como debería a través de algunas pruebas simples.

Utilice la utilidad mysqladmin para obtener el estado del servidor

Utilice mysqladmin binary para verificar la versión del servidor.

Este binario estaría disponible en Linux en: / usr / bin  y en windows en C: \ mysql \ bin  .

Ejecutando y apagando el servidor MySQL

Primero verifique si su servidor MySQL está funcionando o no. Puedes usar el siguiente comando para comprobarlo

ps -ef | grep mysqld

 

Si su MySql se está ejecutando, verá el proceso mysqld listado en su resultado. Si el servidor no se está ejecutando, puede iniciarlo usando el siguiente comando

root@host# cd /usr/bin
./safe_mysqld &

 

Ahora, si desea cerrar un servidor MySQL que ya está en ejecución, puede hacerlo usando el siguiente comando

root@host# cd /usr/bin
./mysqladmin -u root -p shutdown
Enter password: ******

 

Configuración de una cuenta de usuario MySQL

Para agregar un nuevo usuario a MySQL, solo necesita agregar una nueva entrada a la tabla de usuarios en la base de datos mysql.

El siguiente programa es un ejemplo de cómo agregar un nuevo usuario invitado con privilegios SELECT, INSERT y UPDATE con la contraseña guest123; la consulta SQL es

 

root@host# mysql -u root -p
Enter password:*******
mysql> use mysql;
Database changed

mysql> INSERT INTO user
   (host, user, password,
   select_priv, insert_priv, update_priv)
   VALUES ('localhost', 'guest',
   PASSWORD('guest123'), 'Y', 'Y', 'Y');
Query OK, 1 row affected (0.20 sec)

mysql> FLUSH PRIVILEGES;
Query OK, 1 row affected (0.01 sec)

mysql> SELECT host, user, password FROM user WHERE user = 'guest';
+-----------+---------+------------------+
|    host   |   user  |     password     |
+-----------+---------+------------------+
| localhost |  guest  | 6f8c114b58f2ce9e |
+-----------+---------+------------------+
1 row in set (0.00 sec)

 

Cuando agregue un nuevo usuario, recuerde cifrar la nueva contraseña usando la función CONTRASEÑA () provista por MySQL. Como puede ver en el ejemplo anterior, la contraseña mypass está cifrada a 6f8c114b58f2ce9e.

Observe la declaración de PRIVILEGIOS de FLUSH. Esto le dice al servidor que vuelva a cargar las tablas de concesión. Si no lo usa, no podrá conectarse a MySQL usando la nueva cuenta de usuario al menos hasta que se reinicie el servidor.

También puede especificar otros privilegios para un nuevo usuario configurando los valores de las siguientes columnas en la tabla de usuarios en 'Y' al ejecutar la consulta INSERT o puede actualizarlos más adelante utilizando la consulta UPDATE.

MySQL - Funciones útiles

Aquí está la lista de todas las funciones importantes de MySQL. Cada función ha sido explicada junto con el ejemplo adecuado.

  • GROUP BY se usa junto con las funciones agregadas de SQL como SUM para proporcionar medios para agrupar el conjunto de datos de resultados por determinadas columnas de la base de datos.
  • IN: esta es una cláusula, que puede usarse junto con cualquier consulta MySQL para especificar una condición.
  • BETWEEN: esta es una cláusula que se puede usar junto con cualquier consulta MySQL para especificar una condición.
  • UNION de MySQL: use una operación UNION para combinar varios conjuntos de resultados en uno.
  • COUNT: la función agregada MySQL COUNT se usa para contar el número de filas en una tabla de base de datos.
  • MAX: la función agregada MySQL MAX nos permite seleccionar el valor más alto (máximo) para una columna determinada.
  •  MIN: la función agregada de MySQL MIN nos permite seleccionar el valor más bajo (mínimo) para una determinada columna.
  • AVG : la función agregada AVG de MySQL selecciona el valor promedio para cierta columna de la tabla.
  • SUM: la función agregada MySQL SUM permite seleccionar el total para una columna numérica.
  • SQRT: se utiliza para generar una raíz cuadrada de un número dado.
  • RAND: se utiliza para generar un número aleatorio mediante el comando MySQL.
  • CONCAT: se utiliza para concatenar cualquier cadena dentro de cualquier comando MySQL.
  • DATE and Time: funciones relacionadas con la fecha y la hora de MySQL.
Compartir:


◀ Volver