DCL(Data Control Language)

  使用MySQL数据库默认使用的都是 root 用户,超级管理员,拥有全部的权限。

  在一个公司里面的数据库服务器上面可能同时运行这很多个项目的数据库,应该根据不同的项目建立不同的用户,分配不同的权限来管理和维护数据库。

  mysqld 是 MySQL 的主程序,服务器端。mysql 是 MySQL的命令行工具,客户端。

  

一、创建用户

  1、语法

CREATE USER '用户名'@'主机名' IDENTIFIED BY '密码';

  2、关键字说明

关键字 说明
'用户名' 将创建的用户名
'主机名' 指定该用户在哪个主机上可以登陆,如果是本地用户可用 localhost,如果想让该用户可以
从任意远程主机登陆,可以使用通配符%
'密码' 该用户的登陆密码,密码可以为空,如果为空则该用户可以不需要密码登陆服务器

  3、案例

    ① 创建 user1 用户,只能在 localhost 这个服务器登录 MySQL 服务器,密码为 123

create user 'user1'@'localhost' identified by '123';

    ② 创建 user2 用户可以在任何电脑上登录 mysql 服务器,密码为 123

create user 'user2'@'%' identified by '123';

    注意:创建的用户名都在 mysql 数据库的 user 表中可以查看到,密码经过了加密。

二、删除用户

  1、语法

DROP USER '用户名'@'主机名';

  2、案例

    删除 user2

drop user 'user2'@'%';

三、修改用户密码

  1、修改管理员密码

    (1)语法

mysqladmin -uroot -p password 新密码

    (2)具体操作

      ① 将 root 管理员的新密码改成 123456

      ② 要求输入旧密码

      ③ 使用新密码登录

  2、修改普通用户密码

    (1)基本语法

update user set password = password('新密码') where user = '用户名'
set password for '用户名'@'主机名' = password('新密码');

    注意:需要在登录 MySQL 的情况下操作,新密码要加单引号。password 是一个内置函数,对密码进行加密。

    (2)具体操作

      ① 将 ‘user1’@‘localhost’ 的密码改成 ‘666666’

      ② 使用新密码登录,老密码无法使用

       

  3、MySQL 中忘记了 root 用户的密码?

    (1)使用管理员运行 cmd --> net stop mysql  停止 mysql 服务

    (2)在cmd中使用无验证方式启动 mysql 服务:

mysqld --skip-grant-tables

    (3)再打开新的 cmd 窗口,直接输入 mysql 命令,敲回车,就可以登录成功。

    (4)然后使用 mysql 数据库

user mysql;

    (5)重新设置 root 用户的密码

update user set password = password('新密码') where user = 'root';

    (6)关闭上面的两个窗口

    (7)打开任务管理器,手动结束 mysqld.exe 的进程

    (8)以管理员打开 cmd ,重新启动 mysql 服务

net start mysql

    (9)使用新密码登录

mysql -uroot -proot

  

四、查询用户

  MySQL 数据库的用户信息都存放在 mysql 数据库中的 user表

  查询所有用户语法

user  mysql;
select * from user;

  注意:通配符,% 表示可以在任意主机使用用户登录数据库。

