mysql创建用户及权限管理
创建用户
# 创建所有ip均可访问的用户,例如: CREATE USER 'user_name'@'%' IDENTIFIED BY 'password'; # 创建指定ip可以访问的用户,例如: CREATE USER 'user_name'@'202.109.200.36' IDENTIFIED BY 'password'; # 指定当前IP网段可访问,可以通过%指定,例如: CREATE USER 'strong'@'202.109.%' IDENTIFIED BY 'Strong9889';
授权
# 给指定用户所有权限 GRANT all privileges on . TO 'user_name'@'%'; # 给指定用户所有权限并允许用户将自身权限授权给其他用户 GRANT all privileges on . TO 'user_name'@'%' with grant option; # 仅允许当前用户拥有'istrong_ebi_xhntest' schema(库)的权限 GRANT all privileges ON istrong_ebi_xhntest.* TO 'user_name'@'%'; # 仅给用户授权指定schema下的指定表,例如只给用户istrong_ebi_xhntest下的pp_test_table与aaa表权限 GRANT SELECT, INSERT, UPDATE ON istrong_ebi_xhntest.pp_test_table TO 'user_name'@'%'; GRANT SELECT, INSERT, UPDATE ON istrong_ebi_xhntest.aaa TO 'user_name'@'%'; # 注意修改完权限后需要刷新权限表,否则无法生效 flush privileges;
示例
需求:创建一个用户名 test 授权istrong下 ss_sys 开头的表 + test_back 开头的表,增改查的权限
CREATE USER 'test '@'%' IDENTIFIED BY 'testpwd'; # 执行以下语句生成的脚本对用户进行授权 SELECT concat('GRANT SELECT, INSERT, UPDATE ON ',table_schema,'.',table_name,' TO \'test\'@\'%\';') gt FROM information_schema.tables WHERE table_schema = 'istrong' AND table_name LIKE 'ss_sys%' or table_name LIKE 'test_back%'; FLUSH PRIVILEGES;
吾乃代码搬运工,侵联删
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· DeepSeek 开源周回顾「GitHub 热点速览」