前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Mysql 权限 &修改密码 & 忘记密码 & 远程登录

Mysql 权限 &修改密码 & 忘记密码 & 远程登录

作者头像
收心
发布2022-01-19 13:51:38
5.4K0
发布2022-01-19 13:51:38
举报
文章被收录于专栏:Java实战博客

本篇文章针对Mysql 5.7的内容,如果Mysql 版本不同 可能需要Mysql会提示语法不一致 就需要我们自己进行动态调整!

快速导航

创建、授权、删除、查看用户权限

代码语言:javascript
复制
第一步:创建用户
格式:CREATE USER 'username'@'host' IDENTIFIED BY 'password';

第二步:进行授权
格式:GRANT privileges ON databasename.tablename TO 'username'@'host'
    privileges 表示权限的类型:如SELECT,INSERT,UPDATE等,如果要授予所的权限则使用ALL
    databasename 数据库名,如果想全表 用*
    tablename 数据表名,如果想全表 用*
    host IPV4地址,如果想用全ip 用%

第三步:撤销授权
格式:REVOKE privilege ON databasename.tablename FROM 'username'@'host';

第四步:删除用户
格式:DROP USER 'username'@'host';

第五步:查看用户权限
格式:show grants for 'username'@'host';


示例:
# 创建一个zhangsan的本地用户密码为zhangsan123
CREATE USER 'zhangsan'@'localhost' IDENTIFIED BY 'zhangsan123';

# 对所有ip的张三授权查询、插入 test库的user表
GRANT SELECT, INSERT ON test.user TO 'zhangsan'@'%';

# 撤销本地张三的插入权限
REVOKE insert ON '*'.'*' FROM 'zhangsan'@'localhost';

# 删除本地用户张三
Drop User 'zhangsan'@'local'

# 最后要执行权限刷新
flush privileges;

远程登录

修改Mysql账号密码

修改密码(建议将 用户名 Host 用双引号引起来)

代码语言:javascript
复制
第一步:选择数据库
use mysql;

第二步:执行修改命令
SET PASSWORD FOR "用户名"@"HOST" = password("新密码");  或者
SET PASSWORD FOR "用户名" @"HOST" = password("新密码"); 

第三步:执行刷新权限修改才会生效
flush privileges;

示例:
use mysql;
SET PASSWORD FOR "zhangsan" @"localhost" = password("zhangsan123");
flush privileges;

Windows忘记Mysql密码(共4步)

第一步:暂停Mysql服务

第二步:修改配置文件

当Mysql服务为 已停止 前往修改配置文件:mysql.ini 文件

代码语言:javascript
复制
C:\ProgramData\MySQL\MySQL Server 5.7
注意:ProgramData 是隐藏文件夹。需要自行勾文件夹显示隐藏文件夹

打开此配置文件,找到[mysqlid] 在下面随便开启一行 填写

代码语言:javascript
复制
skip-grant-tables

第三步:启动mysql服务 并执行修改超管密码的命令

保存文件,去任务管理器 -启动mysql服务

使用命令行,输入

代码语言:javascript
复制
mysql -uroot -p
可以直接绕过Mysql的密码检测,直接登录Mysql CMD界面

选择Mysql表中mysql数据库

代码语言:javascript
复制
use mysql

执行代码

代码语言:javascript
复制
//Mysql 5.7 之前
update user  set Password=password('new-password') where user='root'

//Mysql 5.7(Mysql8 可能也会有变化)
update user  set authentication_string=password('new-password') where user='root'

//MariaDB
set password for 'USER'@'HOST'=password('new-password');

第四步:撤销修改的配置文件,重启mysql服务

去除Mysql.ini 中[mysqlid] 下追加的 skip-grant-tables

重启Mysql服务:

完成!重新登录Mysql 试试吧!

特殊说明: 解决问题的光鲜,藏着磕Bug的痛苦。 万物皆入轮回,谁也躲不掉! 以上文章,均是我实际操作,写出来的笔记资料,不会出现全文盗用别人文章!烦请各位,请勿直接盗用!

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 快速导航
  • 创建、授权、删除、查看用户权限
    • 远程登录
    • 修改Mysql账号密码
      • 修改密码(建议将 用户名 Host 用双引号引起来)
      • Windows忘记Mysql密码(共4步)
        • 第一步:暂停Mysql服务
          • 第二步:修改配置文件
            • 第三步:启动mysql服务 并执行修改超管密码的命令
              • 第四步:撤销修改的配置文件,重启mysql服务
              相关产品与服务
              云数据库 SQL Server
              腾讯云数据库 SQL Server (TencentDB for SQL Server)是业界最常用的商用数据库之一,对基于 Windows 架构的应用程序具有完美的支持。TencentDB for SQL Server 拥有微软正版授权,可持续为用户提供最新的功能,避免未授权使用软件的风险。具有即开即用、稳定可靠、安全运行、弹性扩缩等特点。
              领券
              问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档