1.创建用户
-- 表示创建名称为xiaoming的用户,密码设为123456;
create user xiaoming identified by '123456';
-- 给用户赋予权限
GRANT all privileges ON mysql.user TO 'xiaoming'@'%';
flush privileges;
2.查看user表
select host,user,select_priv,insert_priv,drop_priv from mysql.user;
/*
host:表示连接类型
% 表示所有远程通过 TCP方式的连接
IP 地址 如 (192.168.1.2,127.0.0.1) 通过制定ip地址进行的TCP方式的连接
机器名 通过制定i网络中的机器名进行的TCP方式的连接
::1 IPv6的本地ip地址 等同于IPv4的 127.0.0.1
localhost 本地方式通过命令行方式的连接 ,比如mysql -u xxx -p 123xxx 方式的连接。
User:表示用户名
同一用户通过不同方式链接的权限是不一样的。
password :密码
所有密码串通过 password(明文字符串) 生成的密文字符串。加密算法为MYSQLSHA1 ,不可逆 。
mysql 5.7 的密码保存到 authentication_string 字段中不再使用password 字段。
select_priv , insert_priv等
为该用户所拥有的权限。
*/
3.设置密码
-- (各版本通用)修改当前用户的密码:
set password = password('123456')
-- (5.7之前)修改某个用户的密码:
update mysql.user set password=password('123456') where user='xiaoming';
-- (5.7及以后)设置指定用户的密码
SET PASSWORD FOR 'xiaoming'@'%' = PASSWORD('456789');
-- (各版本通用)所有通过user表的修改,必须用该命令才能生效。
flush privileges;
4.修改用户名
-- 修改用户名:
update mysql.user set user='xiaohong' where user='xiaoming';
-- 所有通过user表的修改,必须用该命令才能生效。
flush privileges;
5.删除用户
-- 不要通过delete from user where user='xiaohong' 进行删除,系统会有残留信息保留。
drop user 'xiaohong' ;