MySQL

MySQL es el sistema de base de datos más popular de la Web. Es la base de datos ideal para muchos desarrolladores web, ya que permite el uso de frameworks de aplicaciones populares como WordPress, Drupal o Magento.

MySQL 5.7 (Percona) está disponible actualmente en Simple Hosting y puede ser utilizado en todos los lenguajes de programación.

Puede crear tantas bases de datos y usuarios como desee en su instancia. Solo está limitado por el tamaño del disco, que puede aumentar en cualquier momento hasta 1 TB.

El servicio de base de datos MySQL puede ser administrado desde la consola de emergencia SSH o desde una interfaz Web. Este artículo describe cómo acceder, crear y administrar bases de datos MySQL en Simple Hosting.

Conectándose a su base de datos

El servicio de base de datos MySQL está disponible en localhost y no es posible acceder al servicio desde fuera de la instancia.

El método de conexión preferido es a través de la conexión (socket) Unix situado en la ruta que se detalla a continuación. Existe un usuario predeterminado (root) y una base de datos (default_db) para que pueda probar rápidamente su conexión y realizar tareas de administración.

Configuración de conexión predeterminada:

Host: localhost
Socket: /srv/run/mysqld/mysqld.sock
User: root
Password: <none>
Database: default_db

Le recomendamos crear nuevos usuarios con credenciales fuertes y nuevas bases de datos para sus sitios web o aplicaciones. A continuación encontrará instrucciones para realizar estas y otras tareas de administración.

Gestionar su base de datos con phpMyAdmin

Puede acceder a su base de datos de Simple Hosting desde la sección Base de datos de la página de administración de su instancia.

Haga clic en el botón «Ir a phpMyAdmin» en el widget «Base de datos» e introduzca su nombre de usuario y contraseña de instancia para autenticarse con su Panel de Control.

Cuando haya terminado, verá la página de inicio de sesión de phpMyAdmin.

Por defecto el usuario phpMyAdmin es root y no hay contraseña. Así que escriba root como usuario, deje la contraseña vacía y haga clic en «Go». A continuación, iniciará sesión en PHPmyAdmin y podrá gestionar sus bases de datos desde allí.

Crear una base de datos MySQL

Para crear una base de datos, inicie sesión en su interfaz phpMyAdmin desde su página de administración de Simple Hosting y luego, una vez dentro, haga clic en la pestaña «Base de datos».

A continuación, elija un nombre para su base de datos y termine haciendo clic en «Crear».

Ahora usted querrá crear sus usuarios para la base de datos.

Para ello, utilice la opción «Privilegios» una vez que se encuentre en la página de administración de la base de datos (haga clic en el nombre de la base de datos para ir allí). Haga clic en el enlace «Añadir un nuevo usuario» y rellene el formulario para crear un usuario.

Importar una base de datos existente

Para importar su base de datos para usarla con el Simple Hosting de Gandi, vaya a su interfaz phpMyAdmin y haga clic en la pestaña «Importar».

Sin embargo, si su base de datos es demasiado grande, tendrá que subir su archivo .sql por sFTP a su directorio /lamp0/tmp. Luego podrá encontrar el archivo e importarlo desde phpMyAdmin sin encontrar errores por ser demasiado grande.

Gestionando su base de datos MySQL desde la línea de comando

Para obtener acceso a su base de datos MySQL a travez de la línea de comandos, primero debe iniciar una sesión en su instancia a través de la consola SSH.

Tenga en cuenta que la consola se desconectará automáticamente después de unos minutos de inactividad. Si esto sucede, puede iniciar una nueva conexión SSH sin necesidad de reactivar la consola.

Acceso a su base de datos

Una vez que haya iniciado sesión en su consola SSH, puede conectarse a su base de datos MySQL con el cliente MySQL con esta línea (si no se ha establecido una contraseña de root):

mysql -u root

O, si ya ha definido una contraseña de root, con la siguiente:

mysql -u root -p

Exportar una base de datos

Esto es útil para hacer copias de seguridad de su base de datos. Para hacer esto, puedes usar el comando mysqldump así (si quiere exportar todas tus bases de datos):

mysqldump -u root -p --all-databases > /srv/data/tmp/backup_mysql.sql

O así, si quieres exportar sólo una (reemplazando my_database con el nombre de tu base de datos):

mysqldump -u root -p --database my_database > /srv/data/tmp/backup_mysql.sql

Es posible realizar exportaciones automáticas periódicas utilizando también un trabajo de anacron. Para más información, consulte la guía de anacron.

Nota

Tenga en cuenta que sólo se puede escribir en los directorios /srv/data/tmp y /srv/data/home, con la excepción de los hosts virtuales. Por lo tanto, le recomendamos crear un directorio específico para las exportaciones MySQL con el fin de recolectarlos en la misma ubicación.

Restablecimiento de la contraseña de usuario “root” para MySQL

Es posible restablecer la contraseña del usuario MySQL root directamente desde su interfaz Gandi, haciendo clic en el botón «Restablecer la contraseña».

Una vez hecho esto, puede iniciar sesión en MySQL con el usuario root y dejar la contraseña en blanco. Restablecer su contraseña de usuario root no afecta a su base de datos de ninguna otra manera.

Registros (Logs)

Puede acceder a los registros de la base de datos desde el Panel de Control de su instancia, a través de sFTP o la consola SSH.

  • error.log: Registros relacionados con el servidor MySQL. Puede ver las tablas que han fallado y que han sido reparadas.
  • slow-queries.log: Aquí puede ver las consultas que tardan mucho tiempo en ejecutarse. Esto puede ocurrir en el caso de que algunas tablas estén bloqueadas.

Ejemplos de registros

El siguiente resultado muestra que MySQL se ha reiniciado:

120614 16:09:59 [Note] Plugin 'FEDERATED' is disabled.
InnoDB: The InnoDB memory heap is disabled
InnoDB: Mutexes and rw_locks use GCC atomic builtins
InnoDB: Compressed tables use zlib 1.2.6
120614 16:09:59  InnoDB: Initializing buffer pool, size = 8.0M
120614 16:09:59  InnoDB: Completed initialization of buffer pool
120614 16:09:59  InnoDB: highest supported file format is Barracuda.
InnoDB: The log sequence number in ibdata files does not match
InnoDB: the log sequence number in the ib_logfiles!
120614 16:09:59  InnoDB: Database was not shut down normally!
InnoDB: Starting crash recovery.
InnoDB: Reading tablespace information from the .ibd files...
InnoDB: Restoring possible half-written data pages from the doublewrite
InnoDB: buffer...
120614 16:10:00 InnoDB Plugin 1.0.17 started; log sequence number 2657932
120614 16:10:00 [Note] /usr/sbin/mysqld: ready for connections.
Version: '5.1.61-2'  socket: '/srv/run/mysqld/mysqld.sock'  port: 0  (Debian)

Este resultado muestra las tablas de su base de datos que fueron revisadas; si las tablas parecen haber fallado, MySQL intenta repararlas automáticamente:

120614 16:04:45 [ERROR] /usr/sbin/mysqld: Table './wp/wp_comments' is marked as crashed and should be repaired
120614 16:04:45 [Warning] Checking table:   './wp/wp_comments'
120614 16:04:45 [ERROR] /usr/sbin/mysqld: Table './wp/wp_links' is marked as crashed and should be repaired
120614 16:04:45 [Warning] Checking table:   './wp/wp_links'
120614 16:04:45 [ERROR] /usr/sbin/mysqld: Table './wp/wp_options' is marked as crashed and should be repaired
120614 16:04:45 [Warning] Checking table:   './wp/wp_options'