MySQL


Introducción

Tabla de contenidos:

 

Versión de MySQL

Hay diversas maneras de conocer la versión de MySQL, una de ellas es consultando el PHPMyAdmin, la otra es desde la consola, si prestas atención, cada vez que te conectas desde tu terminal a MySQL, el sistema vuelca toda la información, pero si  no prestaste la debida atención puedes escribir uno de los siguientes comandos: SHOW VARIABLES LIKE '%version%'; ó STATUS;

miprompt@che22:/var/run$ mysql -u root -p
Enter password: 
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 41
Server version: 5.6.12 Source distribution

Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql> 

OPCIÓN 1:

mysql> SHOW VARIABLES LIKE '%version%';
+-------------------------+---------------------+
| Variable_name           | Value               |
+-------------------------+---------------------+
| innodb_version          | 5.6.12              |
| protocol_version        | 10                  |
| slave_type_conversions  |                     |
| version                 | 5.6.12              |
| version_comment         | Source distribution |
| version_compile_machine | x86_64              |
| version_compile_os      | Linux               |
+-------------------------+---------------------+
7 rows in set (0.00 sec)

OPCIÓN 2: 

mysql> STATUS;
--------------
mysql  Ver 14.14 Distrib 5.5.34, for debian-linux-gnu (x86_64) using readline 6.2

Connection id:		41
Current database:	
Current user:		root@localhost
SSL:			Not in use
Current pager:		stdout
Using outfile:		''
Using delimiter:	;
Server version:		5.6.12 Source distribution
Protocol version:	10
Connection:		Localhost via UNIX socket
Server characterset:	latin1
Db     characterset:	latin1
Client characterset:	utf8
Conn.  characterset:	utf8
UNIX socket:		/var/run/mysqld/mysqld.sock
Uptime:			9 hours 31 min 55 sec

Threads: 1  Questions: 517  Slow queries: 1  Opens: 12981  Flush tables: 1  Open tables: 64  Queries per second avg: 0.015
--------------

¿ Cómo nos conectamos desde consola a MySQL ?

Para poder acceder a la base de datos, debemos ejecutar desde el prompt de nuestra consola el comando mysql -u root -p:

miprompt@che22:/opt/lampp$ mysql -u root -p

Nota: Puntos importantes a considerar: Tenes que respeta el camelCase, los comandos en linux deben ir en minúscula al menos que te lo indique. Podes acceder solamente colocando mysql, pero si te conectás de esa forma solo accederás con un usuario sin privilegios y no podrás CREAR, MODIFICAR, ELIMINAR, ACTUALIZAR nada. Tenes que conocer la configuración de tu equipo, o por lo menos lo mínimo e indispensable como por ejemplo el usuario y clave con privilegios necesarios, en mi caso utilizo el root igualmente esto no es recomendable, y se debe a un tema de seguridad, pero para hacer pruebas para mi esta bien. A me olvidaba, un detalle no menor, realmente no importa la ruta o el path de linux donde estes parado, ya que una vez que estes dentro de mysql, todo el trabajo que realizarás será dentro de la misma terminal de MySQL, asi que por ahora no le eches cabeza y continuemos conociendo cada uno de los engranajes de este motor de base de datos.

Una vez que estes dentro de MySQL, te aparecerá un mensaje de bienvenida como el siguiente:

Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 7
Server version: 5.6.12 Source distribution

Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql>

 el simbolo mysql> indica que estas en la terminal de mysql, con eso ya podemos trabajar.

LISTA DE COMANDO IMPORTANTES

