Mysql用户管理

  • 本人使用的是Mysql8.0的版本,可能会有一些语句不兼容;

1.用户管理

  • 在Mysql中支持创建账户,并给账户分配权限;例如只拥有数据库A操作的权限、只拥有数据库B中某些表的权限,只拥有数据库B中某系表的读取权限

1.1 查询用户

  • 使用安装后产生的mysql库中的user表;查询对应的值,其中host是允许连接地址,远程连接的时候通常配置为%

1.2用户管理

  • 创建用户
    -- 语法
    create user '用户名'@'连接者的IP地址' identified by '密码'
  • 修改用户
    -- 语法
    rename user '用户'@'密码' to '新用户名'@'ip地址'
  • -- 修改用户
    rename user 'testuser'@'localhost' to 'whj'@'localhost';
  • 修改密码
    -- 语法
    set password for '用户名'@'IP' = Password('新密码');
    -- 修改密码
    set password for 'whj'@'localhost' = Password('XXXXX');
  • 笔记截图

2.授权管理

  • 创建好用户之后,就可以为用户进行授权了

  • 授权
    grant 权限 on 数据库.表 to '用户@'ip地址'
  • grant all privileges on testlearn.* to 'whj'@'localhost'; -- 赋予一个库的所有权限
  • 执行完成之后发现,用户whj只有一个库的使用权限,并且不能够创建新的数据库;

  • grant all privileges on *.* to 'whj'@'localhost'; -- 拥有数据库的所有权限
    grant all privileges on testlearn.student 'whj'@'localhost'; -- 用户拥有student表的所有权限
    grant select privileges on testlearn.student to 'whj'@'localhost'; --用户拥有student表的查询权限
    grant select,insert privileges on testlearn.* to 'whj'@'localhost'; -- 拥有数据库testlearn所有表的插入和修改权限
  • 每次授予权限之后需要刷新一下权限FLUSH PRIVILEGES;

  • 查看授权
  • --语法格式
    show grants for '用户'@'ip地址' -- 查看权限
    show grants for 'whj'@'localhost';
  • 取消授权
    -- 语法格式
    revoke 权限 on 数据库.表 from '用户'@'ip地址' revoke all PRIVILEGES on test.* from 'whj'@'localhost';

3.整体代码

-- select user,authentication_string,host from user;

-- 创建用户
CREATE user 'testuser'@'localhost' IDENTIFIED by '123456';
-- 查看创建后的用户
select user,authentication_string,host from user;
-- 修改用户
rename user 'testuser'@'localhost' to 'whj'@'localhost';
-- 修改密码
-- set password for 'whj'@'localhost' = Password('1234567'); -- === 授权管理
grant all privileges on testlearn.* to 'whj'@'localhost';
-- 一般执行完成授权之后需要进行权限的刷新
FLUSH PRIVILEGES; grant all privileges on test.* to 'whj'@'localhost'; FLUSH PRIVILEGES; -- 查看权限
show grants for 'whj'@'localhost'; -- 取消授权
revoke all PRIVILEGES on test.* from 'whj'@'localhost';
FLUSH PRIVILEGES;

注:一般在公司,数据库的管理由DBA同一执行;

