MariaDB GRANT ALL PRIVILEGES: cómo usarlo paso a paso
El comando GRANT ALL PRIVILEGES en MariaDB otorga todos los permisos de usuario sobre una base de datos existente. Así, los usuarios pueden crear, modificar y eliminar tablas sin restricciones.
¿Qué es MariaDB GRANT ALL PRIVILEGES?
El comando GRANT ALL PRIVILEGES en MariaDB otorga al usuario todos los permisos sobre una o varias bases de datos. Concede todos los permisos disponibles, incluidos la creación, modificación y eliminación de tablas, así como el acceso a funciones administrativas. Si usas GRANT ALL PRIVILEGES de forma controlada, podrás gestionar eficazmente los permisos en tu entorno de bases de datos.
Para poder aplicar GRANT ALL PRIVILEGES en MariaDB, necesitas permisos avanzados del sistema. Normalmente, se requiere el privilegio SUPER o la opción GRANT OPTION para otorgar privilegios. Inicia sesión con una cuenta de usuario administrativa y asegúrate de tener una conexión estable con la instancia de base de datos correcta. Es importante definir con precisión el nombre de usuario y el prefijo del host para evitar la asignación involuntaria de permisos. También debes comprobar si la base de datos de destino ya existe, ya que el comando solo se puede aplicar a bases de datos existentes.
- vCPU económico con núcleos dedicados
- Flexible y sin periodo mínimo contractual
- Soporte experto 24/7
Sintaxis del comando MariaDB GRANT ALL PRIVILEGES
La estructura básica para otorgar todos los permisos sobre una base de datos en MariaDB es la siguiente:
GRANT ALL PRIVILEGES ON database.* TO 'username'@'host';sqlLa expresión GRANT ALL PRIVILEGES en MariaDB otorga al usuario indicado todos los permisos sobre la base de datos seleccionada. Mediante 'username'@host defines a qué usuario y desde qué host se le permite el acceso. Opcionalmente, puedes asignar una contraseña en el mismo comando para autenticar al usuario.
Una vez que ejecutes el comando, los cambios no tendrán efecto hasta que recargues los privilegios:
FLUSH PRIVILEGES;sqlAsí te aseguras de que los permisos se activen al instante y se guarden correctamente en el sistema.
Guía paso a paso: cómo crear un usuario y asignarle permisos
Para crear un nuevo usuario en MariaDB y asignarle permisos completos, sigue estos pasos:
Paso 1: crea el usuario
Primero, crea un nuevo usuario con una contraseña segura. Para ello, utiliza el siguiente comando:
CREATE USER 'newuser'@localhost IDENTIFIED BY 'strongpassword';sqlCon el comando MariaDB CREATE USER creas un nuevo usuario y le asignas una contraseña. Sustituye newuser por el nombre de usuario que desees y strongpassword por una contraseña segura y personalizada. La especificación localhost limita el acceso a conexiones desde el servidor local. Si quieres permitir el acceso desde otro host, reemplaza localhost por la dirección IP o el nombre de host del servidor desde el que se realizará la conexión.
Paso 2: otorga todos los permisos sobre una base de datos
El comando MariaDB GRANT ALL PRIVILEGES asigna al usuario todos los privilegios disponibles sobre todas las tablas de la base de datos database_name. El asterisco * indica que los permisos se aplican a cada tabla dentro de esa base de datos.
GRANT ALL PRIVILEGES ON database_name.* TO 'newuser'@localhost;sqlPaso 3: permite la delegación de permisos (GRANT OPTION)
Al añadir WITH GRANT OPTION, el usuario puede transferir los privilegios recibidos a otros usuarios.
GRANT ALL PRIVILEGES ON database_name.* TO 'newuser'@localhost WITH GRANT OPTION;sqlPaso 4: otorga permisos específicos sobre una base de datos o una tabla
También puedes conceder permisos concretos sobre una base de datos completa o sobre tablas individuales. Por ejemplo, para permitir solo acceso de lectura a todas las tablas de una base de datos, usa:
GRANT SELECT ON database_name.* TO 'newuser'@localhost;sqlEn este ejemplo, 'newuser' obtiene el permiso para leer todos los datos de la base de datos database_name, pero no para realizar modificaciones. Al usar * después del nombre de la base de datos, los permisos se aplican a todas las tablas de dicha base.
Si, por el contrario, quieres conceder permisos solo sobre una tabla específica, usa la siguiente sintaxis:
GRANT SELECT ON database_name.table_name TO 'newuser'@localhost;sqlDe este modo, newuser puede leer datos de la tabla table_name dentro de la base de datos database_name. Así controlas con precisión qué acciones puede realizar el usuario.
Paso 5: aplica los cambios
Los permisos se actualizan automáticamente y entran en vigor de inmediato. Como alternativa, puedes ejecutar el siguiente comando para asegurarte de que todos los permisos otorgados sean efectivos:
FLUSH PRIVILEGES;sqlPaso 6: muestra los permisos otorgados
Para consultar todos los permisos actualmente asignados a una cuenta de usuario, ejecuta el siguiente comando:
SHOW GRANTS FOR 'newuser'@localhost;sqlEste comando muestra todos los permisos que newuser tiene en la instancia de MariaDB. El resultado incluye tanto permisos generales sobre bases de datos o tablas como privilegios especiales, como el permiso para delegar sus propios permisos (WITH GRANT OPTION).
- Arquitectura de primera gestionada por expertos
- Soluciones flexibles adaptadas a tus necesidades
- Seguridad máxima en centros de datos con certificación ISO

