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

1. 问题描述mysql

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

  以下:数据库

  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, 报找不到表的错误。google

 

2.思路spa

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

 

3.解决方法中间件

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

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

 

 

 4. 参考连接it

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

相关文章
相关标签/搜索