温馨提示×

Debian MariaDB如何管理用户权限

小樊
49
2025-08-28 08:36:43
栏目: 云计算

在Debian系统上管理MariaDB用户权限,主要通过SQL命令操作,核心步骤如下:

1. 登录MariaDB

sudo mysql -u root -p 

输入密码后进入MariaDB控制台。

2. 创建用户

-- 创建本地用户(仅限localhost登录)  CREATE USER '用户名'@'localhost' IDENTIFIED BY '密码'; -- 创建可远程访问用户(指定IP或'%'代表任意IP,谨慎使用)  CREATE USER '用户名'@'IP地址' IDENTIFIED BY '密码'; 

示例:

CREATE USER 'appuser'@'localhost' IDENTIFIED BY 'App@123'; 

3. 授权权限

-- 授予数据库特定权限(如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; -- 刷新权限使生效  

4. 查看用户权限

-- 查看指定用户的权限  SHOW GRANTS FOR '用户名'@'主机'; -- 查看所有用户  SELECT User, Host FROM mysql.user; 

5. 撤销权限与删除用户

-- 撤销特定权限  REVOKE SELECT ON 数据库名.* FROM '用户名'@'主机'; -- 撤销所有权限  REVOKE ALL PRIVILEGES ON 数据库名.* FROM '用户名'@'主机'; -- 删除用户  DROP USER '用户名'@'主机'; 

示例:

REVOKE ALL PRIVILEGES ON mydb.* FROM 'appuser'@'localhost'; DROP USER 'appuser'@'localhost'; 

6. 安全建议

  • 最小权限原则:仅授予用户必要的权限,避免使用ALL PRIVILEGES
  • 限制远程登录:优先使用localhost,如需远程访问需明确指定IP,并通过防火墙限制端口(3306)。
  • 定期审计:通过SHOW GRANTSSELECT User FROM mysql.user检查用户权限,清理无用账户。

以上操作需在root用户或具有GRANT OPTION权限的用户下执行,确保权限管理安全规范。

0