用户权限管理

用户权限管理:在不同的项目中给不同的角色(开发者)不同的操作权限,为了保证数据库数据的安全。

简单点说:有的用户可以访问并修改这个数据,而有些用户只能去查看数据,而不能修改数据。就如同博客园中每个用户的博客一样。对于博客的主人而言,

可以随意的删除自己的博客,而别人只能查看,如果每个人的权限都是一样的,别人可以随意的修改,这就会出现很多的问题,所以给不同用户不同的权限是很有必要的,可以保证每个用户的数据安全。

通常:一个用户的密码不会长期不变。所以需要经常性的变更数据库用户密码来确保用户本身安全。

用户管理

MySQL需要客户端进行连接认证才能进行服务器操作,需要用户信息,MySQL中所有的用户信息都是保存在MySQL数据库下的user表中的。基本语法:desc mysql.user; 或者是select * from mysql.user\G;

默认安装MySQL的时候,如果不选择创建匿名用户,那么意味着所有的用户只用一个,root超级用户。

在MySQL中,MySQL对用户的用户管理中,是通过对应的Host和User共同组成的主键来区分用户的。

User:代表用户的用户名。

Host:代表本质是允许访问的客户端(ip地址或者是主机地址)。如果host使用*代表所有的用户(客户端)都可以访问。

创建用户

注意:这里要创建用户,建议在root用户(超级用户下)创建,因为有些用户是不具有创建用户的权限的,

除非已经对这个用户受益了创建用户的权限。

理论上讲课采用两种方式创建用户。

1.直接使用root用户在mysql.user表中插入记录(不推荐)

2.专门创建用户的SQL指令

基本语法:create user  用户名 identified by 明文密码;

用户:用户名@主机地址。   也可以是只有用户名,表示的是可以任意一个客户端都可以访问这个用户。

查看mysql.user表中是否存在新增的用户

简化版创建用户(谁都可以访问,不需要密码)

总结一下:可以这么理解,如果没有给用户定义一个主机地址,那么任意的一台电脑的客户端都可以访问

这个用户。如果定义了主机地址,只有对应的主机可以访问这个用户。

删除用户

注意:MySQL中user是带着host本身的(具有唯一性)

基本语法:drop user 用户名@host;

修改用户密码

MySQL中提供了多种修改的方式,基本上都必须使用对应提供的一个系统函数:password()

(MySQL5.7版本后,就不再使用了。);需要靠该函数对密码进行加密处理。

1.使用专门修改密码的指令---------不再使用。

