mysql error 1227 42000_mysql导入报错

mysql error 1227 42000_mysql导入报错今天在学习mysql的时候,一顿蜜汁操作,再次使用mysql的时候发现,不管用啥子命令,都出现了一个报错mysql>selectuser,passwordfrommysql.user;ERROR1142(42000):SELECTcommanddeniedtouser‘root’@‘localhost’fortable‘user’看了一下报错信息,权限不够…

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE稳定放心使用

今天在学习mysql的时候,一顿蜜汁操作,再次使用mysql的时候发现,不管用啥子命令,都出现了一个报错
mysql> select user,password from mysql.user;
ERROR 1142 (42000): SELECT command denied to user ‘root’@‘localhost’ for table ‘user’
看了一下报错信息,权限不够。。。那就是没有权限了,so,给他权限就好了

step01

退出数据库并且关闭mysql服务
 mysql> quit
 Bye
 [root@jinch ~]# /etc/init.d/mysqld stop
 Shutting down MySQL.. SUCCESS! 

step02

安全模式启动mysql,root用户登录
 [root@jinch ~]# mysqld_safe --skip-grant-tables &
 [root@jinch ~]# mysql -uroot -p123 mysql

step03

切换数据库&查看表信息中的root用户的localhost权限
 mysql> use mysql;
 Database changed
 mysql> show tables;
 +---------------------------+
 | Tables_in_mysql           |
 +---------------------------+
 | columns_priv              |
 | db                        |
 | event                     |
 | func                      |
 | general_log               |
 | help_category             |
 | help_keyword              |
 | help_relation             |
 | help_topic                |
 | innodb_index_stats        |
 | innodb_table_stats        |
 | ndb_binlog_index          |
 | plugin                    |
 | proc                      |
 | procs_priv                |
 | proxies_priv              |
 | servers                   |
 | slave_master_info         |
 | slave_relay_log_info      |
 | slave_worker_info         |
 | slow_log                  |
 | tables_priv               |
 | time_zone                 |
 | time_zone_leap_second     |
 | time_zone_name            |
 | time_zone_transition      |
 | time_zone_transition_type |
 | user                      |
 +---------------------------+
 28 rows in set (0.00 sec)
 
 mysql> select * from user where user='root' and host='localhost'\G;
 *************************** 1. row ***************************
                   Host: localhost
                   User: root
               Password: *23AE809DDACAF96AF0FD78ED04B6A265E05AA257
            Select_priv: N
            Insert_priv: N
            Update_priv: N
            Delete_priv: N
            Create_priv: N
              Drop_priv: N
            Reload_priv: N
          Shutdown_priv: N
           Process_priv: N
              File_priv: N
             Grant_priv: N
        References_priv: N
             Index_priv: N
             Alter_priv: N
           Show_db_priv: N
             Super_priv: N
  Create_tmp_table_priv: N
       Lock_tables_priv: N
           Execute_priv: N
        Repl_slave_priv: N
       Repl_client_priv: N
       Create_view_priv: N
         Show_view_priv: N
    Create_routine_priv: N
     Alter_routine_priv: N
       Create_user_priv: N
             Event_priv: N
           Trigger_priv: N
 Create_tablespace_priv: N
               ssl_type: 
             ssl_cipher: 
            x509_issuer: 
           x509_subject: 
          max_questions: 0
            max_updates: 0
        max_connections: 0
   max_user_connections: 0
                 plugin: mysql_native_password
  authentication_string: NULL
       password_expired: N
 1 row in set (0.00 sec)
 
 ERROR: 
 No query specified
这里发现全部都是N ,表示root用户本地登陆没有权限

step04

修改root用户的localhost权限(两种写法)
写法1:
mysql> update mysql.user set Grant_priv='Y',Super_priv='Y' where user='root';

mysql> flush privileges;

 mysql>grant all on *.* to 'root'@'localhost';
写法2:
 mysql> update user set `Insert_priv` ='Y' where user='root' and host='localhost';
 
 mysql> update user set `Update_priv` ='Y' where user='root' and host='localhost';
 
 mysql> update user set `Delete_priv` ='Y' where user='root' and host='localhost';
 
 mysql> update user set `Create_priv` ='Y' where user='root' and host='localhost';
 
 mysql> update user set `Drop_priv` ='Y' where user='root' and host='localhost';
 
 mysql> update user set `Reload_priv` ='Y' where user='root' and host='localhost';
 
 mysql> update user set `Shutdown_priv` ='Y' where user='root' and host='localhost';
 
 mysql> update user set `Process_priv` ='Y' where user='root' and host='localhost';
 
 mysql> update user set `File_priv` ='Y' where user='root' and host='localhost';
 
 mysql> update user set `Grant_priv` ='Y' where user='root' and host='localhost';
 
 mysql> update user set `References_priv` ='Y' where user='root' and host='localhost';
 
 mysql> update user set `Index_priv` ='Y' where user='root' and host='localhost';
 
 mysql> update user set `Alter_priv` ='Y' where user='root' and host='localhost';
 
 mysql> update user set `Show_db_priv` ='Y' where user='root' and host='localhost';
 
 mysql> update user set `Super_priv` ='Y',`Create_tmp_table_priv` = 'Y' where user='root'' and host='localhost';
 
 
 mysql> update user set `Lock_tables_priv` ='Y' where user='root' and host='localhost';  
 
 mysql> update user set `Execute_priv` ='Y' where user='root' and host='localhost';
 
 mysql> update user set `Repl_slave_priv` ='Y' where user='root' and host='localhost';
 
 
 mysql> update user set `Repl_client_priv` ='Y' where user='root' and host='localhost';
 
 mysql> update user set `Create_view_priv` ='Y' where user='root' and host='localhost';
 
 mysql> update user set `Show_view_priv` ='Y' where user='root' and host='localhost';
 
 mysql> update user set `Create_routine_priv` ='Y' where user='root' and host='localhost'';
 
 mysql> update user set `Alter_routine_priv` ='Y' where user='root' and host='localhost';;
 
 mysql> update user set `Create_user_priv` ='Y' where user='root' and host='localhost'; 
 
 mysql> update user set `Event_priv` ='Y' where user='root' and host='localhost';
 
 mysql> update user set `Trigger_priv` ='Y' where user='root' and host='localhost';
 
 mysql> flush privileges;
 Query OK, 0 rows affected (0.00 sec)
