mysql show可以看到表,但是select的时候提示表不存在

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了mysql show可以看到表,但是select的时候提示表不存在相关的知识,希望对你有一定的参考价值。

我可以确定,肯定不是用户问题不是权限问题不是大小写问题,求技术大牛解答

参考技术A 去库所在目录下查看 是否只有 branches.frm 文件,没有其他branches开头的文件,如果是这样的情况,那就重新在原库mysqldump 导出这个表,在目标库导入这个表就可以了。 参考技术B 问题解决了,我是把表的文件直接复制过来的,
而这个hx的表是innoDB引擎的,所以,只能显示这个表,但select的时候就读不出里边的内容了。
后来,我再去原数据库那里导入文件,再导入文件搞定了。追问

应该怎么导入,麻烦详细说一下,谢谢啦

参考技术C 还是跟表对应的文件有关,比如因为大小写问题,同一个表可能对应2套表名分别为大写和小写的文件组

MySQL中自适应哈希索引

自适应哈希索引采用之前讨论的哈希表的方式实现,不同的是,这仅是数据库自身创建并使用的,DBA本身并不能对其进行干预。自适应哈希索引近哈希函数映射到一个哈希表中,因此对于字典类型的查找非常快速,如SELECT * FROM TABLE WHERE index_col=‘xxx‘但是对于范围查找就无能为力。通过SHOW ENGINE INNODB STATUS 可以看到当前自适应哈希索引的使用情况

-------------------------------------
INSERT BUFFER AND ADAPTIVE HASH INDEX
-------------------------------------
Ibuf: size 1, free list len 0, seg size 2, 94 merges
merged operations:
 insert 280, delete mark 0, delete 0
discarded operations:
 insert 0, delete mark 0, delete 0
Hash table size 4425293, node heap has 1337 buffer(s)
174.24 hash searches/s, 169.49 non-hash searches/s

现在可以看到自适应哈希索引的使用信息了。包括自适应哈希索引的大小、使用情况,每秒使用自适应哈希索引搜索的情况。需要注意的是,哈希索引只能用来搜索等值的查询,如

SELECT * FROM table WHERE index_col=xxx

而对于其他查找类型,如范围查找,是不能使用哈希索引的。因此这里出现no--hash searches的情况,通过hash searches:non-hash searches可以大概了解使用哈希索引后的效率

由于自适应哈希索引是由InnoDB存储引擎自己控制的,因此这里的这些信息只仅供参考。不过可以通过参数innodb_adaptive_hash_index来禁用或启动此特性,默认是开启

以上是关于mysql show可以看到表,但是select的时候提示表不存在的主要内容,如果未能解决你的问题,请参考以下文章

MySQL6:视图

MySQL中自适应哈希索引

mysql view

select in 在postgresql的效率问题

我的mysql中的一个表有1000多条数据,搜索却只能看到500多条,急!

在 MySQL 中使用 SELECT 语句获取表名