🎨 Sysprovider Code
Sysprovider LogoWiki
🇪🇸Hosting español para ecommerce

Guía para crear usuarios y asignar privilegios en bases de datos MySQL (DirectAdmin)

Actualizado el 30 de diciembre de 2025

¿Te ha pasado que necesitas crear una base de datos para tu web y no sabes por dónde empezar? O quizás ya tienes una, pero necesitas darle acceso a un desarrollador externo sin exponer tus credenciales principales. Es una situación muy común, y la buena noticia es que con DirectAdmin es un proceso bastante sencillo una vez que entiendes los pasos. En esta guía completa, vamos a desglosar todo el proceso para crear usuarios y asignar privilegios en bases de datos MySQL, paso a paso, sin tecnicismos innecesarios. Al final, te sentirás con la confianza para gestionar tus bases de datos como todo un profesional.

¿Qué es un usuario de base de datos y por qué necesito uno?

Primero, vamos a aclarar un concepto que suele generar confusión. Una base de datos es como un gran almacén donde guardas la información de tu web (artículos, clientes, pedidos, etc.). Pero, para acceder a ese almacén, necesitas una llave. Esa llave es el usuario con su contraseña.

Cuando instalas un CMS como WordPress o PrestaShop, te pide los datos de conexión a la base de datos. Normalmente, puedes usar el usuario principal de tu cuenta de hosting, pero no es una buena práctica. Crear un usuario específico para cada base de datos te permite:

  • Mayor seguridad: Si un usuario se ve comprometido, solo se expone una base de datos, no todas.
  • Control de acceso: Puedes dar permisos de solo lectura a un colaborador, o permisos totales a tu equipo de desarrollo.
  • Organización: Es más fácil gestionar múltiples proyectos si cada uno tiene su propio usuario dedicado.

En DirectAdmin, la gestión de estos usuarios y sus permisos se realiza desde el panel de control de una manera muy visual. Vamos a verlo.

Primeros pasos: Accediendo al área de gestión de MySQL en DirectAdmin

Para empezar, inicia sesión en tu panel de DirectAdmin. Normalmente, la URL es algo como https://tudominio.com:2222. Una vez dentro, busca la sección que dice "MySQL Management" o "Administración de MySQL". El nombre puede variar ligeramente según la versión, pero suele estar en la página principal o dentro de la sección "Cuenta".

Dentro de esta sección, verás una lista de las bases de datos que ya tienes creadas y, en la parte superior, un botón o enlace para crear una nueva. Si aún no tienes una base de datos creada, este es el momento de hacerlo. Si ya la tienes, perfecto, vamos a crear el usuario.

Crear usuario MySQL en DirectAdmin: Paso a paso

Aquí viene la parte central de nuestra guía. Vamos a crear un usuario nuevo. El proceso es idéntico tanto si vas a asignarlo a una base de datos existente como a una nueva. Sigue estos pasos:

  1. Localiza el botón "Crear Usuario": En la sección de gestión de MySQL, busca un botón que diga "Create User" o "Crear Usuario". Suele estar en la parte superior de la lista de bases de datos o en una pestaña separada.

  2. Rellena el formulario: Se te pedirán dos campos principales:

    • Nombre de Usuario (Username): Aquí es donde debes prestar atención. DirectAdmin, por seguridad, prefijará automáticamente el nombre con tu nombre de usuario de hosting y un guión bajo. Por ejemplo, si tu cuenta se llama miusuario, y escribes app_web, el nombre final será miusuario_app_web. No puedes cambiar este prefijo, es una medida de seguridad para evitar conflictos entre cuentas en el mismo servidor.

    • Contraseña (Password): Elige una contraseña robusta. Una buena práctica es usar una combinación de letras mayúsculas, minúsculas, números y símbolos. DirectAdmin suele tener un generador de contraseñas seguras. Guárdala en un lugar seguro, como un gestor de contraseñas, porque no podrás verla de nuevo.

  3. Guarda el usuario: Haz clic en el botón "Create" o "Crear". El sistema te confirmará que el usuario se ha creado correctamente. ¡Ya tienes tu usuario MySQL!

Asignar privilegios MySQL: Dando los permisos adecuados

