文章目录
创建用户密码查看密码规则修改密码规则修改密码授权为已有用户授权远程连接授权刷新系统权限表删除用户创建用户
create user '用户名'@'%' identified by '密码';
有时你可能会遇到密码不符合要求的错误, 如MySQL 8.0+:
这时需要修改密码以符合规则,或修改密码规则。
密码
查看密码规则
show variables like 'validate_password%';
修改密码规则
根据上表描述,结合需要修改参数值。
如,我只想它检测密码长度,那么我只需要修改validate_password.policy=low
或validate_password.policy=0
set global validate_password.policy=0;
修改密码
update mysql.user set password=password('新密码') where User="用户名" and Host="用户地址";flush privileges;
授权
为已有用户授权远程连接
用户地址:
%
表示任何ip都可访问;具体的ip地址,表示只允许该ip地址进行远程连接;localhost
,表示只允许本地连接。
alter user '用户名'@'用户地址' identified by '密码';
如果修改之后还不能访问,试着查看防火墙是否开放MySQL端口。
授权
格式:
grant 权限1,权限2,…权限n on 数据库名.表名 to '用户名'@'用户地址';
权限1,权限2,…权限n代表:select
,insert
,update
,delete
,create
,drop
,index
,alter
,grant
,references
,reload
,shutdown
,process
,file
等14个权限。
当权限1,权限2,…权限n
被all privileges
或者all
代替,表示赋予用户全部权限。
所有表:
grant all privileges on *.* to '用户名'@'用户地址';
特定数据库:
grant all privileges on 数据库名.* to '用户名'@'用户地址';
刷新系统权限表
flush privileges;
删除用户
DELETE FROM user WHERE User='用户名' and Host='用户地址';# 刷新权限表flush privileges;# 删除用户的数据库drop database jeecnDB;