Mysql的用户管理与授权的更多相关文章

  1. Cockroachdb 四、用户管理及授权

    四 用户管理及授权 用户管理 简介# Create a user:cockroach user set <username> <flags> # List all users: ...

  2. mysql之用户管理

    本文内容: 用户的介绍 查看用户 创建用户帐户 修改账户 删除帐户 关于匿名用户 首发日期:2018-04-19 用户的介绍: mysql的客户端连接是以用户名来登录服务端. 服务端可以对用户的权限来 ...

  3. MySQL 安装 用户管理 常用命令

    MySQL目录 数据库概览   数据库介绍 Why Choose MySQL MySQL的前世今生 MySQL的安装   Windows安装MySQL5.721 installer版 Windows安 ...

  4. MySQL:用户管理

    用户管理部分 一.数据库不安全因素 非授权用户对数据库的恶意存取和破坏: 数据库中重要或敏感的数据被泄露: 安全环境的脆弱性: 二.数据库安全的常用方法 用户标识和鉴别[使用口令鉴别]::该方法由系统 ...

  5. mysql用户管理及授权

    以mariadb5.5版本为例 新建用户 登录mariadb # mysql -uroot -p Enter password: Welcome to the MariaDB monitor. Com ...

  6. 辛星解读mysql的用户管理

    可能做开发的多半不太关注这方面,可是要说到做运维.那就不能不关注了.由于我们都知道,root的权限太大了.不是随便能用的.我们平时最好用一些比較低的权限的用户.这样会让我们的安全性大大提高,也能防止我 ...

  7. Mysql 添加用户和数据库授权

    注:我的运行环境是widnows xp professional + MySQL5.0 一, 创建用户: 命令:CREATE USER 'username'@'host' IDENTIFIED BY ...

  8. mysql:用户管理、索引、视图、函数、存储过程

    #创建一个用户并设置密码,注意IP地址要是登录mysql电脑的IP地址 USE mysql CREATE USER lisi@'192.168.149.1' IDENTIFIED BY "1 ...

  9. ubuntu下mysql的用户添加、授权、取消授权

    一.添加用户 新增用户会有两种方式的,一种是使用create命令,另一种是直接回使用grant 命令 create user 名字@登陆地址 identified by "密码"; ...

随机推荐

  1. 多选菜单shell脚本

    有 很多方法 可以读取Bash脚本中的用户输入. 但是,允许用户键入输入会带来一些问题. 主要问题是输入验证,您必须在其中考虑所有可能的输入. 解决此问题的一种简单方法是为Bash脚本创建一个多选菜单 ...

  2. 深入理解 React 的 Virtual DOM

    React在前端界一直很流行,而且学起来也不是很难,只需要学会JSX.理解State和Props,然后就可以愉快的玩耍了,但想要成为React的专家你还需要对React有一些更深入的理解,希望本文对你 ...

  3. Spring源码-IOC部分-循环依赖-用实例证明去掉二级缓存会出现什么问题【7】

    实验环境:spring-framework-5.0.2.jdk8.gradle4.3.1 Spring源码-IOC部分-容器简介[1] Spring源码-IOC部分-容器初始化过程[2] Spring ...

  4. Nginx 根据不同的域名来代理转发内部主机-HTTP和HTTPS

    一.需求 由于公司只有一个公网,很多 web 项目都想通过 80 或 443 端口来访问,所以需要 Nginx 充当公司网关. 把唯一的公网 IP 80 端口和 443 端口跟 Nginx 网关主机 ...

  5. new Date时间格式转换方法

    平时经常会使用到时间转换,组件库已经有很多组件可以自动生成时间类型了,但是底层的封装方法还是得有 获取当前时间 new Date()  或者自己拥有一个毫秒时间 方法如下 /** * title: 时 ...

  6. JAVA多线程学习十二 - Semaphere同步工具

    java 中Semaphere可类比操作系统信号量,硬件资源如IO.内存.磁盘等都是有固定量的,多个程序需要竞争这些资源,没有资源就需要被挂起. 一.类和方法摘要 构造函数: public Semap ...

  7. 一次线上服务高 CPU 占用优化实践 (转)

    线上有一个非常繁忙的服务的 JVM 进程 CPU 经常跑到 100% 以上,下面写了一下排查的过程.通过阅读这篇文章你会了解到下面这些知识. Java 程序 CPU 占用高的排查思路 可能造成线上服务 ...

  8. uniapp自定义顶部搜索框兼容微信小程序

    zhuanzai:  uniapp自定义顶部搜索框兼容微信小程序 自定义组件 navbarvue (胶囊底部高度 - 状态栏的高度) + (胶囊顶部高度 - 状态栏内的高度) = 导航栏的高度 < ...

  9. 论java中System.arrayCopy()与Arrays.copyOf()的区别

    如果我们想拷贝一个数组,我们可能会使用System.arraycopy()或者Arrays.copyof()两种方式.在这里,我们将使用一个比较简单的示例来阐述两者之间的区别. 首先先说System. ...

  10. CentOS 6.4x64安装部署zabbix-2.4.5

    以下内容来自于http://www.iyunv.com/thread-62087-1-1.html 补充一点,按照原文安装万之后zabbix页面会提示 zabbix server is not run ...