Bases de datos (preguntas frecuentes)

¿Como accedo al administrador de base de datos?

Para acceder al administrador de bases de datos, tenés que dirigirte desde el panel de control a Mysql > Administrador Mysql. Una vez ahí debés ingresar los siguientes datos:

  • Usuario: Tu usuario asignado a la base de datos
  • Host: La ip correspondiente a “Aplicación” (este dato lo encontrás en Mysql > Bases de datos Mysql)
  • Password: Tu contraseña para el usuario asignado a la base de datos.

En el siguiente enlace vas a encontrar más información sobre como gestionar tus bases de datos con esta popular herramienta.

Una vez que ingreses los datos, vas a iniciar una instancia del administrador de bases de datos phpmyadmin.

Importante: El formulario de acceso al phpmyadmin guarda los datos de logueo durante cierto tiempo, por lo tanto si experimentás dificultades para ingresar con datos válidos te recomendamos eliminar el caché del navegador oprimiendo Ctrl + F5

¿Cómo crear una base de datos MySQL?

Para crear una base de datos mySQL en tu plan Basico o superior tenés que seguir las siguientes instrucciones:

1. Ingresá al panel de control de tu cuenta
2. En el menú superior, seleccioná la opción MySQL -> Bases de Datos MySQL
3. Hacé click en “Agregar Base de Datos MySQL”
4. Completá los datos:

  • *Nombre: (nombre de la base de datos)
  • Versión del servidor: (versión deseada del motor mySQL, recomendamos siempre la más nueva)
  • Usuarios permitidos: (seleccionar el/los usuarios que va(n) a acceder a la base).

* El nombre de la base de datos debe ser único en la red, si el mismo ya existe vas a recibir un mensaje solicitándote que elijas uno nuevo.

Ahora creamos un usuario en la solapa “Usuarios Mysql” haciendo un click sobre “Agregar usuario MySQL”.

Completamos los datos solicitados:

  • Usuario: (el nombre de usuario que deseamos, el mismo no puede incluir espacios)
  • Host: (aquí indicamos si el usuario solo tendrá acceso desde cualquier ip o desde un host o ip en particular).
  • Clave: (contraseña para el usuario mysql.)
  • Versión del servidor: (la versión del motor que el usuario podrá utilizar).
  • Bases de datos: (si ya tiene creada una base de datos deberá aparecer listada en este campo, seleccione aquella(s) a la cual(es) el usuario tendrá acceso).

Administración:

Para administrar la base de datos podés utilizar el administrador que posee el panel de control, el mismo se encuentra bajo la solapa “Administrador mysql”. Para acceder, se te solicitarán los siguientes datos:

  • Usuario: (El nombre de usuario mysql que creo)
  • Host: La direccion IP privada que figura en el panel de control en la sección “Bases de datos” bajo la columna Aplicación. Esta direccion IP corresponde al servidor Mysql donde se encuentra alojada esa base de datos. La misma es recomendada para el uso en scripts PHP o conexiones establecidas desde dentro de nuestra red de servidores, ya que es mucho mas veloz. La dirección “Acceso externo” se puede utilizar para contactarse al servidor con algún software de administración, como por ejemplo el administrador de bases de datos HeidiSql.
  • Password: (la contraseña del usuario).

Si ingresamos correctamente los datos, vamos a estar accediendo a una instancia de phpMyadmin para gestionar nuestra base de datos.

¿Porque aparece repetidamente el siguiente error *Internal Server Error*, cuando trabajo en PHPMyAdmin?

Este mensaje de error se genera cuando un archivo php demora mas de 60 segundos en ejecutarse.

Esto puede darse, en primer lugar, si estas usando la ip pública del servidor MySQL en lugar de la ip interna del mismo para conectarte al administrdor MySQL.

Otra opción bastante común es que la base de datos sobre la que se este trabajando sea muy pesada o el query que estás ejecutando demore mucho y por lo tanto pasen los 60 segundos de vida del php.

Lo que recomendamos para administrar bases de datos de gran tamaño o consultas pesadas a la base, es que utilices el HeidiSql, el cuál es un administrador de bases de datos muy sencillo de utilizar.

¿Cómo configurar una conexión a base de datos usando Heidisql?

Heidisql es una aplicación de escritorio que nos permite gestionar fácilamente nuestras bases de datos. Al trabajar localmente en la computadora del usuario, no presenta las limitaciones de phpMyadmin en cuanto a gestión de bases de datos de gran tamaño. Para configurar correctamente la conexión a una base de datos existente utilizando Heidisql debés seguir estos pasos:

  1. Verificá que la base de datos esté correctamente creada en el panel.
  2. Verificá que la misma tenga un usuario asingnado, con la opción “Host: Permitir conexiones desde cualquier host” habilitada (es la configuración por defecto al dar de alta el usuario).
  3. Desde tu panel de control > Mysql > Bases de datos Mysql tomá nota del número de ip de la base correspondiente a “Acceso externo”(dado que vamos a acceder desde afuera de la red interna de servidores).
  4. Una vez iniciado Heidisql, asignale un nombre a la base de datos e ingresá la información de conexión para conectar a la base (Hostname / Ip = Ip correspondiente a Intranet, User: Usuario asignado a la base, Password: Contraseña del usuario).a
