mysql默认使用的是root账户,超级管理员,拥有全部的无限权限;大多数情况下都是创建一个其他用户使用。mysql有个user表,账户信息就保存在那里
创建用户:
create user '用户名'@'主机名' IDENTIFIED BY '密码'
用户名:创建的新用户,登陆名称
主机名:指定该用户在哪个主机上可以登陆,本级登陆localhost
实例:
创建一个admin1用户,只能在localhost这个主机登陆mysql数据库
CREATE USER 'admin1'@'localhost' IDENTIFIED BY '111111';
创建一个admin2的用户,可以在任何电脑上登录mysql服务器
CREATE USER 'admin1'@'%' IDENTIFIED BY '111111'
给用户权限:
grant 权限1,权限2,权限3,... on 数据库名.表名 to '用户名'@'主机名'
权限:授予用户的权限 例如:create alter select insert update等
on:用来指定哪些库和表
to:授予某个用户
给所有权限
GRANT ALL ON *.* TO 'admin'@'localhost';
但mysql会报这个错误,仅支持8以下版本自己查解决方案去
You are not allowed to create a user with GRANT
查看用户权限
SHOW GRANTS FOR '用户名'@'主机名';
删除用户
drop user '用户名'@‘主机名’
查询用户(直接查user表)
USE mysql;
SELECT * FROM USER;