我导出了生产数据库并创建了一个名为test的开发数据库.使用ssh我将表/数据导入开发数据库.
MysqL -u root -p -h localhost test < data.sql
我可以查看数据库结构,并在使用命令行MysqL时按预期返回行.但是,当我打开PHPmyadmin时,“test”数据库就在那里,但它没有表格,我无法选择任何数据.
有关如何解决此问题的任何想法?
最佳答案
我在一个数据库中遇到了类似的问题,我想与您分享可能的原因/解决方案:
原文链接:https://www.f2er.com/mysql/433970.html我已经导入了一个.sql文件然后我去了PHPmyadmin,选择了数据库并且惊讶:数据库中没有表,但我去了MysqL命令行并做了一个SHOW TABLES并且它们确实存在.
所以这就是我的情况,原始数据库有一些由我的计算机的MysqL用户中不存在的用户定义的VIEWS.例:
CREATE ALGORITHM = UNDEFINED DEFINER = admin @%sql SECURITY DEFINER VIEW cantidades AS select(…)
用户admin @%在我导出数据库的原始服务器上可用,但不在我的计算机上.
因此,对此解决方案的修复是要么添加该用户,要么删除视图并使用现有用户再次创建它们.
我选择了第二个选项:
DROP VIEW cantidades;
CREATE ALGORITHM = UNDEFINED DEFINER = root @ localhost sql SECURITY DEFINER VIEW cantidades AS select(…)