¿Como importar / exportar una base de datos mysql?

Para importar o exportar bases de datos desde el administrador disponible en el panel de control, debemos seguir los siguientes pasos:

Para exportar

  1. Ingresar al administrador de bases de datos phpMyadmin desde tu panel de control > Mysql > Administrador de bases de datos.
  2. Una vez ahí, seleccioná la base de datos sobre la cuál vas a realizar la exportación y luego la pestaña “Exportar” (Ver imagen).
  3. Para exportar, tenemos dos opciones. Podemos generar un archivo descargable (recomendado) o exportar el texto de la consulta. Para generar el archivo descargable, tildá la opción “Enviar (genera un archivo descargable)”.
  4. Hacé click en “Continuar” para generar la exportación.
a

Para importar

Para importar una base de datos, primero debés crear una vacía. Una vez creada la base, ingresá a la misma mediante el Administrador de base de datos y completá los siguientes pasos:

  1. Seleccioná la pestaña “Importar” (si disponés de un archivo para realizar la importación)
  2. Hacé click en “Examinar” para buscar en tu compu el archivo .sql, seleccionalo y dale click a “Continuar”
  3. Si todo salió bien, vas a ver una página con el resumen de la información importada.
a

Otra forma es ingresar directamente la consulta sql, sobre la base vacía. Para esto, tenemos que contar con la sintaxis mysql completa (la forma de exportación que no utiliza la opcion “Enviar” tildada). Debemos seleccionar la pestaña “Sql” y pegar en el campo de texto el código sql obtenido en el proceso de exportación.

a

Importante
Cabe aclarar que phpmyadmin es una aplicación que trabaja con la limitación de ejecución de php en el servidor. Por lo tanto si la base a importar / exportar es demasiado grande o si el phpmyadmin arroja “Internal Server Error” durante el proceso, te recomendamos utlizar un administrador de bases de datos mysql que se ejecute localmente en tu ccomputadora. Una buena opción es Heidisql.

¿Cómo exportar una base de datos utilizando Heidisql?

La ventaja de utilizar Heidisql para gestionar nuestras bases de datos es que al trabajar en un entorno local, no caemos en las limitaciones de procesamiento o tiempo de ejecución del servidor web (que desde ya no cuentan con la asignación de recursos de una computadora personal).

Ahora bien, para realizar el dump de la base de datos debemos seguir los pasos a continuación:

  • Abrí el programa Heidisql y conectar a la base de datos que querés exportar. Podés encontrar un tutorial para realizar la configuración de la base en el siguiente enlace.
  • Una vez abierta la conexión, podrás ver las bases de datos disponibles para el usuario. Desde el menú superior, seleccioná Export > Export database as sql.
  • Se abrirá una nueva ventana en la cuál debemos seleccionar la base de datos a exportar. Te recomendamos hacer click en la flecha izquierda y verificar que todas las tablas de la base estén seleccionadas correctamente.
  • Verificá que la pestaña “SQL export” esté configurada de la siguiente forma:

Database(s): Create
Table(s): Create
Data: Insert
Output: One big file
Filename: Haciendo click en el ícono del diskette, podes seleccionar la ubicación en la que se guardara el archivo así como el nombre del mismo.

a

a

a

Para tener en cuenta:

En la parte inferior del cuadro de diálogo “SQL export” vas a encontrar la opción “Skip tables larger than” a la cuál tenés que asignarle el valor 0 para evitar problemas con tablas de gran tamaño.

a

¿Qué es el registro de consultas lentas?

Podés acceder a este informe desde tu panel de control > Mysql > Consultas mysql lentas. El registro de consultas lentas es una herramienta del panel de control que nos muestra las querys a la base de datos que tardan más de un segundo y por lo tanto deben ser optimizadas. Este es un buen indicador para analizar problemas de performance en los sitios. La información que nos devuelve el log incluye:

  • Hora: Momento en el que se realizó la consulta.
  • Usuario: Usuario de la base de datos.
  • Query time: Tiempo que demora en ejecutarse la consulta (recordemos que las mismas deberían ejecutarse en centésimas de segundo).
  • Filas examinadas: Filas de la base de datos examinadas por la consulta.
  • Filas enviadas: Filas enviadas a la base por la consulta.
  • Consultas: La sintaxis de la consulta ejecutada.

Aplicaciones como Joomla!, WordPress o VBulletin tienen la capacidad de extenderse con plugins y complementos desarrollados por terceros que muchas veces realizan consultas que no están debidamente optimizadas y generan lentitud en el sitio. Te recomendamos controlar el número de extensiones que instalás en tu aplicación y verificar esta herramienta para comprobar las consultas que realizan.

¿Por qué tengo ips de Aplicación y Acceso Externo para mis bases de datos?

La diferencia principal radica en que la ip de aplicación es utilizada por la red interna de servidores, por lo tanto es la que tenés que utilizar siempre que quieras realizar la conexión a la base desde una aplicación alojada con nosotros. La ip de acceso externo es la que tenés que usar en caso de que estés conectando a la base de datos desde alguna aplicación que no esté hosteada en nuestra red. Ej: Si utilizás un administrador de bases de datos tal como HeidiSql

