在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权限的用户下执行,确保权限管理安全规范。