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

相关推荐
小冷coding5 小时前
【MySQL】MySQL 插入一条数据的完整流程(InnoDB 引擎)
数据库·mysql
鲨莎分不晴6 小时前
Redis 基本指令与命令详解
数据库·redis·缓存
专注echarts研发20年6 小时前
工业级 Qt 业务窗体标杆实现・ResearchForm 类深度解析
数据库·qt·系统架构
周杰伦的稻香8 小时前
MySQL中常见的慢查询与优化
android·数据库·mysql
冉冰学姐8 小时前
SSM学生社团管理系统jcjyw(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面
数据库·ssm 框架·学生社团管理系统·多角色管理
nvd119 小时前
深入分析:Pytest异步测试中的数据库会话事件循环问题
数据库·pytest
appearappear9 小时前
如何安全批量更新数据库某个字段
数据库
·云扬·10 小时前
MySQL 常见存储引擎详解及面试高频考点
数据库·mysql·面试
羊小猪~~10 小时前
【QT】--文件操作
前端·数据库·c++·后端·qt·qt6.3
coding-fun11 小时前
电子发票批量提取导出合并助手
大数据·数据库