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

Cómo crear un usuario de base de datos MySQL y asignar permisos (cPanel, Plesk)

Actualizado el 29 de marzo de 2026

¿Por qué necesitas un usuario MySQL con permisos específicos?

Cuando tienes una web dinámica (como WordPress, Joomla o una tienda online), esta necesita conectarse a una base de datos para guardar y leer información. Para que la conexión sea segura, no debes usar el usuario principal "root" o el usuario administrador del servidor. Lo correcto es crear un usuario MySQL exclusivo para tu web, con permisos limitados a una sola base de datos. Así, si alguien vulnera esa web, no podrá acceder al resto de tus datos.

Vamos a ver cómo hacerlo paso a paso en los dos paneles de control más usados: cPanel y Plesk. Ambos te permiten hacerlo sin tocar una sola línea de código SQL, pero si eres más atrevido, también te enseño la alternativa con comandos.


Crear usuario MySQL en cPanel

cPanel es el panel más popular en el hosting compartido. Su interfaz es muy visual y los pasos son bastante intuitivos. Aquí tienes la guía completa para crear usuario MySQL cPanel.

Paso 1: Accede a la sección "Bases de datos MySQL"

Dentro de tu panel de cPanel, busca la sección "Bases de datos". Ahí encontrarás varias opciones, pero nos interesa "Bases de datos MySQL". Haz clic en ella.

Paso 2: Crea la base de datos (si aún no la tienes)

Si ya tienes una base de datos creada, puedes saltarte este paso. Si no, en la parte superior de la página verás un formulario llamado "Crear una base de datos". Escribe un nombre para tu base. El sistema le añadirá automáticamente un prefijo con tu nombre de usuario de cPanel (por ejemplo, usuario_miweb). Anota el nombre completo porque lo necesitarás después.

Haz clic en "Crear base de datos" y listo.

Paso 3: Crea el nuevo usuario MySQL

Baja hasta el formulario "Crear un usuario MySQL". Aquí debes inventar un nombre de usuario y una contraseña segura. El nombre también llevará el prefijo de tu cuenta (ejemplo: usuario_miweb_user).

Para la contraseña, cPanel tiene un generador automático. Haz clic en el botón "Generar" (o usa uno propio que mezcle mayúsculas, minúsculas, números y símbolos). Guárdala en un lugar seguro, como un gestor de contraseñas.

Pulsa "Crear un usuario".

Paso 4: Asigna los permisos (privilegios)

Ahora viene la parte clave: asignar permisos. Una vez creado el usuario, verás una tabla llamada "Añadir usuario a una base de datos". Ahí selecciona en el desplegable el usuario que acabas de crear y la base de datos a la que quieres darle acceso. Haz clic en "Añadir".

Se abrirá una nueva pantalla con una lista de privilegios. Aquí tienes que elegir qué puede hacer ese usuario en esa base.

  • Para una web típica (WordPress, PrestaShop, etc.), lo más común es marcar "TODOS LOS PRIVILEGIOS". Esto le da control total sobre esa base, pero solo sobre esa, no sobre las demás.
  • Si quieres ser más restrictivo, puedes marcar solo los necesarios: SELECT, INSERT, UPDATE, DELETE, CREATE, ALTER, INDEX, DROP. Con estos tiene suficiente para funcionar.

Marca la casilla "TODOS LOS PRIVILEGIOS" si no quieres complicarte, o selecciona los específicos. Después, pulsa "Hacer cambios".

Paso 5: Verifica y guarda los datos

Ya has creado tu usuario MySQL cPanel y le has dado permisos MySQL. Para asegurarte, en la lista de bases de datos verás que a tu base le aparece el usuario asignado. Guarda estos tres datos en tu archivo de configuración de la web:

  • Nombre de la base de datos (con el prefijo).
  • Nombre de usuario (con el prefijo).
  • Contraseña.

Crear usuario MySQL en Plesk

