温馨提示×

ubuntu mariadb如何调权限

小樊
45
2026-10-25 04:36:26
栏目: 云计算

在 Ubuntu 上使用 MariaDB 调整权限,通常涉及用户创建、授权、撤销权限、刷新权限等操作。下面按常见场景说明。


一、登录 MariaDB

sudo mysql

或(如果你设置了 root 密码):

mysql -u root -p

二、查看现有用户和权限

查看用户

SELECT user, host FROM mysql.user;

查看某用户权限

SHOW GRANTS FOR '用户名'@'主机';

例如:

SHOW GRANTS FOR 'test'@'localhost';

三、创建用户并授权(最常见)

1️⃣ 创建用户

CREATE USER 'test'@'localhost' IDENTIFIED BY '密码';

说明:

  • localhost:仅本地连接
  • '%':允许任意远程连接(不安全,需谨慎)

2️⃣ 授权(核心)

授予某个数据库全部权限

GRANT ALL PRIVILEGES ON 数据库名.* TO 'test'@'localhost';

授予所有数据库权限(不推荐)

GRANT ALL PRIVILEGES ON *.* TO 'test'@'localhost';

只给查询权限

GRANT SELECT ON 数据库名.* TO 'test'@'localhost';

3️⃣ 刷新权限(必须)

FLUSH PRIVILEGES;

四、修改用户权限

追加权限

GRANT INSERT, UPDATE ON 数据库名.* TO 'test'@'localhost';
FLUSH PRIVILEGES;

撤销权限

REVOKE DELETE ON 数据库名.* FROM 'test'@'localhost';
FLUSH PRIVILEGES;

五、修改用户密码

MariaDB 10.4+

ALTER USER 'test'@'localhost' IDENTIFIED BY '新密码';

老版本

SET PASSWORD FOR 'test'@'localhost' = PASSWORD('新密码');

六、删除用户

DROP USER 'test'@'localhost';

七、允许远程访问(谨慎)

1️⃣ 修改绑定地址

sudo nano /etc/mysql/mariadb.conf.d/50-server.cnf

修改:

bind-address = 0.0.0.0

2️⃣ 创建远程用户

CREATE USER 'test'@'%' IDENTIFIED BY '密码';
GRANT ALL PRIVILEGES ON 数据库名.* TO 'test'@'%';
FLUSH PRIVILEGES;

3️⃣ 重启服务

sudo systemctl restart mariadb

⚠️ 远程权限存在安全风险,建议配合防火墙和强密码。


八、常见权限类型

权限 说明
SELECT 查询
INSERT 插入
UPDATE 更新
DELETE 删除
CREATE 建表/库
DROP 删表/库
ALL PRIVILEGES 全部权限

如果你有具体需求(比如:只允许某个 IP、只允许读写、WordPress 权限、远程连接失败等),可以直接告诉我,我可以给你精确命令。

0 踩