首页 > 数据库 >mysql root权限恢复

mysql root权限恢复

时间:2023-07-14 23:33:18浏览次数:36  
标签:Create user mysql 权限 root priv

1.首先停止​​MySQL​​服务:service mysqld stop
2.加参数启动​​mysql​​:/usr/bin/mysqld_safe --skip-grant-tables & 
然后就可以无任何限制的访问mysql了
3.root用户登陆系统:mysql -u root -p mysql
4.切换​​数据库​​:use mysql
5.显示所有的表:show tables;
这里就可以访问表了
6.查看user表中root用户的localhost权限:select * from user where user='root' and host='localhost'
7.在显示的列表中显示:root用户的localhost的权限都是'N',表示root用户本地登陆不具有权限
8.修改root用户的localhost权限:
 

update user set  `Select_priv` = 'Y',`Insert_priv` = 'Y',`Update_priv` = 'Y',`Delete_priv` = 'Y',`Create_priv` = 'Y', `Drop_priv` = 'Y',`Reload_priv` = 'Y',`Shutdown_priv` = 'Y',`Process_priv` = 'Y',`File_priv` = 'Y', `Grant_priv` = 'Y',`References_priv` = 'Y',`Index_priv` = 'Y',`Alter_priv` = 'Y',`Show_db_priv` = 'Y',`Super_priv` = 'Y',`Create_tmp_table_priv` = 'Y',`Lock_tables_priv` = 'Y',`Execute_priv` = 'Y',`Repl_slave_priv` = 'Y',`Repl_client_priv` = 'Y',`Create_view_priv` = 'Y',`Show_view_priv` = 'Y',`Create_routine_priv` = 'Y',`Alter_routine_priv` = 'Y',`Create_user_priv` = 'Y',`Event_priv` = 'Y',`Trigger_priv` = 'Y',`Create_tablespace_priv` = 'Y' where user='root' and host='localhost';

-------如果在输入命令进行操作时报错,把 `Create_tablespace_priv` = 'Y'去掉解决

  9.更新一下:flush privileges;
  10.然后重新启动下mysql,可以解决问题了
-----------------------------------

来源mysql root权限恢复
https://blog.51cto.com/u_15882671/5871553

标签:Create,user,mysql,权限,root,priv
From: https://www.cnblogs.com/yerkle/p/17555341.html

相关文章

  • 在centos 7.9 系统docker上构建mysql 5.7
    1、拉取镜像[root@localhost~]#dockerpullmysql:5.7 2、查看镜像[root@localhost~]#dockerimages 3、根据镜像id构建mysql容器,且分配端口号[root@localhost~]#dockerrun-d-p3306:3306--namemysql-eMYSQL_ROOT_PASSWORD='OK'c20987f18b13命令说......
  • 快速离线安装MySql数据库
    一、mysal压缩文件通过ftp放入\opt-->解压cd/opttar-xzvfmysql-5.7.29-linux-glibc2.12-×86_64.tar.gz二、移动一>创建data目录一>创建用户组mvmysql-5.7.29-linux-glibc2.12-×86_64/usr/localcd/usr/localmvmysql-5.7.29-linux-glibc2.12-×86_64mysqlcd......
  • Mysql
    Mysql中的数据类型字段类型整型TINYINT,SMALLINNT,MEDIUMINT,INT,BIGINT分别使用8,16,24,32,64位的存储空间,一般情况下越小的列越好INT(11)中的数字只是规定了交互工具显示字符的个数,对于存储和计算来说没有任何意义。浮点数FLOAT和DOUBLE为浮点类型,DECIMAL为高精度小树类型,CPU原......
  • MySQL基础
    1.数据库登录  mysql-uroot-p  mysql-uroot-pmysql  mysql-uroot-p-h192.168.213.200  备份  mysqldump-uroot-p--all-dtabases>all_databasees_20210305.sql      //备份所有库  mysqldump-uroot-p--databasesmysql>mysql_20......
  • mysql数据库3 表关系/多表查询等
    表关系(外键)#外键的前戏建立一张表:emp"""1.表不清晰,现在到底是员工表还是部门表2.字段需要重复的写,浪费资源3.兼容性很差,牵一发而动全身(这个问题是最不能容忍的)"""#以上问题该如何解决呢?我们的思路是,把一张表拆分成两张表拆成emp和depart部门表......
  • Mysql刪除binlog的方法
    参考文献:Mysql刪除binlog的方法(https://blog.csdn.net/weixin_42324463/article/details/126801856)在mysql的data目录下的binlog文件会随着时间推移越来越大。binlog文件不是直接rm就能解决的。即使rm删除了,但是mysql-bin.index档案中,还是有记录。正确步骤:1.linux进入mysqls......
  • 学科知识图谱学习平台项目 :技术栈Java、Neo4j、MySQL等超详细教学
    学科知识图谱学习平台项目:技术栈Java、Neo4j、MySQL等超详细教学0.效果展示1.安装教程安装JavaSDK11,下载前需要登录Oracle账号,下载链接,安装教程,测试是否能在命令行工具调用javajava--versionjava17.0.12021-10-19LTSJava(TM)SERuntimeEnvironment(build......
  • windows下用mysqldump导出数据库中文乱码的解决方案
    解决方案是从这篇文章得到的启发:http://www.pcxitongcheng.com/server/anz/2022-12-06/33622.html先去mysql里确认字符编码是utf8:showvariableslike'%char%'主要确认character_set_results。先创建好sql文件,比如d:\backup.sql然后备份的时候用--result-file=指定刚创建的文......
  • MySQL报错: Unknown prepared statement handler (stmt2) given to DEALLOCATE PREPAR
    上面的报错,是在MySQL里执行动态拼接SQL后报错的。--先定义两段SQLset@update_sql_fm=concat('updateads_gcl3e_patient_',@base_group_short_name,'_detail1t1jointemp_gcl3e_record_listtmpont1.report_info_id=tmp.report_info_idleftjoin(',@select_sql_fm,�......
  • Mysqll判空的一个坑
    Mysql使用<>''判空时数值类型字段会过滤掉值为0的数据SELECT*FROMstudentSELECT*FROMstudentWHEREuserid<>''文本类型字段可以过滤掉为null和空串的数据并且不会把为0的数据过滤SELECT*FROMstudentWHERESname<>''......