mysql撤销用户授权_mysql用户授权及撤销

mysql数据库服务在不做授权的情况下只允许数据库管理员从数据库服务器本机登录。

默认只有数据库管理员从数据库服务器本机登录才有授权权限

mysql -u root -p (本机登录mysql服务器)

mysql -u root -h 192.168.4.5 -p (远程连接mysql服务器)

方式1 在库外重置数据库管理员密码:

[root@localhost 桌面]# mysqladmin -hlocalhost -uroot -p password "123456"         #设置新密码123456

Enter password:                                                                                                                #输入旧密码

方式2 在不知道密码的情况下修改数据管理员密码:

[root@localhost 桌面]#/etc/init.d/stop                                                      停用mysql服务器

[root@localhost 桌面]#/etc/init.d/mysql start --skip-grant-tables          跳过授权表启用mysql服务器

[root@localhost 桌面]# mysql   -u root                                                     免密码进入mysql服务器

mysql> update mysql.user                                                  #直接修改mysql密码表

-> set password=password("123456")                            #密码设置成123456    -> where host="localhost";

Query OK, 1 row affected (0.03 sec)                                  #设置完成后重新启用mysql服务

用户授权:

格式1:grant 权限列表 on 数据库名 to 用户名;                    #授权用户权限,所有地址都能访问

格式2:grant 权限列表 on 数据库名 to 用户名@"客户端地址";   #授权指定地址客户端用户权限

格式3:grant 权限列表 on 数据库名 to 用户名@"客户端地址"  identified by  "密码"  with grant option;  #授权这个用户权限 设置访问密码并且赋予授权的权限

权限列表的表示:

usage     无权限

all     所有权限

insert,update(name,age),delete   多个权限

insert      某个权限

identified by "密码"     设置访问密码  可选项 若不设置没有访问密码

with grant option          让授权用户有授权权限,可选项,若不设置授权用户无授权权限

数据库名的表示方式:

*.*        #服务器上的所有库所有表

数据库名.*    #某个库

数据库名.表名    某个表

客户端地址的表示方式(可选项,不设置时,匹配所有地址):

%       所有地址

192.168..4.%      某个网段

192.168.4.205        一个IP

pc1.baidu.com    主机名

%.baidu.com     区域

查询授权命令:

mysql> show grants            #查看当前用户权限

mysql> select user()           #查看当前登录的用户是谁

授权权限grant:

grant all on *.* to root@"192.168.2.100" identified by "12345" with grant option;      #授权可以使用管理员root用户从客户端192.168.2.100登录,登录后有所有权限并有授权的权限,登录密码是 123456;

注:授权某个库权限时,库可以事先不存

user表                          用户有*.*权限 才记录在此表

db表                            记录授权用户对库的权限信息

tables_priv 表             记录授权用户对表的权限信息

columns_priv 记录授权用户对某个字段的权限信息

mysql> select user,host from mysql.user; #查看mysql数据库的所有用户

mysql>  select * from mysql.user where user="liang"\G; #查看用户liang的权限

mysql> show grants for root@"192.168.2.200"                     #查看授权用户从某个地址登陆的权限

权限撤销revoke(只有对数据库做过授权才能撤销):

mysql>  revoke     权限列表   on    数据库    from     用户名@“客户端地址”;

mysql>  revoke delete on *.* from root@"192.168.2.200";      # 撤销管理员用户从客户端192.168.2.200登录后,对所有库里所有表中记录的删除权限

mysql> revoke   insert,update   on    teadb.*   from root@"192.168.2.200";     # 撤销管理员用户从客户端192.168.2.200登录后,对某一个库(teadb)里所有表中记录的添加和更新权限(前提是对此表有此权限)

mysql> revoke    all    on    *.* from root@"192.168.2.200";       #撤销管理员从客户端地址192.168.2.200登录后对数据库的所有权限;

mysql> delete from mysql.user where  user="root" and host="192.168.2.200";   #删除user表的用户 所有权限撤销并且此用户在此客户端地址不能登陆

因为在撤销用户授权权限时all不包括撤销此用户授权权限 所以撤销此用户授权权限如下:

mysql> revoke grant option on *.* from root@"192.168.2.200";

注:给其他用户授权时不能给予超过自己拥有的权限

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/560114.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

js清空文本框的值_一个Vue.js实例控制字变大变小,含样式操作,flex布局。「603」...

这是一个用vue.js对css操作完成的实例。当然用了flex简单布局。一、先创建一个html文件,记得添加vue库文件。二、创建一盒容器vmdiv,用vue绑定它,测试vue绑定后的插入值text1效果。三、加入文本框和两个按钮。四、通过flex排序,让…

Linux mysql.plugin_Linux下MySQL安装

博主邮箱www.zzherfoxmail.com qq:11024719111 //获得以下所需的源代码包(文末附有安装包),并存放在/usr/local/src2 //与mysql相关:3 boost_1_59_0.tar.gz cmake-3.6.2.tar.gz mysql-5.7.16.tar.gz45 //安装cmake前的依赖包的安装6 //检查gc…

mysql mybatis 工具类_我肝了一个星期,为你们整理出了mybatis程序配置教程

1、搭建实验数据库我们创建一个mybatis实验数据库,并创建一个user表为后续实验准备2、IDEA新建项目,连接数据库新建一个普通的maven项目删除src目录,作为父工程pom.xml中导入相关的maven依赖1、 MySQL驱动2、 MyBatis驱动3、 junit驱动连接我…

python access 源码_连接的微软Access数据库,这是一个轻量级的Python模块(MDB格式)...

A lightweight python module to connect Microsoft Access Database. the module is to use ADO engine through Win32 COM. the module need another Win32 API module, you can find it at the below url:Pyminiado是一个轻量级的Python访问Access数据库的接口,单…

