在Debian系统上管理MariaDB用户权限,主要通过SQL命令操作,核心步骤如下:
sudo mysql -u root -p 输入密码后进入MariaDB控制台。
-- 创建本地用户(仅限localhost登录) CREATE USER '用户名'@'localhost' IDENTIFIED BY '密码'; -- 创建可远程访问用户(指定IP或'%'代表任意IP,谨慎使用) CREATE USER '用户名'@'IP地址' IDENTIFIED BY '密码'; 示例:
CREATE USER 'appuser'@'localhost' IDENTIFIED BY 'App@123'; -- 授予数据库特定权限(如SELECT、INSERT等) GRANT SELECT, INSERT, UPDATE ON 数据库名.* TO '用户名'@'主机'; -- 授予数据库所有权限 GRANT ALL PRIVILEGES ON 数据库名.* TO '用户名'@'主机'; -- 授予全局权限(谨慎使用) GRANT ALL PRIVILEGES ON *.* TO '用户名'@'主机'; 示例:
GRANT ALL PRIVILEGES ON mydb.* TO 'appuser'@'localhost'; FLUSH PRIVILEGES; -- 刷新权限使生效 -- 查看指定用户的权限 SHOW GRANTS FOR '用户名'@'主机'; -- 查看所有用户 SELECT User, Host FROM mysql.user; -- 撤销特定权限 REVOKE SELECT ON 数据库名.* FROM '用户名'@'主机'; -- 撤销所有权限 REVOKE ALL PRIVILEGES ON 数据库名.* FROM '用户名'@'主机'; -- 删除用户 DROP USER '用户名'@'主机'; 示例:
REVOKE ALL PRIVILEGES ON mydb.* FROM 'appuser'@'localhost'; DROP USER 'appuser'@'localhost'; ALL PRIVILEGES。localhost,如需远程访问需明确指定IP,并通过防火墙限制端口(3306)。SHOW GRANTS和SELECT User FROM mysql.user检查用户权限,清理无用账户。以上操作需在root用户或具有GRANT OPTION权限的用户下执行,确保权限管理安全规范。