DCL 管理用户的更多相关文章

  1. SQL分类之DCL:管理用户、授权

    DCL:管理用户.授权 SQL分类: DDL:操作数据库和表 DML:增删改表中的数据 DQL:查询表中的数据 DCL:管理用户.授权 DBA:数据库管理员 DCL:管理用户.授权 1.管理用户 1. ...

  2. DCL:管理用户

    1. 管理用户 (1) 查询用户 MySQL把用户的数据存放在 "mysql" 数据库的 "user" 表中. SELECT * FROM user; (2) ...

  3. MySQL学习——管理用户权限

    MySQL学习——管理用户权限 摘要:本文主要学习了使用DCL语句管理用户权限的方法. 了解用户权限 什么是用户 用户,指的就是操作和使用MySQL数据库的人.使用MySQL数据库需要用户先通过用户名 ...

  4. MVC4做网站后台:用户管理 —用户

    这块进行用户管理,可以浏览.查询已注册的用户,修改用户资料,删除用户等.没有做添加用户,不知是否必要.列表页还是使用easyui的datagrid.这个思路跟用户组的方式差不多. 1.接口Interf ...

  5. 【Java EE 学习 30】【闪回】【导入导出】【管理用户安全】【分布式数据库】【数据字典】【方案】

    一.闪回 1.可能的误操作 (1)错误的删除了记录 (2)错误的删除了表 (3)查询历史记录 (4)撤销已经提交了的事务. 2.对应着以上四种类型的误操作,有四种闪回类型 (1)闪回表:将表回退到过去 ...

  6. JavaWeb学习之tomcat安装与运行、tomcat的目录结构、配置tomcat的管理用户、web项目目录、虚拟目录、虚拟主机(1)

    1.tomcat安装与运行双击tomcat目录下的bin/startup.bat,启动之后,输入http://localhost:8080,出现安装成功的提示,表示安装tomcat成功 2.tomca ...

  7. 配置Tomcat6的管理用户

    在Tomcat上发布war之前需要配置一个管理用户以进入上传页面,而配置就是通过修改/usr/local/tomcat6/conf/tomcat-users.xml这个文件进行的.下面是修改后的文字: ...

  8. 无责任Windows Azure SDK .NET开发入门篇三[使用Azure AD 管理用户信息]

    三.使用Azure AD管理用户信息 在上一章我们采用OpenID的方案和Azure AD交互进行身份验证,本章节我们继续了解如何在Azure AD中创建用户,列出用户信息,修改用户信息和删除用户信息 ...

  9. 关于 ASP.NET MVC 4 如果管理用户

    很久没上来写博客,因为自己没写博客的日子里去学了一下OBJECTIVE-C 和 ASP.NET MVC.最近在学ASP.NET MVC 4,有个问题一直在困扰着我,就是怎样管理用SIMPLE MEMB ...

随机推荐

  1. Netty对WebSocket的支持

    WebSocket长连接 一.创建服务端代码 1.MyServer 类 public class MyServer { public static void main(String[] args) t ...

  2. Jenkins 设置 源码库浏览器

    玩转Jenkins - 源码库浏览器功能如何使用 - 简书https://www.jianshu.com/p/22f72effb4ef Jenkins上踩过的那些坑 - 简书https://www.j ...

  3. [E2E_L9]GOMFCTemplate的融合进阶

    在前面出现的融合方法中,最突出的问题就是每次运算,都需要将整个推断的过程全部操作一遍,这样肯定是费时间的--所以我们需要将能够独立的地方独立出来,但是这个过中非常容易出现溢出的错误--经过一段时间的尝 ...

  4. oracle导入及导出dmp文件

    导出数据库步骤: exp 用户名/密码@实例名 file=导出的dmp文件存放路径(绝对路径) log=导出日志存放路径(建议记录log文件,方便后续核实数据是否完整导出和导入) 导入数据库步骤: 1 ...

  5. 消息发送函数OSMboxPostOpt()

    消息发送函数OSMboxPostOpt() 作用,ucos 3中的消息邮箱,具有广播功能,发送一条消息就可以使所有等待该消息的任务进入就绪状态,从而完成消息分发功能,具有一个消息唤醒多个任务的机制.

  6. 扩展Redis的Jedis客户端,哨兵模式读请求走Slave集群

    原 扩展Redis的Jedis客户端,哨兵模式读请求走Slave集群 2018年12月06日 14:26:45 温故而知新666 阅读数 897   版权声明:本文为博主原创文章,遵循CC 4.0 b ...

  7. git删除远程.idea目录

    git删除远程.idea目录 1. 登录 Administrator@USER-20180708AB MINGW32 / (master) $ git config --global user.nam ...

  8. elasticsearch 管理常用命令集合

    elasticsearch rest api遵循的格式为: curl -X<REST Verb> <Node>:<Port>/<Index>/<T ...

  9. 整理通常的SQL SERVER优化流程

    1.SQL脚本或存储过程,跟踪存储过程的执行时长和reads,不正常的情况下,表明语句.存储过程有优化空间,通常是未加索引,或者索引的字段升降序进行调用: A:脚本是否需要新增或复用现有索引: B:脚 ...

  10. C++静态成员变量必须定义

    静态成员变量在类中仅仅是声明,没有定义,所以要在类的外面定义,实际上是给静态成员变量分配内存,否则不能使用,编译不会通过. class A { public: static int a; //声明但未 ...