Mysql创建子账号及权限设置全过程

 更新时间:2025年10月09日 09:29:24   作者:世俗的大尾巴也熊  
本文介绍通过Xshell6连接MySQL,创建test子账号并设置密码,测试登录,分配本地及远程操作权限,最后删除子账号及权限的完整流程,涵盖账号管理与权限配置关键步骤

一、连接Mysql(我用的工具是Xshell6)

命令:

mysql -uroot -p

二、创建子账号

创建一个用户名为test,密码为123456的子账号。

命令:

CREATE USER 'test'@'localhost'  IDENTIFIED BY '123456'; #这种创建方式只能本地登录 
CREATE USER 'test'@'%' IDENTIFIED BY '123456'; #这种创建方式可以远程登录,即别的地方可以登录 

三、测试刚刚创建的子账号是否可以登录

命令:

mysql -utest -p

四、给子账号添加权限

1.创建一个测试数据库testDemo(登录root账号)

命令:

create database testDemo default charset utf8 collate utf8_general_ci;

2.添加权限

添加权限第1步:

"localhost"表示对本地主机授权,此时使用子账号本地登录拥有testDemo的操作权限,远程登录依然没有testDemo的操作权限。

all privileges表示所有操作权限,也可以填写部分权限,比如把all privileges改为create,update,delete,select等。

命令:

//赋予test子账号对testDemo数据库所有操作权限
grant all privileges on testDemo.* to "test"@"localhost" identified by "123456"; 

//如果不想赋予所有权限
//赋予test子账号对testDemo数据库select,update权限
grant select,update on testDemo.* to "test"@"localhost" identified by "123456"; 

//注意:mysql8.0之后赋予权限命令有变化,如下
grant all privileges on testDemo.* to 'test'@'localhost';

//赋予权限后要刷新系统权限表,使配置生效
flush privileges; 


备注:也可能不是localhost表示本地,要去mysql.user表中查看

查询语句为:

select host,user,grant_priv,Super_priv from mysql.user;

添加权限第2步:

“%” 表示对所有非本地主机授权,不包括localhost。此时使用子账号远程登录对testDemo数据库才有操作权限。

命令:

grant all privileges on testDemo.* to "test"@"%" identified by "123456"; 
flush privileges; #刷新系统权限表

使用子账号远程登录的结果:

五、删除子账号及权限

1.删除远程test账号(此时本地的test账号依然可以使用)

命令:

drop user test@"%";

2.删除本地test账号

命令:

drop user test@"localhost";

至此整个流程完成!

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • MYSQL数据库基础之Join操作原理

    MYSQL数据库基础之Join操作原理

    这篇文章主要给大家介绍了关于MYSQL数据库基础之Join操作原理的相关资料,连接(join)查询是将两个查询的结果以“横向对接”的方式合并起来的结果,需要的朋友可以参考下
    2021-07-07
  • MYSQL的binary解决mysql数据大小写敏感问题的方法

    MYSQL的binary解决mysql数据大小写敏感问题的方法

    BINARY不是函数,是类型转换运算符,它用来强制它后面的字符串为一个二进制字符串,可以理解为在字符串比较的时候区分大小写
    2013-09-09
  • MySQL大内存配置方案 如my-medium.ini、my-huge.ini等

    MySQL大内存配置方案 如my-medium.ini、my-huge.ini等

    这篇文章主要介绍了MySQL大内存配置方案 如my-medium.ini、my-huge.ini等,经测试确实不错,访问mysql速度快了很多
    2014-08-08
  • sql format()函数的用法及简单实例

    sql format()函数的用法及简单实例

    下面小编就为大家带来一篇sql format函数()的用法及简单实例。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2016-05-05
  • 浅谈MYSQL中树形结构表3种设计优劣分析与分享

    浅谈MYSQL中树形结构表3种设计优劣分析与分享

    在开发中经常遇到树形结构的场景,本文将以部门表为例对比几种设计的优缺点,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-09-09
  • 使用JS+HTML/CSS实现虚拟滚动和分页加载效果

    使用JS+HTML/CSS实现虚拟滚动和分页加载效果

    虚拟滚动和分页加载是一种优化大型数据集的常见技术,用于在Web应用程序中提高性能和用户体验,在本文中,我将演示如何使用JavaScript和HTML/CSS来实现虚拟滚动和分页加载,同时提供示例代码和详细解释,需要的朋友可以参考下
    2023-10-10
  • MySQL不用like+%实现模糊查询

    MySQL不用like+%实现模糊查询

    本文主要介绍了MySQL不用like+%实现模糊查询,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-01-01
  • mysql去除重复数据只保留一条数据实例

    mysql去除重复数据只保留一条数据实例

    这篇文章主要给大家介绍了关于mysql去除重复数据只保留一条数据的相关资料,在使用MySQL时,有时需要查询出某个字段不重复的记录,文中通过示例代码介绍的非常详细,需要的朋友可以参考下
    2023-08-08
  • mysql实现将列默认值设置为uuid

    mysql实现将列默认值设置为uuid

    在MySQL 8.1.0中建表时,主键和普通列都可以设置默认值,需要注意的是,使用UUID()函数时必须加上括号,否则会报错,修改时同样需要加括号,目前无法使用自定义函数作为默认值,MySQL也不支持,可以使用内置函数如LENGTH、CONCAT等,但若可能,应尽量避免使用触发器来设置默认值
    2025-11-11
  • MySQL 8.0.28 安装配置图文教程

    MySQL 8.0.28 安装配置图文教程

    这篇文章主要为大家详细介绍了MySQL 8.0.28 安装配置图文教程,文中安装步骤介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2022-06-06

最新评论