Crear el usuario es solo la mitad del trabajo. Ahora viene la parte crucial: asignar privilegios MySQL. Esto define qué puede hacer ese usuario dentro de la base de datos. No es lo mismo que pueda leer datos (SELECT) a que pueda borrar tablas enteras (DROP).

Para asignar los permisos, busca la base de datos a la que quieres dar acceso. Junto a ella, verás un icono o enlace que dice "Permissions" o "Privilegios". Haz clic en él.

Entendiendo los privilegios más comunes

Verás una lista de casillas con nombres técnicos. No te asustes, son más sencillos de lo que parecen. Aquí tienes los que usarás el 99% de las veces:

  • ALL PRIVILEGES: Este es el "todo incluido". Otorga todos los permisos posibles sobre la base de datos. Es útil para el desarrollador principal o para el CMS principal, ya que necesita crear tablas, modificar datos, etc.
  • SELECT: Permite solo leer los datos. Es perfecto para un usuario que solo necesita consultar información, como un analista o un script de lectura.
  • INSERT: Permite añadir nuevas filas de datos.
  • UPDATE: Permite modificar los datos existentes.
  • DELETE: Permite borrar filas de datos.
  • CREATE: Permite crear nuevas tablas dentro de la base de datos.
  • ALTER: Permite modificar la estructura de las tablas existentes (añadir columnas, cambiar tipos de datos, etc.).
  • DROP: Permite eliminar tablas enteras. Este es un permiso muy potente y peligroso, así que úsalo con cautela.
  • INDEX: Permite crear y eliminar índices, lo que ayuda a acelerar las búsquedas en la base de datos.

¿Cómo asignarlos en DirectAdmin?

Una vez que estés en la pantalla de "Permisos" o "Privilegios" para una base de datos específica, verás una lista de todos los usuarios que tienen acceso a ella y, al lado, las casillas para marcar los permisos.

  1. Selecciona el usuario: Encuentra el usuario que acabas de crear en la lista.
  2. Marca los permisos: Marca las casillas correspondientes a los permisos que quieres otorgar. Si no estás seguro, la opción más común y segura para una aplicación web típica es marcar SELECT, INSERT, UPDATE, DELETE, CREATE, ALTER, INDEX. Esto le da a la aplicación todo lo que necesita para funcionar sin permitirle borrar la base de datos entera.
  3. Guarda los cambios: Busca el botón "Save" o "Guardar" en la parte inferior de la página.

[TIP] Si tu aplicación es la principal (como WordPress), puedes marcar ALL PRIVILEGES para evitar problemas de permisos. Para usuarios secundarios o de consulta, es mejor ser más restrictivo.

Cómo conectar tu aplicación con el nuevo usuario

Una vez que has creado el usuario y le has asignado los privilegios, ya puedes usarlo en tu aplicación. En la configuración de tu CMS o script, te pedirán los siguientes datos:

  • Nombre de la base de datos: El nombre que le pusiste a la base de datos (con el prefijo de tu usuario).
  • Nombre de usuario: El nombre completo del usuario, incluyendo el prefijo (ej. miusuario_app_web).
  • Contraseña: La contraseña que elegiste.
  • Host de la base de datos: Normalmente es localhost o 127.0.0.1. En la mayoría de los casos, este valor ya viene predefinido.

Errores comunes y cómo solucionarlos

A veces, las cosas no salen a la primera. Aquí te dejo los problemas más frecuentes al trabajar con directadmin mysql usuario y sus soluciones:

Error "Access denied for user '...'@'localhost'"

Este es el error más común. Suele significar una de estas tres cosas:

  • Usuario o contraseña incorrectos: Verifica que has escrito correctamente el nombre de usuario completo (con el prefijo) y la contraseña. Recuerda que las contraseñas distinguen entre mayúsculas y minúsculas.
  • El usuario no tiene permisos sobre esa base de datos: Vuelve a la sección de "Privilegios" y asegúrate de que has marcado al menos el permiso SELECT para ese usuario en esa base de datos concreta.
  • El host no es correcto: Asegúrate de que estás usando localhost si tu aplicación y la base de datos están en el mismo servidor.

Error "Cannot connect to MySQL server"

Este error es más general y puede indicar que el servidor de bases de datos está caído o que el puerto de conexión es incorrecto. Si el problema persiste, contacta con tu proveedor de hosting.

No recuerdo la contraseña del usuario