mysql gt resource_实用干货,MYSQL这么用就对啦

本文主要梳理了 SQL 的基础用法,会涉及到以下方面内容:SQL大小写的规范数据库的类型以及适用场景SELECT 的执行过程WHERE 使用规范MySQL 中常见函数子查询分类如何选择合适的 EXISTS 和 IN子查询了解 SQLSQL 是我们用来和数据打交道的方式之一&#xff0…

python 查看当前目录_Python学习第156课--ls的运用、环境变量以及PATH

【每天几分钟,从零入门python编程的世界!】之前简单的介绍了Linux中几个简单的命令。这节再深入一点介绍下 ls 的运用。lsls相当于是list的简写,它的作用是把我们当前目录中的文件列举出来。ls -l把当前目录下的文件以及它的具体信息列举出来…

python对数组的操作_Python对数组的基本操作

# codingutf-8Created on 2014-3-29author: Administrator创建并打印数组arr ["aex", "bfe", "mpilgrim", "zddd", "example"];print(arr);#[aex, bfe, mpilgrim, zddd, example]print(arr[2]);#mpilgrim数组的负索引li[-n…

python菜单函数_Python 自学笔记- 列表及其内置函数

0. 列表都可以存放一些什么东西?我们可以说Python 的列表是一个打了激素的数组,如果把数组比喻成集装箱,那么 Python 的列表就是一个大仓库,Ta 可以存放我们已经学习过的任何数据类型。mix [1,"张三",3.14, [1,"李…

按120分计算成绩 mysql_Mysql实用教程试卷B.doc

.上 装 订 线系名: 班级: 姓名: 学号: 考试日期:下 住 装 订 线河南教育学院2014—2015学年第二学期期末考试软件学院2014级计算机信息管理专业普通专科班《MySQL实用教程》试卷B卷题号一二三四总分分数得分评卷人一、…

java double==Double_java之double类型数值的比较

先看demo:public classL26 {/***paramargs*/public static voidmain(String[] args) {//TODO Auto-generated method stub//double a 300000;double x 300000.00000000003;//double比较,小数点后有效位double y 300000.000000000003;//主要注意的是double类型直接/&…

莫烦python博客_《莫烦Python》笔记 -- numpy部分

个人感觉,在numpy里,从说法上,数组与矩阵可以互换1.1 numpy & pandas有什么用?1.2 numpy & pandas的安装安装Anaconda2.1 numpy属性import numpy as np# 将一个列表转化为矩阵array np.array([[1,2,3],[2,3,4]])# 查看矩…

java 内存情况_java查看jvm内存使用情况

java查看jvm内存使用情况(2012-03-22 15:50:54)标签:jvm内存虚拟机分配itjava.lang.Runtime类提供了查看当前JVM内存的使用情况。每个java实例(即虚拟机实例)只有一个Runtime的实例,通过Runtime.getRuntime()可以得到当前虚拟机中的Runtime实例对象。Run…

java 密码生成器_Java课程设计-随机密码生成器

1.团队课程设计博客链接2.个人负责模板设计程序运行界面,数据的输入,判断数据输入类型的错误,判断密码类型是否选择。3.自己的代码提交记录截图4自己负责模块或任务详细说明(一)总体设计1.系统主要功能(1)输入生成密码长度;(2)判断…

java 多个 panel_java – 在JFrame中组织多个JPanel的好方法是...

我想要做的是在框架内组织五个单独的JPanel.输出应该是这样的:顶部会有一个面板.顶部面板正下方的两个面板垂直分割空间,然后另外两个面板水平分割剩余空间.我无法弄清楚如何组织如上所述的面板,我认为这是因为我只是不知道正确的语法.所以任何帮助或建议都非常感谢…

cad二次开发 java_应用Java语言进行AutoCAD2000二次开发.PDF

应用Java语言进行AutoCAD2000二次开发实用第一 智慧密集刘良华袁英战朱东海摘 要介绍了应用Java语言进行AutoCAD二次开发的方法和思路。关键字 二次开发,AutoCAD定制,COM,Java编程Mic Mod- AcadApp.roBoft的组件对象模型(COM&…

中南民族大学java考试_中南民族大学Java语言程序设计期末试卷A卷

科目序号:6002 A卷《Java语言程序设计》期末试卷(试卷总分:100分,考试时间:120分钟,答案写在答卷纸上)一.判断题(每题1分,共10分)1.无论Java源程序包含几个类的定义,若该源程序文件以…

java集合的遍历_Java集合之遍历

在Java开发中,集合,可以说使我们必然要使用到的一个框架。对集合的遍历也是我么经常要进行的操作,而遍历操作又有多种,下面就对集合遍历进行以下总结。一、List、Set的遍历List与Set都继承了Collection接口,从某种程度…

pyecharts本地文件_python数据可视化-pyecharts插件使用文档

pyecharts是百度开源的可视化插件,可以将设计的可视化图表以html格式保存,配合jupyter可以一键生成动态的html数据分析报告。pyecharts和matplotlib的区别在于,pyecharts有更加强大交互的可视化和嵌入html的功能,pyecharts缺点在于…

java 泛型 子类_Java泛型:要求泛型成为某种类型的子类

我有一个抽象的泛型类:public abstract class AbstractMessageHandler{public abstract List getTypesOfMessages();public abstract void handleMessage(String message, CometClient client);public T setResponseValues(AbstractMessage request, T response ){r…

java的创建管理员对象_java--更改管理员密码,请列位帮忙看看有没有更好的实现方式...

需求说明:输入旧的用户名和密码,如果正确,方有权限更新,从键盘获取新密码,进行更新实现思路:1、创建管理员类的对象;2、利用while实现循环执行import java.util.Scanner;public class ChangePas…