WithCoderWithCoderWithCoder

MySQL数据库创建用户(CREATE USER)

在对 MySQL 的日常管理和实际操作中,为了数据库的安全,避免恶意用户使用 root 账号控制数据库,我们通常会创建一系列具备适当权限的账号.这样,我们就可以不用或少用 root 账号登录NySQL数据库,在一定程度上确保数据的安全访问.本文介绍MySQL数据库如何创建用户.

创建用户

    可以使用 CREATE USER 语句来创建 MySQL 账户,并设置账户的密码.

语法:   

    CREATE USER '用户名'[@'登录主机名'] [ IDENTIFIED BY ] [  '密码' ]

语法说明:
            用户名: 要创建的用户名
            登录主机名: 即用户连接 MySQL 时所在主机的名字,如果是本地用户可用localhost;如果想让该用户可以从任意远程主机登陆,可以使用通配符%
            IDENTIFIED BY: 用于指定用户账号对应的密码,若该用户账号无密码,则可省略此子句

     密码: 用户的登陆密码

注意:

    1. 如果使用 CREATE USER 语句时没有为用户指定密码,那么 MySQL 允许该用户可以不使用密码登录系统.从安全的角度而言,不推荐这种做法.

    2. 使用 CREATE USER 语句必须拥有 MySQL 中 MySQL 数据库的 INSERT 权限或全局 CREATE USER 权限.

    3. 使用 CREATE USER 语句创建一个用户账号后,会在系统自身的 MySQL 数据库的 user 表中添加一条新记录.若创建的账户已经存在,则语句执行时会出现错误.

    4. 新创建的用户拥有的权限很少.他们可以登录 MySQL,只允许进行不需要权限的操作,如使用 SHOW 语句查询所有存储引擎和字符集的列表等.

    5. 如果两个用户具有相同的用户名和不同的主机名,MySQL 会将他们视为不同的用户,并允许为这两个用户分配不同的权限集合.

例子:

    # 创建用户neil,密码为123456,允许在任何远程主机上登录MySQL    
    CREATE USER 'neil'@'%' IDENTIFIED BY '123456';
    # 创建用户neil,密码为123456,允许在主机192.168.1.10上登录MySQL
    CREATE USER 'neil'@'192.168.1.10' IDENTIFIED BY '123456';
    # 创建用户neil,密码为空,允许在任何远程主机上登录MySQL
    CREATE USER 'neil'

欢迎分享交流,转载请注明出处:WithCoder » MySQL数据库创建用户(CREATE USER)