设置MariaDB,创建新库,新用户并授权其可以从任何主机登录

OS:CENTOS 7

1、从系统进入MariaDB

mysql -u root -p

这里的root是指MariaDB的管理员用户,和系统的root不搭边,只是同名而已。

2、看下有哪些库、用户

MariaDB (none)> show databases;

MariaDB (none)>select user,host from mysql.user;

3、创建新库、新用户

MariaDB (none)> create database 要建的库名charset=utf8 ;

--charset=utf8 是非必选参数,这里是个人习惯,受的字符集的苦太多了。

MariaDB (none)> create user 要建的用户名@'%' identified by '密码';

--这里的 @'%' 表示允许该用户从任何点登录。

4、瞅一眼刚建好的库和用户权限

MariaDB (none)> show create database 刚建的库名;

MariaDB (none)> show grants for 建的用户名@'%';

5、将刚建的库的所有权限授权给刚新建的用户

MariaDB (none)> REVOKE ALL PRIVILEGES ON *.* from 用户名@'%';

--我习惯先把要用的用户的所有权限先清除。

MariaDB (none)> grant all on 刚建的库名.* to 刚建的用户@'%';

MariaDB (none)> show grants for 建的用户名@'%';

再看一眼,一眼万年。

MariaDB (none)> exit;

为啥要不限制登录点,又非得新建一个用户呢?别问,问就是:又想在外网用MariaDB又舍不得多个应用的后台数据库管理员曝露在公网上。就是又菜又爱玩,又穷又啥都想买。

--注意所有对用户的授权都是以 用户名@'%' 的形式出现的,这表示对MariaDB而言,用户天生就是加了登录点限制的存在。这从mysql.user表中的行值可以看到,只是用户+登录限制的组合才是唯一的。

相关推荐
2601_9632827733 分钟前
工程项目、政企采购为什么优先选择对讲机批量采购?
数据库
Doraemomo42 分钟前
SQLite数据库
数据库·sqlite
云贝教育-郑老师1 小时前
MySQL 的“黑匣子“:Performance Schema 把数据库内部变成一张可查的表
数据库·mysql
这个DBA有点耶3 小时前
同城双活落地的三座山:网络延迟、脑裂预防、反向同步
数据库·架构·dba
青春之我_XP3 小时前
MySQL 常用日期函数 实战指南
数据库·sql·mysql·数据分析·数据库开发·日期函数
Nturmoils3 小时前
sys_dump 备了库,角色和权限别漏在外面
数据库
接着奏乐接着舞。3 小时前
【2026】73道Redis 常见面试题与参考答案
数据库·redis·后端·缓存
其实防守也摸鱼4 小时前
权限提升与横向移动:从内网渗透到域控的完整技术图谱
运维·服务器·数据库·安全·github·copilot·渗透
人生百态,人生如梦5 小时前
每日论文解读(9.1)——ReToolSQL:面向鲁棒Text-to-SQL的Agentic强化学习与工具增强两阶段训练框架
数据库·sql