在 Ubuntu 上使用 MariaDB 调整权限,通常涉及用户创建、授权、撤销权限、刷新权限等操作。下面按常见场景说明。
sudo mysql
或(如果你设置了 root 密码):
mysql -u root -p
SELECT user, host FROM mysql.user;
SHOW GRANTS FOR '用户名'@'主机';
例如:
SHOW GRANTS FOR 'test'@'localhost';
CREATE USER 'test'@'localhost' IDENTIFIED BY '密码';
说明:
localhost:仅本地连接'%':允许任意远程连接(不安全,需谨慎)GRANT ALL PRIVILEGES ON 数据库名.* TO 'test'@'localhost';
GRANT ALL PRIVILEGES ON *.* TO 'test'@'localhost';
GRANT SELECT ON 数据库名.* TO 'test'@'localhost';
FLUSH PRIVILEGES;
GRANT INSERT, UPDATE ON 数据库名.* TO 'test'@'localhost';
FLUSH PRIVILEGES;
REVOKE DELETE ON 数据库名.* FROM 'test'@'localhost';
FLUSH PRIVILEGES;
ALTER USER 'test'@'localhost' IDENTIFIED BY '新密码';
SET PASSWORD FOR 'test'@'localhost' = PASSWORD('新密码');
DROP USER 'test'@'localhost';
sudo nano /etc/mysql/mariadb.conf.d/50-server.cnf
修改:
bind-address = 0.0.0.0
CREATE USER 'test'@'%' IDENTIFIED BY '密码';
GRANT ALL PRIVILEGES ON 数据库名.* TO 'test'@'%';
FLUSH PRIVILEGES;
sudo systemctl restart mariadb
⚠️ 远程权限存在安全风险,建议配合防火墙和强密码。
| 权限 | 说明 |
|---|---|
| SELECT | 查询 |
| INSERT | 插入 |
| UPDATE | 更新 |
| DELETE | 删除 |
| CREATE | 建表/库 |
| DROP | 删表/库 |
| ALL PRIVILEGES | 全部权限 |
如果你有具体需求(比如:只允许某个 IP、只允许读写、WordPress 权限、远程连接失败等),可以直接告诉我,我可以给你精确命令。