MySQL8.0 创建用户及授权 - 看这篇就足够了
什么时候会用到
- 对接外系统时,需要给其余系统开放访问权限
- 本系统中,分权限管理数据,防止root权限删库跑路
mysql版本
MySql8.0+
具体步骤
1.命令行进入MySql
使用 mysql -u#UserName -p#PassWord 命令进入MySql
#UserName 代表你的MySql用户名
#PassWord 代表你的MySql密码
本狗的用户名是root,密码是root
mysql -uroot -proot
2.进入数据库
如果没有创建数据库则先使用命令,若已存在数据库则跳过此步骤
create database #databaseName;
#databaseName 代表你操作的数据库
本狗要创建的是b2b数据库,切记加上分号;
create database b2b;
use databaseName;
#databaseName 代表你操作的数据库
本狗要操作的是b2b数据库,切记加上分号;
use b2b;
3.创建用户
create user '#userName'@'#host' identified by '#passWord';
#userName 代表你要创建的此数据库的新用户账号
#host 代表访问权限,如下
- %代表通配所有host地址权限(可远程访问)
- localhost为本地权限(不可远程访问)
- 指定特殊Ip访问权限 如10.138.106.102
#passWord 代表你要创建的此数据库的新用密码
本狗要创建的用户是testUser,密码是Haier...123,并且可远程访问
️密码强度需要大小写及数字字母,否则会报密码强度不符合
️用户名如果重复,会报错ERROR 1396 (HY000): Operation CREATE USER failed for 'testUser'@'%'
create user 'testUser'@'%' identified by 'Haier...123';
4.查看用户
进入mysql系统数据库
use mysql;
查看用户的相关信息
select host, user, authentication_string, plugin from user;
use mysql;
select host, user, authentication_string, plugin from user;
若展示的信息中有刚加入的用户testUser,则添加成功。切记查看完要切换回操作的数据库,本狗需要操作的是b2b
use b2b;
5.用户授权
grant #auth on #databaseName.#table to '#userName'@'#host';
#auth 代表权限,如下
- all privileges 全部权限
- select 查询权限
- select,insert,update,delete 增删改查权限
- select,[...]增...等权限
#databaseName 代表数据库名
#table 代表具体表,如下
- *代表全部表
- A,B 代表具体A,B表
#userName 代表用户名
#host 代表访问权限,如下
- %代表通配所有host地址权限(可远程访问)
- localhost为本地权限(不可远程访问)
- 指定特殊Ip访问权限 如10.138.106.102
本狗赋予b2b数据库area_code表增删改差权限
grant select,insert,update,delete on b2b.area_code to 'testUser'@'%';
6.刷新
切记一定要刷新授权才可生效
flush privileges;
7.查看用户权限
show grants for '#userName'@'#host';
#userName 代表用户名
#host 代表访问权限,如下
- %代表通配所有host地址权限(可远程访问)
- localhost为本地权限(不可远程访问)
- 指定特殊Ip访问权限 如10.138.106.102
本狗要查看的是testUser
show grants for 'testUser'@'%';
8.验证
使用navicat等可视化工具验证
9.撤销权限
revoke #auth on #databaseName.#table from '#userName'@'#host';
#auth 代表权限,如下
- all privileges 全部权限
- select 查询权限
- select,insert,update,delete 增删改查权限
- select,[...]增...等权限
#databaseName 代表数据库名
#table 代表具体表,如下
- *代表全部表
- A,B 代表具体A,B表
#userName 代表用户名
#host 代表访问权限,如下
- %代表通配所有host地址权限(可远程访问)
- localhost为本地权限(不可远程访问)
- 指定特殊Ip访问权限 如10.138.106.102
本狗要撤销testUser用户对b2b数据库中的area_code表的增删改差权限
revoke select,insert,update,delete on b2b.area_code from 'testUser'@'%';
本狗再查看用户权限
show grants for 'testUser'@'%';
10.删除用户
drop user '#userName'@'#host';
#userName 代表用户名
#host 代表访问权限,如下
- %代表通配所有host地址权限(可远程访问)
- localhost为本地权限(不可远程访问)
- 指定特殊Ip访问权限 如10.138.106.102
本狗要删除用户是testUser
drop user 'testUser'@'%';
我是JavaDog,谢谢博友耐心看完, 抽空来我狗窝瞅瞅呗 blog.javadog.net
MySQL8.0 创建用户及授权 - 看这篇就足够了的更多相关文章
- CentOS如何安装MySQL8.0、创建用户并授权的详细步骤
# 安装相关软件 yum install -y gcc gcc-c++ openssl openssl-devel ncurses ncurses-devel make cmake # 获取MySQL ...
- python 全栈开发,Day63(子查询,MySQl创建用户和授权,可视化工具Navicat的使用,pymysql模块的使用)
昨日内容回顾 外键的变种三种关系: 多对一: 左表的多 对右表一 成立 左边的一 对右表多 不成立 foreign key(从表的id) refreences 主表的(id) 多对多 建立第三张表(f ...
- Mysql 创建用户并授权
设置MySQL用户账号,指定哪个用户可以连接服务器,从哪里连接,连接后能做什么. MySQL管理员应该知道如何设置MySQL用户账号,指出哪个用户可以连接服务器,从哪里连接,连接后能做什么? GRAN ...
- mysql(单表查询,多表查询,MySQl创建用户和授权,可视化工具Navicat的使用)
单表查询 语法: 一.单表查询的语法 SELECT 字段1,字段2... FROM 表名 WHERE 条件 GROUP BY field HAVING 筛选 ORDER BY field LIMIT ...
- 制作MySQL的Windows服务+创建用户及授权
在上一篇随笔中详述了MySQL的Windows 64位版本的安装,以及初始化操作.启动服务端.客户端连接.一些基本的文件操作等.然而在进行这些操作的时候,需要我们去输入一长串的路径和命令才能 ...
- oracle11g 创建用户并授权
Oracle创建用户并给用户授权查询指定表或视图的权限用sys账户登录数据库进行如下操作: CREATE USER NORTHBOUND IDENTIFIED BY NORTHBOUND DEFAUL ...
- MySQL创建用户与授权(CentOS6.5)
1.相关SQL语句 #创建用户与授权方法 ##本地访问 create user 'zend'@'localhost' IDENTIFIED BY '123456'; grant ALL privile ...
- Day054--MySQL, 创建用户和授权, 数据类型, 枚举和集合, 约束,唯一, 主键,外键
创建用户和授权 1.创建用户: # 指定ip:192.118.1.1的mjj用户登录 create user 'mjj'@'192.118.1.1' identified by '123'; # 指定 ...
- oracle创建表空间、创建用户、授权角色和导入导出用户数据
使用数据库管理员身份登录 -- log as sysdba sqlplus / as sysdba; 创建临时表空间 -- create temporary tablespace create tem ...
- Mysql创建用户并授权以及开启远程访问
Mysql创建用户并授权以及开启远程访问 一.创建用户并授权 1.登录mysql mysql -u root -p 2.创建数据库 create database test;//以创建test ...
随机推荐
- xmapp
下载软件 并开启Apache 创建文本 `<?php echo " 姓名:丁文博 学号:20211306 才艺:打篮球 专业:信息安全 学校:北京电子科技学院 ";` 在网页 ...
- 第08组Beta冲刺(2/4)
队名 八组评分了吗 组长博客链接(2分) 组员1李昕晖(组长) 过去两天完成了哪些任务 文字/口头描述 12月9号了解各个小组的进度与难以攻破的地方,晚上安排开会,安排新的冲刺任务. 重新分配小组及个 ...
- Python爬虫iP被封的怎么办?
对于经常做数据爬虫的程序员来说,除了要写出简洁方便的代码.还需要解决的是网站反爬的问题.有时候我们在爬取数据的时候突然报出错或者目标网站错误代码. 比如说:403 Forbidden错误," ...
- 石子合并问题DP
START: 2021-08-10 14:29:04 1.问题描述: 有N堆石子排成一排,每堆石子有一定的数量.现要将N堆石子并成为一堆.合并的过程只能每次将相邻的两堆石子堆成一堆,每次合并花费的代价 ...
- 前端实现文件上传——angular版本+ant design
html代码 <nz-upload *ngIf="uploadParams.parserTypeId==3 || uploadParams.parserTypeId==4" ...
- 问题记录04:记录两种C#引用C++DLL报错的解决方法。
两种C#引用C++DLL报错的解决方法 无法加载DLL"***.dll":找不到指定的模块(异常来自HRESULT:0x8007007E) 解决方法:参考链接 试图加载格式不正确的 ...
- 对表单input输入框加特殊符号(正斜杠和反斜杠)校验
<p>图片名称:</p><input type="text" name="afterName" style="heigh ...
- .NET实验二
实验名称:实验二 面向对象程序设计 一. 实验目的 1. 理解类的定义.继承等面向对象的的基本概念: 2. 掌握 C#语言定义类及其各种成员(字段,属性,方法)的方法: 3. 掌握方法覆盖的应用: 4 ...
- unity 开发小技巧之C#篇 ----持续更新
1.ToString()方法是可以重写的 2.Start()方法可以主动调用 3.接口可以直接使用 jiekou?.Invoke() 来调用所有继承该接口的方法 4.Json 列表和服务器需要的数据不 ...
- git操作回顾,从零入手
1.可在极狐或者git上直接通过http克隆项目,或者通过ssh密钥,这样就不用每次上传代码需要输入密码和验证 ssh密钥参考如下 (80条消息) git如何生成ssh密钥 git生成配置ssh密钥k ...