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. 在IDEA上对SpringBoot项目配置Devtools实现热部署

    spring为开发者提供了一个名为spring-boot-devtools的模块来使Spring Boot应用支持热部署,提高开发者的开发效率,无需手动重启Spring Boot应用. devtool ...

  2. Xamarin图表开发基础教程(4)OxyPlot框架

    Xamarin图表开发基础教程(4)OxyPlot框架 XamaminAndroid中绘制线图OxyPlotAndroidDemo [示例1-1:OxyPlotAndroidDemo]下面实现线图的绘 ...

  3. CentOS离线状态下安装Python3.7.0

    1.下载python安装包以及依赖的包 python安装包:Python-3.7.0 下载地址:www.python.org/ftp/python/3.7.0/Python-3.7.0.tar.xz ...

  4. 两种Redis持久化原理的详解

    Redis为持久化提供了两种方式: RDB:在指定的时间间隔能对你的数据进行快照存储. AOF:记录每次对服务器写的操作,当服务器重启的时候会重新执行这些命令来恢复原始的数据. 本文将通过下面内容的介 ...

  5. 图像处理软件ImageJ

    ImageJ是一个基于java的公共的图像处理软件,它是由National Institutes of Health开发的.可运行于Microsoft Windows,Mac OS,Mac OS X, ...

  6. java面试 (七)- 关于String

    1 String的定义(Java8中) // final的类,不能被继承// 继承了序列化接口,comparable接口,public final class String implements ja ...

  7. (转)JVM原理讲解和调优

    背景:jvm实际调优在面试时候经常被问到,所以有必要认真总结一番. 转自:JVM原理讲解和调优 四.JVM内存调优 首先需要注意的是在对JVM内存调优的时候不能只看操作系统级别Java进程所占用的内存 ...

  8. SpringBoot系列教程web篇之Get请求参数解析姿势汇总

    一般在开发web应用的时候,如果提供http接口,最常见的http请求方式为GET/POST,我们知道这两种请求方式的一个显著区别是GET请求的参数在url中,而post请求可以不在url中:那么一个 ...

  9. Saltstack限制某些shell命令执行

    在cmdmod模块中cmd.run.cmd.run_all.cmd.run_stdout等都可以执行shell命令,要静止某些shell命令,可以修改_run()这个函数来彻底的静止调用这个命令. c ...

  10. leetcode309 买卖股票

    一.穷举框架 首先,还是一样的思路:如何穷举?这里的穷举思路和上篇文章递归的思想不太一样. 递归其实是符合我们思考的逻辑的,一步步推进,遇到无法解决的就丢给递归,一不小心就做出来了,可读性还很好.缺点 ...