我这里有点傻。。。自己一个一个敲了一遍,可以直接用‘,’ 分割一次写完的,,,

step05

退出&重启&登陆
 mysql> quit
 Bye
 [root@jinch ~]# /etc/init.d/mysqld restart
 Shutting down MySQL.. SUCCESS! 
 Starting MySQL.. SUCCESS! 
 [root@jinch ~]# mysql -uroot -p123

step06

切换库
 mysql> use mysql;
 Reading table information for completion of table and column names
 You can turn off this feature to get a quicker startup with -A
 
 Database changed

step07

查看表信息
 mysql> select * from user\G;
 *************************** 1. row ***************************
                   Host: localhost
                   User: root
               Password: *23AE809DDACAF96AF0FD78ED04B6A265E05AA257
            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: N
               ssl_type: 
             ssl_cipher: 
            x509_issuer: 
           x509_subject: 
          max_questions: 0
            max_updates: 0
        max_connections: 0
   max_user_connections: 0
                 plugin: mysql_native_password
  authentication_string: NULL
       password_expired: N
 1 row in set (0.01 sec)
 
 ERROR: 
 No query specified
 
 权限已经基本都有了
测试一下
 mysql> create database jinc;
 Query OK, 1 row affected (0.00 sec)
 
 mysql> select user,host from mysql.user;
 +------+-----------+
 | user | host      |
 +------+-----------+
 | root | localhost |
 +------+-----------+
 1 row in set (0.00 sec)
 
 mysql> drop database jinc;
 Query OK, 0 rows affected (0.00 sec)

好了,基本的权限又回来了

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/187024.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • QT 播放器之列表[通俗易懂]

    QT 播放器之列表[通俗易懂]列表只需要显示字符串就行。直接选择使用QListView既然用到了View肯定是需要Model。该Model需要存储当前播放索引 添加的媒体链接 播放模式第一步,重写QAbstractItemModel的虚函数//QAbstractItemModelinterfacepublic:QVariantdata(constQModelIndex&a…

    2022年6月12日
    40
  • nslookup指定服务器是什么命令,nslookup命令详解_nslookup命令指定dns[通俗易懂]

    nslookup指定服务器是什么命令,nslookup命令详解_nslookup命令指定dns[通俗易懂]nslookup命令作用是用于查询dns解析域名记录,一般我们使用都是通过此命令可以检测DNS是否正常或者有时候我们把域名A记录更改的ip址,通常更改A记录需要一定的时间才生效,我们可以通过此命令解析域名的A记录是否生效。在windows操作系统上使用前nslookup首先我们要打开命令提示符,具体步骤如下:1、点击左下角的开始菜单–>运行。2、在弹出的运行窗口中输入“CMD”然后点击“确…

    2022年10月18日
    2
  • 记一次遇到挖矿程序的经历「建议收藏」

    记一次遇到挖矿程序的经历「建议收藏」就在几天前,遇到了一次挖矿程序偷偷装在ECS阿里云服务器上的经历。那是一个风和日丽的上午,我和往常一样来到公司,倒杯水等待电脑打开,之后打开日常维护的几个系统。结果其中有一个OA系统,发现无法正常打开。一开始我以为是网络问题,但是发现打开其他网站正常,于是登上服务器准备探个究竟。登陆云服务器后,重启OA服务,发现报错,报错提示连接线程池连接不上。根据提示,怀疑是连不上部署在本地的数据服…

    2022年4月20日
    42
  • 程序设计语言概述_c语言程序设计基本概念

    程序设计语言概述_c语言程序设计基本概念许多各位转载请注明出处。http://www.cnblogs.com/hetao/archive/2010/03/17/1688388.html最近于2010年3月18日日修改。阅读指引读懂此文,需要

    2022年8月3日
    6
  • Java优化_解决if嵌套过多

    Java优化_解决if嵌套过多文章目录 一、使用策略模式 二、其他方案 1.分解条件表达式 2.合并重复的条件判断 3.提前判断返回 4.引入断言工具类 5.善用 Optional 6.使用枚举 7.枚举多态 8.类多态 9

    2022年9月15日
    2
  • 阿里云URL转发类问题排查[通俗易懂]

    阿里云URL转发类问题排查[通俗易懂]概念URL转发包含URL隐性转发和URL显性转发,主要是指将一个域名指向另外一个已经存在的站点时,可以通过URL转发实现。隐性URL转发是用的是iframe框架技术,显性URL转发采用的是301(也称之为永久性转移)或302重定向技术(也称之为暂时性转移)。301和302说明301redirect:301代表永久性转移(PermanentlyMoved)302redirect:302代表暂时性转移(TemporarilyMoved)共同点:301和302状态码都表示重定向,当浏览

    2022年10月19日
    3

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号