Plesk es otro panel muy común, sobre todo en servidores VPS y dedicados. Su interfaz es más moderna y cambia un poco la forma de hacer las cosas. Aquí tienes la guía para usuario MySQL Plesk.

Paso 1: Entra en "Bases de datos"

Desde el panel principal de Plesk, en la pestaña "Sitios web y dominios", busca el dominio para el que quieres crear la base de datos. Debajo del nombre del dominio verás un icono de "Bases de datos" (suele ser un cilindro). Haz clic en él.

Paso 2: Crea la base de datos (si no existe)

En la pantalla de bases de datos, verás un botón "Agregar base de datos". Rellena el nombre y selecciona el tipo MySQL. En el campo "Servidor de base de datos" deja el que viene por defecto. Pulsa "Aceptar".

Paso 3: Crea el usuario y asígnale permisos

Aquí está la diferencia con cPanel: en Plesk, la creación del usuario y la asignación de permisos se hace en el mismo paso.

  1. Dentro de la configuración de tu base de datos recién creada, busca la pestaña "Usuarios" (o "Usuarios de la base de datos").
  2. Haz clic en "Agregar usuario".
  3. Escribe el nombre de usuario y una contraseña segura (Plesk también tiene generador).
  4. En el apartado "Privilegios", verás una lista de casillas. Para una web estándar, puedes marcar "Todos los privilegios" o elegir los específicos como hicimos en cPanel.

Pulsa "Aceptar" y ya tienes tu usuario MySQL Plesk creado y con acceso a esa base.

Paso 4: Configura tu aplicación

Ahora tienes los datos listos. En tu aplicación (WordPress, por ejemplo), en el archivo wp-config.php tendrás que poner:

  • DB_NAME: el nombre de la base de datos.
  • DB_USER: el usuario que acabas de crear.
  • DB_PASSWORD: la contraseña.
  • DB_HOST: normalmente localhost, pero si tu hosting usa un servidor MySQL externo, te lo indicarán en el panel.

Permisos MySQL: ¿qué significa cada privilegio?

Si no quieres dar "todos los privilegios" a tu usuario, es útil saber qué hace cada permiso. Aquí tienes un resumen de los más importantes para permisos base de datos MySQL:

  • SELECT: leer datos. Imprescindible para que tu web muestre contenido.
  • INSERT: añadir filas nuevas. Lo necesita para guardar comentarios o registros.
  • UPDATE: modificar datos existentes. Esencial para editar entradas o actualizar perfiles.
  • DELETE: borrar filas. Úsalo con cuidado, pero es necesario en muchas aplicaciones.
  • CREATE: crear nuevas tablas. Lo usan los instaladores de plugins o temas.
  • ALTER: cambiar la estructura de una tabla. Muy útil para actualizaciones.
  • INDEX: crear índices para acelerar las búsquedas.
  • DROP: eliminar tablas completas. Riesgoso, pero a veces necesario.
  • GRANT: permite dar permisos a otros usuarios. Mejor no activarlo.

[INFO] Para el 99% de las webs con CMS (WordPress, Drupal, Joomla), marcar "TODOS LOS PRIVILEGIOS" es la opción más práctica y evita problemas de configuración.


Alternativa avanzada: crear usuario MySQL con comandos SQL

Si tu hosting te da acceso a phpMyAdmin o a la línea de comandos (SSH), puedes crear el usuario y asignar permisos directamente con SQL. Esto te da un control total.

Desde phpMyAdmin

  1. Entra en phpMyAdmin con tu usuario administrador (el principal de tu cuenta).
  2. Ve a la pestaña "Cuentas de usuario" (o "User accounts").
  3. Haz clic en "Agregar usuario".
  4. Rellena nombre, host (normalmente localhost) y contraseña.
  5. En la sección "Privilegios globales", no marques nada. Baja a "Base de datos específica" y selecciona la base a la que quieres dar acceso.
  6. Marca los privilegios necesarios o usa "Marca todos".
  7. Pulsa "Continuar".

