MySQL用户管理

1.MySQL用户管理

权限表

User表:用户列、权限列、安全列、资源控制列

Db表和host表:用户列、权限列

Tables_priv表和columns_priv表

Procs_priv表

账户管理

登录和退出MySQL服务器

Mysql       -h      hostname|hostIP    -P      port -u      usename -p      DatabaseName        -e“SQL语句”

新建普通用户

用CREATE USER语句来新建普通用户:

Create      USER                  user[IDENTIFIED      BY[PASSWORD]        ‘password’][,user[IDENTIFIED         BY    [PASSWORD]’password’]]

用INSERT语句来新创建普通用户:

INSERT     INTO         mysql.user(Host,User,Password)VALUES        (‘hostname’,’username’,PASSWORD(‘password’))

用GRANT语句来新建普通用户:

GRANT     priv_type          ON   database.table                  TO    user[IDENTIFIED      BY[PASSWORD]’password’] [,user[IDENTIFIED       BY         [PASSWORD]’password’]]

删除普通用户

用DROP USER 语句来删除普通用户:

DROP        USER         user[,user]…;

用DELETE语句来删除普通用户:

DELETE    FROM       mysql.user       WHERE    Host=’hostname’    AND User=’username’

Root用户修改自己的密码

使用MySQLadmin命令来修改root用户的密码:

Mysqladmin     -u      username         -p      password                   “new_password”

修改mysql数据库下的user表:

UPDATE   mysql.user       SET   Password=PASSWORD(“new_password”)       WHERE    User=’root’      AND Host=’localhost’

使用SET语句来修改root用户的密码:

SET   PASSWORD=PASSWORD("new_password”);

Root用户修改普通用户密码

使用SET语句来修改普通用户密码:

SET   PASSWORD       FOR  ‘username’      @’hostname’=PASSWORD(“new_password”);

修改mysql数据库下的user表:

UPDATE   mysql.user       SET   Password=PASSWORD(“new_password”)       WHERE    User=”username”   and  Host=”hostname”

用GRANT语句来修改普通用户的密码:

GRANT     priv_type          ON   database.table                  TO    user[IDENTIFIED      BY[PASSWORD]’password’]

普通用户修改密码:

SET   PASSWORD=PASSWORD('new_password’);

Root用户密码丢失的解决办法步骤:

使用——skip-grant-tables选项启动MySQL服务

登录root用户,并且设置新的密码

加载权限表

权限管理:

授权:

GRANT     priv_type[(column_list)]  ON   database.table                  TO    user [IDENTIFIED     BY         [PASSWORD]’password’][,user[IDENTIFIED   BY    [PASSWORD]’password’]]…    

[WITH       with_option[with_option]…]

收回权限:

REVOKE   priv_type [(column_list)]…       ON   database.table                  FROM       user[,user]…

查看权限:

SELECT* FROM         mysql.user