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

Cómo gestionar usuarios y privilegios de una base de datos en cPanel

Actualizado el 24 de diciembre de 2025

Introducción: ¿Por qué es importante gestionar usuarios y privilegios en MySQL?

Cuando tienes una web dinámica (como WordPress, Joomla o una tienda online), detrás de las cámaras hay una base de datos MySQL que almacena todo tu contenido, contraseñas cifradas, pedidos y datos de clientes. Si esa base de datos cae en manos equivocadas, el atacante podría robar información sensible o destruir tu sitio por completo.

La buena noticia es que cPanel pone a tu disposición herramientas sencillas para crear usuarios, asignarles permisos específicos y revocarlos cuando ya no sean necesarios. Dominar esta gestión no solo mejora la seguridad de tu proyecto, sino que también te permite trabajar en equipo con desarrolladores o agencias sin exponer más de la cuenta.

En este artículo aprenderás, paso a paso, a gestionar usuarios y privilegios de una base de datos en cPanel. Vamos a ello.


¿Qué es un usuario de base de datos y qué son los privilegios?

Antes de tocar nada, conviene entender dos conceptos básicos:

  • Usuario de MySQL: es una cuenta con un nombre y una contraseña que se utiliza para conectarse a una base de datos. No es lo mismo que tu usuario de cPanel. Es un usuario exclusivo para la base de datos.
  • Privilegios: son los permisos que ese usuario tiene sobre una base de datos concreta. Puede tener permiso para leer (SELECT), insertar (INSERT), modificar (UPDATE), borrar (DELETE), crear tablas (CREATE) o incluso eliminar la base de datos completa (DROP), entre otros.

La regla de oro en seguridad es: conceder solo los privilegios mínimos necesarios. Si una aplicación solo necesita leer datos, no le des permisos para borrarlos.


Paso 1: Acceder a la sección de Bases de Datos MySQL en cPanel

  1. Inicia sesión en tu cPanel con tu usuario y contraseña habituales.
  2. Busca la sección Bases de Datos (suele estar en el grupo de iconos con nombres como MySQL Databases o Bases de Datos MySQL).
  3. Haz clic en Bases de Datos MySQL.

Aquí verás un panel con tres apartados principales: Crear base de datos, Crear usuario y Añadir usuario a base de datos. También verás listados todas tus bases de datos existentes y los usuarios creados.

