Python para principiantes

11.1. Acerca de MySQL

MySQL es un servidor de Bases de Datos SQL (Structured Query Language) que se distribuye en dos versiones:

  • Una versión GPL (Software Libre)
  • Otra versión privativa, llamada MySQL AB

En este curso, utilizaremos la versión estándar licenciada bajo la GNU General Public License (GPL). Puedes descargar el manual completo de MySQL en el siguiente enlace: http://downloads.mysql.com/docs/refman-5.0-es.a4.pdf

11.1.1. Instalación y configuración de MySQL

Para instalar MySQL, por línea de comandos, escribe:

sudo apt-get install mysql-server mysql-client

Durante la instalación, el sistema te pedirá que ingreses una contraseña para la administración de MySQL. Asigna una contraseña que puedas recordar fácilmente y mantenla a salvo ya que deberás utilizarla frecuentemente.

Una vez que finalice la instalación, ejecuta el siguiente comando a fin de securizar el servidor MySQL (esta configuración, es válida también, para servidores de producción):

sudo mysql_secure_installation

A continuación, el sistema te pedirá que ingreses la contraseña actual para administración de MySQL (la del usuario root de MySQL). Ten en cuenta que la contraseña no será mostrada mientras escribes:

Enter current password for root (enter for none):

A continuación, te preguntará si deseas modificar esa contraseña. Salvo que desees modificarla, ingresa n:

Change the root password? [Y/n] n

Ahora la pregunta, será si deseas eliminar usuarios anónimos. Responde que sí:

Remove anonymous users? [Y/n] Y

Luego, te preguntará si desees desabilitar el acceso remoto al usuario root de MySQL. Por supuesto, responde que sí:

Disallow root login remotely? [Y/n] Y

La siguiente pregunta será si deseas eliminar la base de datos de prueba y el acceso a ella. También responde que sí:

Remove test database and access to it? [Y/n] Y

Finalmente, te preguntará si deseas recargar las tablas de privilegios (esto es para asegurar que todos los cambios realizados surjan efecto). Entonces, responde sí, por última vez:

Reload privilege tables now? [Y/n] Y

11.1.2. Iniciar, reiniciar y detener el servidor MySQL

En ocasiones necesitarás iniciar, reiniciar o detener el servidor de bases de datos, MySQL.

Las opciones disponibles son:

  • stop, detiene el servidor
  • start, inicia el servidor
  • restart, reinicia el servidor

Para iniciar, reiniciar o detener el servidor, deberás ejecutar el siguiente comando, seguido de la opción deseada:

sudo /etc/init.d/mysql opcion_deseada

Lógicamente reemplazando opcion por stop, start o restart según si deseas parar, iniciar o reiniciar el servidor.

11.1.3. Administración de MySQL

Una vez que comencemos a utilizar bases de datos, necesitarás poder acceder a las opciones de administración de las mismas. Por lo tanto, te recomiendo tener siempre a mano este capítulo, para poder consultarlo con frecuencia.

11.1.3.1. Conectarse y desconectarse al servidor

Para conectarte deberás ejecutar el siguiente comando:

mysql -u root -p

A continuación, deberás ingresar la contraseña del root de MySQL (no es la del root del SO. Es la que hemos configurado durante la instalación de MySQL). Las -u y -p significan usuario y password respectivamente.

Te aparecerá un shell interactivo para MySQL:

mysql>

Allí podremos escribir los comandos necesarios para administrar el servidor de bases de datos.

11.1.3.2. Comandos para administrar MySQL dede el shell interactivo

La siguiente tabla describe los comandos de uso frecuente que necesitarás para administrar el servidor de bases de datos desde el shell interactivo.

Es una buena idea, imprimir esta tabla para tenerla siempre a mano.

Comando Descripción
show databases; Muestra todas las bases de datos creadas en el servidor
use nombre_de_la_db; Indicar que vas a comenzar a utilizar la base de datos elegida
create database nombre_de_la_db; Crear una nueva base de datos
quit Salir del shell interactivo

Copyright (c) 2011-2013 Eugenia Bahit. La copia y redistribución de esta página se permite bajo los términos de la licencia Creative Commons Atribución NoComercial SinDerivadas 3.0 Unported siempre que se conserve esta nota de copyright.