基本语法:set password for 用户=password(”新的明文密码");

2.使用更新语句update来修改表-----不再使用,正确方法在第三个。

基本语法:update mysql.user set password = password(”新的明文密码") where user=‘用户名’ and host='

主机地址’;

运行会报错

ERROR 1064 (42000): You have an error inyour SQL syntax; check the manual that

corresponds to your MySQL server versionfor the right syntax to use near 'passw

ord('123456')' at line 1

原因是MySQL5.7.6版本以后,password属性已经取消(使用SELECT  Password

(‘123’) 实验知会报错)。

并且修改用户密码的语句已经改变

3.alter user 用户名 identified by'123456';

把用户当成(表,数据库)之类的进行修改。

MySQL学习之用户管理的更多相关文章

  1. Linux学习之用户管理命令与用户组管理命令(十五)

    Linux学习之用户管理命令与用户组管理命令 目录 用户管理命令 用户添加命令useradd 修改用户密码passwd 修改用户信息usermod 修改用户密码状态chage 删除用户userdel ...

  2. mysql命令大全用户管理相关命令

        1.登陆 mysql>mysql -uJDev -p 2.用户管理 mysql>use mysql; 3.查看有哪些登陆用户 mysql> select host,user, ...

  3. 【MySQL笔记】用户管理

    1.账户管理 1.1登录和退出MySQL服务器 MySQL –hhostname|hostIP –P port –u username –p[password] databaseName –e &qu ...

  4. mysql数据库: 用户管理、pymysql使用、navicat插件使用

    一.用户管理 二.pymysql增删改查 三.sql注入攻击 一.用户管理 数据安全非常重要 不可能随便分配root账户 应该按照不同开发岗位分配不同的账户和权限 mysql中 将于用户相关的数据放在 ...

  5. linux 学习7 用户管理相关文件 r

    7.1.用户配置文件 7.2.用户管理相关文件 7.3.用户管理命令 7.4.用户组管理命令 删除用户userdel [root@localhost ~]# userdel [-r] 用户名 //一定 ...

  6. linux学习之用户管理

    用户管理是在root用户下进行相关操作的 1.配置文件路径:         保存用户信息的文件:/etc/passwd         保存密码的文件:/etc/shadow         保存用 ...

  7. oracle 学习笔记--用户管理

    oracle 用户管理 创建用户(需要具有dba权限的用户) create user 用户名 identified by 密码 defaule tablespace users     //默认表空间 ...

  8. MySQL 基础八 用户管理

    SELECT * FROM student INSERT INTO student(NAME,sex,createuser,createtime) VALUES('jack','男','ligenyu ...

  9. mysql学习(用户权限管理)

    1. 添加数据库用户 create user 'username'@'host' identified by 'password'; 提示: 如果想让该用户可以从其他主机登陆,host可以设置为'%' ...

随机推荐

  1. Android 保存和恢复activity的状态数据

    一般来说, 调用onPause()和onStop()方法后的activity实例仍然存在于内存中, activity的所有信息和状态数据不会消失, 当activity重新回到前台之后, 所有的改变都会 ...

  2. 【Web crawler】爬虫之百度首页

    刚开始学习爬虫,照着教程手打了一遍,还是蛮有成就感的.使用版本:python2.7 *注意:python2的默认编码是ASCII编码而python3默认编码是utf-8 import urllib2 ...

  3. JavaScript中sort()方法

    sort()方法主要是用于对数组进行排序,默认情况下该方法是将数组元素转换成字符串,然后按照ASC码进行排序,这个大家都能理解,但如果数组元素是一个Object呢,转不了字符串,难道不能进行排序?答案 ...

  4. dubbo学习总结二 服务端

    服务端主要执行对底层数据库的操作 主要分层为 api +dao+ filter+ util+... 首先 dubbo 服务端有一个dubbo配置文件 dubbo:application 定义应用名称 ...

  5. Linux ->> UBuntu 14.04 LTE下主机名称和IP地址解析

    UBuntu 14.04 LTE下主机名称和IP地址解析一些相关的配置文件: /etc/hosts: 主机文件.手工配置IP地址和主机名称间的映射.格式为每行一条映射条项: <machine_n ...

  6. Android已上线应用开源分享中(第一季)

    这是我上线的第一个android应用,在百度.腾讯.豌豆荚等平台测试通过,也有了部分用户,还是可以的啊,哈哈.现在分享给大家,当然,源码我也会分享. 1.软件是一个管理wifi的小工具 (1)查询.连 ...

  7. less 学习

    收藏地址 : http://www.bootcss.com/p/lesscss/

  8. ZT 设计模式六大原则(4):接口隔离原则

    设计模式六大原则(4):接口隔离原则 分类: 设计模式 2012-02-27 08:32 17948人阅读 评论(21) 收藏 举报 设计模式classinterfacecstring框架 定义:客户 ...

  9. Struts2.3.4.1 + Spring3.1.2 + Hibernate4.1.6整合

    1. Jar包 2. web.xml配置 3. struts.xml配置 4. hibernate.cfg.xml配置 5. applicationContext.xml配置 6. log4j.pro ...

  10. 用python自建一个DNS服务器

    前段日子一直在做公司的DNS调度程序,不过由于性能比较差,方案最终废弃掉了.两个半月心血,不想白白浪费掉,于是改了改,把商业秘密相关的部分去掉,变成了一个公共的DNS服务器.其实说的简单点,就是一个可 ...