mysql -uroot -p
select host,user from mysql.user;

请勿对黄色箭头进行操作,它是MySQL系统自带的;而红色箭头则表示主管理员。蓝色箭头是子用户,这个是我以前匹配的,现在删掉,我们重新来。
drop user '用户名'@'主机名'; drop user 'wyy'@'192.168.0.105';

create user '用户名'@'允许那个主机链接' identified by '密码'; create user 'wyy'@'192.168.0.105' identified by 'wyy18222'; 只允许192.168.0.105的主机链接

备注:
Mysql8.0 默认采用 caching-sha2-password 加密,有可能旧的客户端不支持,可改为 mysql_native_password;
create user 'test'@'%' identified with mysql_native_password BY '密码';
百分号%;表示任何ip地址都可以链接
create user ‘wyy’@‘192.168.0.105’ identified by ‘wyy18222’;这个是只能192.168.0.105的链接。
Alter user '用户名'@'主机名' identified by '新密码'; alter user 'wyy'@'192.168.0.105' identified by '123';
给用户授权所有权限
grant all privileges on *.* to '用户名'@'主机名' with grant option; grant all privileges on *.* to 'wyy'@'192.168.0.105' with grant option;
grant:授权、授予
privileges:权限,特权
第一个星号:表示所有数据库
第二个星号:表示所有表
The "with grant option" indicates that the user can grant permissions to other users, but not beyond the permissions granted to themselves.。这个不加也行。
例如:如果wyy只有select、update权限,没有insert、delete权限,给另一个用户授权时,只能授予它select、update权限,不能授予insert、delete权限。
给用户授权个别权限
将产品展示、购物管理、资金管理等功能相结合,并提供了简易的操作、丰富的功能和完善的权限管理,为用户提供了一个低成本、高效率的网上商城建设方案包含PowerEasy CMS普及版,主要功能模块:文章频道、下载频道、图片频道、留言频道、采集管理、商城模块、商城日常操作模块500个订单限制(超出限制后只能查看和删除,不能进行其他处理) 无订单处理权限分配功能(只有超级管理员才能处理订单)
0
all privileges 可换成 select,update,insert,delete,drop,create 等操作
grant select,insert,update,delete on *.* to '用户名'@'主机名';
给用户授权指定权限
给用户授予指定的数据库权限
grant all privileges on 数据库 . * to 'wyy'@'192.168.0.105'; grant all privileges on xrs . * to 'wyy'@'192.168.0.105'; 将数据库名为xrs的所有权限赋予wyy
给用户授予指定的表权限
grant all privileges on 数据库 . 指定表名 to 'wyy'@'192.168.0.105'; 将某个数据库下的某个表的权限赋予wyy
注意:
网上有的直接创建并赋权:
grant all privileges * . * to ‘要创建的用户’@‘localhost’ identified by ‘自定义密码’;
我在mysql8试了不行(8版本以下还没试过),要先创建用户再进行赋权,不能同时进行
flush privileges;新设置用户或更改密码后需用flush privileges刷新MySQL的系统权限相关表,否则会出现拒绝访问
还有一种方法,就是重新启动mysql服务器,来使新设置生效。
show grants for 'wyy'@'192.168.0.105';

revoke all privileges on *.* from 'wyy'@'192.168.0.105';
用户有什么权限就撤什么权限
创建用户:
create user userName@localhost identified with mysql_native_password by 'password';(with mysql_native_password 如果没有这个,Navicat将无法登陆提示:2059 - authentication plugin...错误,因为Navicat不支持最新数据库默认的加密方式);
授权用户:
GRANT ALL PRIVILEGES ON databaseName.* TO userName@'ip';(注意这点跟以往数据库都不一样,无需后面跟着IDENTIFIED BY 'password';否则将提示ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'IDENTIFIED BY 'password'' at line 5)
以上就是mysql8创建、删除用户及授权、消权操作的方法的详细内容,更多请关注php中文网其它相关文章!
每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。
C++高性能并发应用_C++如何开发性能关键应用
Java AI集成Deep Java Library_Java怎么集成AI模型部署
Golang后端API开发_Golang如何高效开发后端和API
Python异步并发改进_Python异步编程有哪些新改进
C++系统编程内存管理_C++系统编程怎么与Rust竞争内存安全
Java GraalVM原生镜像构建_Java怎么用GraalVM构建高效原生镜像
Python FastAPI异步API开发_Python怎么用FastAPI构建异步API
C++现代C++20/23/26特性_现代C++有哪些新标准特性如modules和coroutines
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号