Desde la terminal (SSH)

Si tienes acceso SSH, ejecuta estos comandos:

CREATE USER 'nuevo_usuario'@'localhost' IDENTIFIED BY 'contraseña_segura';
GRANT ALL PRIVILEGES ON nombre_base.* TO 'nuevo_usuario'@'localhost';
FLUSH PRIVILEGES;

Con el primer comando creas el usuario base de datos MySQL. Con el segundo le das privilegios base de datos sobre una base específica (el .* indica todas las tablas de esa base). El tercero actualiza los permisos.

[WARNING] Si usas un host distinto a localhost (por ejemplo, una IP de un servidor remoto), cámbialo en los comandos. Si no lo haces, el acceso fallará.


Errores comunes y cómo solucionarlos

Aquí tienes los fallos más habituales al configurar el usuario MySQL cPanel o usuario MySQL Plesk, y su solución:

  • Error "Access denied for user": suele ser porque la contraseña no coincide, el host no es correcto, o el usuario no tiene permisos sobre esa base. Revisa los tres puntos.
  • Error "Table doesn't exist": puede que el usuario tenga permisos pero la base esté vacía. Importa tu backup o ejecuta el instalador de tu CMS.
  • No puedo conectar desde otra IP: si tu aplicación está en otro servidor, el host no debe ser localhost. Usa % (cualquier host) o la IP exacta. En cPanel y Plesk esto se configura al crear el usuario.

[TIP] Si tienes un firewall, asegúrate de que el puerto 3306 (el de MySQL) esté abierto para la IP desde la que te conectas.


Preguntas frecuentes (FAQ)

¿Puedo usar el mismo usuario para varias bases de datos?

Sí. En cPanel puedes añadir el mismo usuario a varias bases (repite el paso 4). En Plesk, edita el usuario y añade más bases. Es útil si tienes varias webs y quieres gestionarlas con un solo acceso.

¿Qué hago si olvidé la contraseña?

No puedes recuperarla, pero sí cambiarla. En cPanel, entra en la sección de usuarios MySQL y pulsa "Cambiar contraseña". En Plesk, edita el usuario y establece una nueva. Si usas phpMyAdmin, puedes ejecutar: ALTER USER 'usuario'@'host' IDENTIFIED BY 'nueva_contraseña';.

¿Es seguro dar "TODOS LOS PRIVILEGIOS"?

Sí, siempre que el usuario solo tenga acceso a una base de datos concreta. El riesgo sería si le dieras permisos globales (sobre todas las bases del servidor). Con la asignación por base, el aislamiento está garantizado.

¿Cómo afecta esto al rendimiento de mi web?

Nada. Los permisos solo controlan el acceso, no la velocidad. Lo que sí afecta es el número de conexiones simultáneas, pero eso lo gestiona el propio servidor.

¿Qué es Syspanel?

Si usas el panel alternativo Syspanel (antes conocido como HestiaCP), el proceso es similar: busca la sección de bases de datos, crea una, y dentro de ella podrás crear usuarios y asignarles permisos. Recuerda que el acceso a Syspanel se hace a través del puerto 2106 (por ejemplo, https://tu-servidor:2106).


Conclusión

Crear un usuario de base de datos MySQL y asignar permisos es una tarea sencilla si sigues los pasos correctos. Tanto en cPanel como en Plesk, el proceso es visual y no necesitas conocimientos avanzados. Lo importante es:

  1. Crear una base de datos exclusiva para tu web.
  2. Crear un usuario con contraseña segura.
  3. Asignar permisos solo sobre esa base.
  4. Guardar los datos de conexión en un lugar seguro.

Con esto, tu aplicación funcionará de forma estable y, sobre todo, segura. Si tienes dudas con algún panel específico, consulta la documentación de tu proveedor de hosting o escribe a su soporte técnico. ¡Ellos están para ayudarte!

¿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