Notas:  Importante, Todos los comandos deben finalizar con su correspondiente punto y coma ; .Si no has colocado el punto y coma, el SHELL te va a esperar en la línea siguiente para que lo coloques y finalices con la tecla <ENTER> el comando en cuestión.  El shell de mysql no distingue entre minúsculas y mayúsculas, por lo que puedes trabajar como gustes, pero te recomiendo que todo comando de MySQL los trabajes en MAYÚSCULAS, esto te permitirá en el futuro, con un simple vistazo distinguir las SENTENCIAS nativas del resto.

  • SHOW DATABASES; Muestra un listado de todas las base de datos.
  • CREATE  DATABASE mi_primer_proyecto; Crea la base de datos con el nombre mi_primer_proyecto.
  • USE mi_primer_proyecto; Utiliza la base de datos mi_primer_proyecto.
  • SHOW TABLES; Muestra las tablas de la base de datos, como la base de datos es nueva, no hay nada que mostrar por ahora.
  • CREATE TABLE mascotas (....parametros); Crea una tabla mascotas, pero aqui debemos agregar lso parametros, presta atención, más adelante te explicaré como es esto.
  • DROP TABLE mascotas, otra_tabla; Elimina una o varias tablas, si colocamos varias tablas, cada nombre debe estar separados por una coma, recuerda que siempre debes colocar el punto y coma para finalizar la ejecución de cada comando.

CREAR UNA BASE DE DATOS:

Para crear una base de datos podemos utilizar los comandos CREATE o SCHEMA, SCHEMA se implemento a partir de MySQL 5.0.2, En mysql SCHEMA es un sinónimo de DATABASE, podemos utilizar cualquiera de las dos SENTENCIAS. Es importante que conozcas la versión que estas utilizando.

Con el comando CREATE:

mysql> CREATE DATABASE nombre_de_la_base_de_datos;
Query OK, 1 row affected (0.00 sec)

Con el comando SCHEMA:

CREATE SCHEMA nombre_de_la_base_de_datos;
Query OK, 1 row affected (0.00 sec)

CREAR UNA TABLA:

 Como mencioné anteriormente, podemos crear una tabla con el comando  CREATE TABLE, este comando espera una serie de parámetros, como por ejemplo nombre de cada una de las columnas, y sus respectivos tipos y valors. En este ejemplo sencillo vamos a crear una tabla llamada mascota, esta va a tener un campo id, nombre, propietario, sexo, especie, nacimiento.

  • id: llave primaria, tipo entero, sin signo, no puede ser null
  • nombre: el nombre de la mascota, va a contener una cadena de caracteres de 100, puede ser algo excesivo ya que los animales responden a nombres cortos, no son tan inteligentes como tu CarlosAurelioMaldonadoDelCarchoSeco y menos que tu DoritaLaFlaquitaDelPoso, entonces tampoco va a ser un campo null.
  • propietario: Contiene una cadenda de caracteres de 100
  • sexo: Cadena de caracteres de 10
  • especie: Cadena de carecteres de 20
  • nacimiento: Campo Fecha
SELECT Empresas.Nombre, Servicios.Servicio
FROM Empresas
INNER JOIN Servicios ON Servicios.IdEmpresa = Empresas.Id

SELECT Empresas.Nombre, Servicios.Servicio
FROM Empresas
LEFT JOIN Servicios on Empresas.Id=Servicios.IdEmpresa


SELECT article, dealer, price
FROM   shop
WHERE  price=(SELECT MAX(price) FROM shop);

Página oficila de MySQL

 http://dev.mysql.com/doc/refman/5.0/es/examples.html

 

Importar y exportar una base de datos

El proceso de importación y exportación son totalmente diferentes, para importar debemos ingresar a la consola de MySQL con el comando mysql, para exportar no es necesario ya que mysql nos brinda un comando totalmente independiente al comando mysql

Exportando la base de datos

miprompt@che22:/var/run$ mysqldump -u usuario -p nombre_de_la_base_de_datos > nuestra_DB.sql
Enter password:
miprompt@che22:/opt/lampp$

Luego de ejecutar el comando, nos solicita la clave, y finalmente nos devuelve al prompt del sistema, el comando genera el archivo "nuestra_DB.sql" que contiene la base de datos.

Añadir nuevo comentario