¿Cómo doy de alta usuarios para bases de datos?

Dar de alta usuarios para las bases de datos es muy sencillo. Tenés que ingresar en Mysql > Usuarios Mysql > Agregar un usuario mysql.
En el formulario que se abre, tenés que ingresar:

  • Usuario: El nombre que elijas para el usuario
  • Host: Por defecto el usuario aceptará conexiones de cualquier host, si querés especificar alguno(s) en particular ingresalos en este campo.
  • Clave: La clave que elijas para el usuario
  • Versión del servidor: Acá vas a poder seleccionar entre las versiones 5.0 y 4.1 de mysql
  • Base de datos: Desde esta opción, vas a poder asignar el usuario que estás creando a la(s) base(s) de datos. Tildando la base correspondiente vas a habilitar al usuario con todos los privilegios. Si necesitás un control más granular sobre los mismos, te sugiero que hagas click en el desplegable para seleccionar los permisos que le vas a asignar.
¿Que significa el campo “Host” de mi administrador de base de datos?

El campo “host” referencia al servidor contra el cuál vamos a establecer la conexión. Aquí debés completar con la ip correspondiente a “intranet”, para verificar esta información tenés que ingresar a Mysql > Bases de datos Mysql

¿Qué debo poner como host en la configuración de la conexión mysql de mi aplicación web?

Cuando te encuentras instalando una aplicación web (por ejemplo: WordPress, Moodle, Joomla) es necesario ingresar los datos de configuración a la base de datos. Estos son:

  • host
  • nombre del usuario mysql
  • contraseña del usuario mysql
  • nombre de la base de datos

Trabajando localmente y/o en otros proveedores de hosting, podrás verás que en el valor “host” siempre utilizas “localhost”. Esto es debido a que el servidor de base de datos (mysql) y el servidor web (apache) se encuentran en el mismo servidor. Aquí radica la diferencia, ya que TEHUENTEC.COM cuenta con una infraestructura en nodos en donde tenemos separados el servidor de base de datos del servidor web.

Entonces, ¿Qué debo poner para reemplazar “localhost”?
En vez de escribir localhost, debes ingresar la dirección IP de aplicación de la base de datos que hayas creado previamente.

Por ejemplo:
Creas una base de datos llamada basedeprueba, verás que en el panel de control te sale el nombre de la base con dos direcciones IP (la de aplicación y la externa). En este punto debes tener cuidado porque ambas te sirven, pero la externa es una IP pública de conexión. Por lo tanto si configuras tu aplicación con la IP externa, la misma tendrá una latencia adicional al momento de realizar la conexión.

a

Resumiendo:

  • IP de aplicación es la que debes indicar como host o localhost en tu instalación.
  • IP externa: es la que te sirve para acceder a tus bases de datos mediante programas externos como HeidiSQL o conectar a la base desde una aplicación alojada en otra plataforma.
¿Como restaurar un snapshot mysql desde el panel de control?

Para restaurar un snapshot mysql, por favor seguí estos pasos. Primero, ingresá al panel de control de tu cuenta (recordá que para que el sistema de snapshots funcione correctamente en el panel, tu cuenta tiene que tener al menos un usuario SSO activo).

  • Una vez dentro del panel, vamos a la sección Mysql > Bases de datos Mysql
  • Ahora una recomendación…nunca sobrescribas una base en uso, es preferible crear una base “limpia” para recuperar el resguardo.
a
a
a
  • Seleccioná el snapshot que quieras descargar. Podés visualizar las tablas dentro de la base y recuperar solamente una o varias.
  • Si ya creaste la nueva base, seleccioná “Restaurar en otra base”. Luego de esto seleccionala desde el listado de bases activas.
  • Dale click a “Aceptar”, un mensaje te va a indicar que la restauración de la base se encuentra en curso.
a

a

También tenés la opción de realizar un resguardo de tu base en el momento. Para realizar esto, solamente hacé click en “Descargar”. Se va a generar un enlace válido por 24 horas apuntando a un archivo con una versión comprimida en gzip de tu base de datos. Una vez descargado el mismo, podés usar el programa 7zip para descomprimirlo.

a

¿Por qué no puedo asignar un usuario a mi bases de datos mysql?

Seguramente te has encontrado en el caso en el que recibes un error al asignar un usuario a una base de datos. Esto se da cuando intentas asociar un usuario mysql a una base de datos que utiliza una versión distinta de mysql.
En TEHUENTEC.COM tenemos varias versiones mysql, vamos a ver este caso con un ejemplo para que sea más claro.

Supongamos que tienes la base de datos “texas” generada en mysql 5.0 y la base de datos “california” funcionando en mysql 5.5. Además de esto tienes los usuarios “newyork” en versión mysql 5.0 y “miami” con mysql 5.5.
Para esta situación, el usuario “miami” no puede acceder a la base “texas” porque pertenecen a dos versiones distintas mientras que el usuario “miami” solo tiene acceso a la base “california”.

a