设置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表中的行值可以看到,只是用户+登录限制的组合才是唯一的。

相关推荐
q***7481 分钟前
数据库高安全—openGauss安全整体架构&安全认证
数据库·安全·架构
l***370916 分钟前
redis info 详解
数据库·redis·缓存
小蜗牛爱远行33 分钟前
mysql导入中文乱码问题
数据库·mysql
TangDuoduo000533 分钟前
【SQLite3 C语言接口】
数据库·sqlite
-大头.1 小时前
Redis内存碎片深度解析:从动态整理到核心运维实践
运维·数据库·redis
一 乐2 小时前
健康打卡|健康管理|基于java+vue+的学生健康打卡系统设计与实现(源码+数据库+文档)
android·java·数据库·vue.js·spring boot·微信小程序
ghie90902 小时前
使用Java实现用户的注册和登录流程
java·数据库·oracle
while(1){yan}2 小时前
MYSQL索引的底层数据结构
数据结构·数据库·mysql
by__csdn2 小时前
Spring Boot 全面解析
java·数据库·spring boot·后端·spring
她说..2 小时前
基于Redis实现的分布式唯一编号生成工具类
java·数据库·redis·分布式·springboot