[INFO] Si tu hosting utiliza Syspanel (antes llamado HestiaCP) en lugar de cPanel, el acceso se realiza a través del puerto 2106 (por ejemplo, https://tu-dominio:2106). La lógica es similar, pero este artículo se centra en cPanel.


Paso 2: Crear una base de datos nueva (si aún no la tienes)

Si ya tienes la base de datos creada, salta este paso. Si no, sigue estas instrucciones:

  1. En el campo Nueva base de datos, escribe un nombre descriptivo (normalmente se añadirá un prefijo automático con tu usuario de cPanel, por ejemplo tuusuario_miweb).
  2. Haz clic en Crear base de datos.
  3. Verás un mensaje de éxito y la base aparecerá en la lista de abajo.

[TIP] Elige nombres que te ayuden a identificar el propósito, como tienda_productos o blog_comentarios. Evita nombres genéricos como db1 o test.


Paso 3: Crear un usuario de MySQL

Ahora vamos a crear un usuario que podrá conectarse a esa base de datos.

  1. Baja hasta la sección Añadir nuevo usuario.
  2. Escribe un nombre de usuario (por ejemplo, app_tienda).
  3. Escribe una contraseña segura. Puedes usar el generador de contraseñas que incluye cPanel (el icono del dado) o crear una tú mismo. Es muy importante que sea robusta: combina mayúsculas, minúsculas, números y símbolos.
  4. Haz clic en Crear usuario.

[WARNING] Anota el usuario y la contraseña en un gestor de contraseñas. No los compartas por correo electrónico sin cifrar. Si pierdes la contraseña, tendrás que cambiarla desde cPanel y actualizar la configuración de tu aplicación.


Paso 4: Añadir el usuario a la base de datos y asignar privilegios

Este es el paso clave. Un usuario sin privilegios no puede hacer nada. Vamos a asignarle permisos.

  1. En la sección Añadir usuario a base de datos, verás dos menús desplegables: uno para elegir el usuario y otro para la base de datos.
  2. Selecciona el usuario que acabas de crear y la base de datos correspondiente.
  3. Haz clic en Añadir.

Aparecerá una nueva pantalla con una lista de privilegios que puedes marcar. Estas son las opciones más comunes:

  • ALL PRIVILEGES: da acceso total, incluyendo crear, modificar y borrar tablas. Úsalo solo si es estrictamente necesario.
  • SELECT: permite leer datos.
  • INSERT: permite añadir nuevos registros.
  • UPDATE: permite modificar registros existentes.
  • DELETE: permite eliminar registros.
  • CREATE: permite crear nuevas tablas.
  • ALTER: permite modificar la estructura de tablas existentes.
  • INDEX: permite crear índices (mejora el rendimiento de búsquedas).
  • DROP: permite eliminar tablas o la base de datos completa. Muy peligroso.

¿Qué privilegios necesito según el caso?

  • Aplicación web (WordPress, PrestaShop, etc.): normalmente necesitas ALL PRIVILEGES sobre su propia base de datos, porque la aplicación gestiona tablas y actualizaciones automáticas.
  • Usuario de solo lectura (para informes o consultas): marca únicamente SELECT.
  • Usuario para importar/exportar datos: marca SELECT, INSERT, UPDATE, DELETE, CREATE, ALTER, INDEX.
  • Usuario de respaldo (backup): con SELECT, SHOW VIEW, LOCK TABLES suele ser suficiente.

[TIP] Si no estás seguro, empieza con ALL PRIVILEGES para que la web funcione y luego, cuando todo esté estable, revoca los que no uses.

  1. Marca las casillas que necesites y haz clic en Hacer cambios.

[INFO] En cPanel, la opción ALL PRIVILEGES incluye todos los permisos posibles. Si la marcas, no necesitas marcar ninguna otra.


Paso 5: Verificar los usuarios y privilegios existentes

Una vez que has creado el usuario y le has asignado permisos, es buena práctica revisar la configuración.

En la misma página de Bases de datos MySQL, baja a la sección Usuarios en bases de datos. Verás una tabla con las siguientes columnas:

  • Usuario: el nombre del usuario.
  • Base de datos: la base a la que tiene acceso.
  • Privilegios: una lista de permisos (o un botón para verlos).
  • Acciones: botones para Editar privilegios o Eliminar al usuario de la base de datos.

Desde aquí puedes:

  • Quitar permisos: haz clic en el icono de edición (normalmente un lápiz) y desmarca las casillas que quieras.
  • Eliminar al usuario de la base de datos: esto no borra al usuario, solo le quita el acceso a esa base concreta.

[WARNING] Si eliminas a un usuario de una base de datos mientras tu web está en funcionamiento, la conexión fallará y la web mostrará un error. Hazlo siempre con la web en mantenimiento o fuera de servicio.


Paso 6: Cambiar la contraseña de un usuario de MySQL

Si sospechas que una contraseña ha sido comprometida, o simplemente quieres rotarla por seguridad, puedes cambiarla fácilmente:

  1. Ve a la sección Cambiar contraseña (suele estar en la misma página de Bases de datos MySQL).
  2. Selecciona el usuario.
  3. Introduce la nueva contraseña (o usa el generador).
  4. Haz clic en Cambiar contraseña.

[TIP] Después de cambiar la contraseña, deberás actualizar el archivo de configuración de tu aplicación (por ejemplo, wp-config.php en WordPress) con la nueva contraseña. De lo contrario, la conexión a la base de datos fallará.


Paso 7: Eliminar un usuario de MySQL (cuando ya no lo necesites)

Si un desarrollador externo ya no trabaja contigo o has dejado de usar una aplicación, es recomendable eliminar al usuario por completo.

  1. En la sección Usuarios MySQL (lista de usuarios existentes), localiza al usuario que quieres borrar.
  2. Haz clic en Eliminar (normalmente un icono de papelera).
  3. Confirma la acción.

[WARNING] Esta acción es irreversible. Si eliminas al usuario, cualquier aplicación que lo use dejará de funcionar. Asegúrate de que no hay nada crítico conectado con ese usuario.


Buenas prácticas de seguridad al gestionar bases de datos

Gestionar usuarios y privilegios no es solo una tarea administrativa; es una de las principales barreras de seguridad de tu hosting. Sigue estas recomendaciones:

  • Principio de mínimo privilegio: nunca des más permisos de los necesarios.
  • Contraseñas únicas y robustas: no reutilices la misma contraseña para varios usuarios.
  • Cambia las contraseñas periódicamente: al menos cada 3-6 meses.
  • Elimina usuarios inactivos: si no se usan, sobran.
  • No uses el usuario root de MySQL para las aplicaciones web. Crea usuarios específicos.
  • Revisa los privilegios después de una actualización de tu CMS, ya que podría requerir permisos adicionales.
  • Realiza copias de seguridad antes de modificar privilegios o eliminar usuarios.

[TIP] Si trabajas con varios sitios web, crea un usuario distinto por cada base de datos. Así, si una web es hackeada, el atacante no tendrá acceso a las demás bases de datos.


Preguntas frecuentes (FAQ)

¿Puedo crear varios usuarios para la misma base de datos?

Sí. Es perfectamente válido y recomendable. Por ejemplo, puedes tener un usuario con permisos totales para la aplicación y otro con permisos de solo lectura para generar informes.

¿Qué hago si olvido la contraseña de un usuario de MySQL?

Entra en cPanel, ve a Bases de datos MySQL y usa la opción Cambiar contraseña. Después actualiza el archivo de configuración de tu aplicación.

¿Qué es el prefijo que se añade al nombre de mi base de datos?

Es el nombre de tu usuario de cPanel seguido de un guion bajo. Por ejemplo, si tu usuario es juan, la base de datos se llamará juan_miweb. Esto evita conflictos en servidores compartidos.

¿Puedo eliminar una base de datos sin eliminar a los usuarios?

Sí. Eliminar una base de datos no elimina a los usuarios asociados. Pero recuerda que esos usuarios se quedarán sin conexión a esa base. Es recomendable también eliminar la relación entre el usuario y la base de datos.

Mi web da error de "conexión a la base de datos fallida". ¿Qué hago?

  1. Comprueba que el usuario existe y tiene privilegios en la base de datos.
  2. Verifica que la contraseña es correcta.
  3. Revisa el nombre de la base de datos (con el prefijo incluido).
  4. Comprueba que el servidor MySQL está activo (suele aparecer en cPanel).

¿Puedo dar privilegios a un usuario para varias bases de datos?

Sí. Solo tienes que repetir el proceso de Añadir usuario a base de datos con cada base de datos que quieras.

¿Es seguro usar "ALL PRIVILEGES" en mi web?

Es lo más común en aplicaciones como WordPress, pero implica que si esa cuenta se ve comprometida, el atacante puede borrar toda la base de datos. Si puedes, limita los permisos a los que la aplicación realmente necesita.


Conclusión

Gestionar usuarios y privilegios de una base de datos en cPanel es una tarea sencilla pero de vital importancia para la seguridad y el correcto funcionamiento de tu sitio web. Con solo unos clics puedes crear cuentas separadas, asignar permisos específicos y revocarlos cuando sea necesario.

Recuerda siempre aplicar el principio de mínimo privilegio, usar contraseñas robustas y revisar periódicamente quién tiene acceso a qué. Una buena gestión de usuarios no solo te protege de ataques externos, sino también de errores humanos que pueden acabar con meses de trabajo.

Si tu hosting utiliza Syspanel en lugar de cPanel, recuerda que el acceso se realiza por el puerto 2106, aunque los conceptos de usuarios y privilegios son prácticamente idénticos.

Ahora ya tienes todo lo necesario para dominar la gestión de bases de datos en cPanel. ¡Ponlo en práctica y mantén tu web segura!

¿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