• MySql:Table 'database.TABLE_ONE' doesn't exist


    1. 问题描述

      由于最近使用本地的MySQL奔溃了,在修改管理员密码时,不慎修改错误,导致无法重新写会,甚至按照MySQL官网手册都无法修改正确,遂放弃修改root密码,直接将一个未有数据的纯净版MySQL复制到原文件夹下,将之前的数据(即MySQL目录下的data文件复制到对应的目录下),但是出现了一个问题。

      如下:

      mysql> SHOW TABLES;
      +-----------------------+
      | Tables_in_database    |
      +-----------------------+
      | TABLE_ONE             |
      | TABLE_TWO             |
      | TABLE_THREE           |
      +-----------------------+
      mysql> SELECT * FROM TABLE_ONE;
      ERROR 1146 (42S02): Table 'database.TABLE_ONE' doesn't exist

      即:展示数据库下的表时,是可以展示出来的,但当要搜索表中的数据时会提示如上的ERROR, 报找不到表的错误。

    2.思路

      因为是直接把原有数据库中的数据(data)复制过来的,应该是某个或者某些的配置文件或者中间件没有对应的复制过来,所以就找对应的配置文件,一同复制过来。

    3.解决方法

      对应的配置文件最后自己没有找出来,在google上找到了相应的帖子,思路基本正确。

      需要复制的文件为:ib*  的文件,如 ibdata1ib_logfile0 和 ib_logfile1 ,将这些文件复制到文件下,问题解决,可以查找表中的数据。

     4. 参考链接

      https://stackoverflow.com/questions/7759170/mysql-table-doesnt-exist-but-it-does-or-it-should

  • 相关阅读:
    ☀【布局】
    _#【CSS3】
    _#minheight
    【其它】引入css
    【css3】url
    鼠标闲置一段时间后自动隐藏
    图解SQLServer2005获取WebService数据
    Oracle字符串字段内的字符排序
    一个c#读取扫雷内存的demo
    sqlserver使用bcp分解字符串
  • 原文地址:https://www.cnblogs.com/springlight/p/7190081.html
Copyright © 2020-2023  润新知