No te preocupes, es muy fácil de solucionar. En el panel de DirectAdmin, dentro de la sección de gestión de usuarios MySQL, busca el botón "Change Password" o "Cambiar Contraseña" junto al usuario. Te pedirá que introduzcas una nueva contraseña y listo.

Buenas prácticas de seguridad para tus usuarios MySQL

Gestionar usuarios no es solo crearlos, sino también mantenerlos seguros. Aquí van algunos consejos:

  • Principio de mínimo privilegio: No otorgues más permisos de los necesarios. Si un usuario solo necesita leer datos, no le des permisos de DELETE o DROP.
  • Contraseñas robustas y únicas: No uses la misma contraseña para el usuario de la base de datos que para tu panel de control o tu correo.
  • Elimina usuarios que no uses: Si un desarrollador externo ha terminado su trabajo, elimina su usuario o al menos revoca sus permisos de la base de datos.
  • Cambia las contraseñas periódicamente: Es una buena práctica, especialmente si has tenido alguna fuga de información o has trabajado con muchas personas.

Preguntas Frecuentes (FAQ) sobre usuarios y privilegios MySQL

Para finalizar, vamos a resolver algunas dudas comunes que suelen tener los usuarios:

¿Puedo usar el mismo usuario para varias bases de datos?
Sí, puedes. De hecho, es una buena práctica si tienes varias aplicaciones que comparten la misma información. Solo tienes que ir a la sección de "Privilegios" de cada base de datos y añadir el mismo usuario.

¿Qué es el prefijo que se añade a mi usuario?
Es una medida de seguridad del servidor para aislar los recursos de cada cuenta de hosting. Evita que un usuario de una cuenta pueda acceder a las bases de datos de otra. Siempre debes usar el nombre completo, con el prefijo, al conectarte.

¿Cuál es la diferencia entre un usuario y una base de datos?
Es una de las confusiones más comunes. La base de datos es el contenedor de la información (las tablas, los datos). El usuario es la identidad que se conecta a ese contenedor. Piensa en la base de datos como una caja fuerte y en el usuario como la llave que la abre. Puedes tener muchas llaves (usuarios) para la misma caja fuerte (base de datos), y cada llave puede tener diferentes niveles de acceso.

Si soy usuario de Syspanel (antes HestiaCP), ¿este proceso es igual?
No exactamente. Aunque el concepto es el mismo, la interfaz cambia. Syspanel (que se accede por el puerto 2106) tiene su propio gestor de bases de datos. En lugar de buscar en el panel de control general, deberás entrar a la sección de "Bases de Datos" dentro de tu cuenta. El principio de crear un usuario y asignarle privilegios es idéntico, pero la disposición de los botones y menús es diferente.

[WARNING] Si estás usando Syspanel y tu proveedor te ha dado acceso por un puerto diferente al 2106, es posible que la configuración sea personalizada. Te recomendamos contactar con tu soporte para confirmar la URL de acceso.

¿Qué hago si mi aplicación me dice que no tiene permiso para crear una tabla?
Eso significa que el usuario que has configurado en la aplicación no tiene el privilegio CREATE. Ve a la sección de "Privilegios" de esa base de datos en DirectAdmin, marca la casilla CREATE (o ALL PRIVILEGES para simplificar) y guarda los cambios.

Conclusión: Tú puedes con esto

Gestionar usuarios y privilegios en DirectAdmin es una habilidad esencial para cualquier persona que administre su propio sitio web. Aunque al principio pueda parecer abrumador, verás que es un proceso lógico y sencillo. Hemos cubierto desde la creación del usuario hasta la asignación de permisos, pasando por la resolución de errores comunes.

Recuerda siempre la regla de oro: menos es más. Empieza con los permisos mínimos que necesite tu aplicación y ve ampliándolos solo si es estrictamente necesario. Con esta guía, ya tienes todo lo que necesitas para manejar tus bases de datos con confianza y seguridad. Si te surge cualquier otra duda, no dudes en consultar la documentación oficial de DirectAdmin o contactar con tu proveedor de hosting. ¡Buena suerte con tus proyectos!

¿Necesitas ayuda?Son dos de nuestros técnicos, Agustín y Mikel, y están disponibles para resolver cualquier problema.

Hablar con ellos ahora
Agustín y Mikel