zoukankan      html  css  js  c++  java
  • mysql之用户管理


    本文内容:

    • 用户的介绍
    • 查看用户
    • 创建用户帐户
    • 修改账户
    • 删除帐户
    • 关于匿名用户

    首发日期:2018-04-19


    用户的介绍:

    • mysql的客户端连接是以用户名来登录服务端。
    • 服务端可以对用户的权限来进行更改,所以每个用户对数据库或对数据表的权限都是不一样的。
    • 一般来说不应该使用root用户登录,因为root用户拥有最高的权限,可以进行删除数据库等“危险”操作。为了安全,应该使用其他用户登录,并且给他分配合适的权限。
    • 并且用户应该是有密码的,使用匿名用户(没有密码)是非常危险的,如果这个匿名用户又是开放远程登录的话那别人只要检测到你的端口是开放的就可以登录你的mysql了。

    查看用户:

    • MySQL用户账号和信息存储在名为 mysql 的MySQL数据库中。
    • mysql 数据库有一个名为 user 的表,它包含所有用户账号。 user表有一个名为 user 的列,它存储用户登录名。
      • image
    • 使用select * from userG来获取完整的表数据时
      • 其中后缀是priv是权限的意思,N代表没有。image
      • host是代表允许登录的主机,%为允许本地和非本地主机登录image
      • user是用户名image
      • authentication string是密码的散列值。image

    创建用户帐户:

    • 方式1:create user 用户名@可登录地址 identified by '密码';
      • 没有可登录地址代表所有地址都能登录image
      • 如果只允许本地登录,应该设置成localhostimage
    • 方式2:grant 权限 on 数据库.数据表 to 用户名@可登录地址 identified by '密码';
      • image
    • 方式3:可以使用Insert直接往user表中插入数据,但不建议使用。

    修改账户:

    • 重命名用户:rename user 原用户名@可登录地址 to 新用户名@可登录地址; 【原用户名的可登录地址是必须的,而新用户名的可登录地址是可选的,但不填的话就会默认成%即允许远程登录】
    • 更改密码:set password for '用户名'@可登录地址 = password('密码');【在不指定用户名的情况下,为修改当前用户的密码】【可登录地址是可选的,必须是原来的可登录地址】
      • imageimage
    • 修改账户权限将在另外一篇博文中讲述。超链接:mysql之用户权限管理

    删除帐户:

    • drop user 用户名;

    补充:

    • 在mysql5.0之前drop user命令只会删除用户,而不删除权限,在5.0之前需要先用revoke删除权限。

    关于匿名用户:

    • 在旧版本默认情况都会有一个匿名用户,这使得你不需要使用用户及密码就能登录mysql
    • 如何创建匿名用户image
    • 一般情况下不应该创建匿名用户,即使是因为学习方便而创建也应该设置成本地的。

  • 相关阅读:
    html 底部虚线
    C# 写入二进制文件
    js document 触发按键事件
    python之工作举例:通过复制NC文件来造数据
    python之多线程举例
    python之发送HTML内容的邮件
    python之打印日志logging
    python之查询指定目录下的最新文件
    python之datetime类
    python之Counter类:计算序列中出现次数最多的元素
  • 原文地址:https://www.cnblogs.com/progor/p/8882467.html
Copyright © 2011-2022 走看看