我导出了生产数据库并创建了一个名为 test 的开发数据库。我使用 ssh 将表/数据导入到开发数据库中。
mysql -u root -p -h localhost test < data.sql
当我使用命令行 mysql 时,我可以查看数据库结构并按预期返回行。但是,当我打开 phpmyadmin 时,“测试”数据库就在那里,但它没有表,我无法选择任何数据。
知道如何解决这个问题吗?
我在一个数据库上遇到了类似的问题,我想与您分享一个可能的原因/解决方案:
我像你一样导入了一个 .sql 文件,然后我去了 phpmyadmin,选择了数据库,结果令人惊讶:数据库中没有表,但我去了 mysql 命令行并执行了 SHOW TABLES,它们确实存在。
这就是我的情况,原始数据库有一些由用户定义的视图,而我的计算机的 mysql 用户中不存在这些视图。例子:
创建算法=未定义定义器=admin
@%
SQL 安全定义器视图cantidades
AS 选择 (...)
用户admin
@%
在我导出数据库的原始服务器上可用,但在我的计算机上不可用。
因此,此解决方案的修复方法是添加该用户,或者删除视图并使用现有用户再次创建它们。
我选择了第二个选项:
下拉视图cantidades
;
创建算法=未定义定义器=root
@localhost
SQL 安全定义器视图cantidades
AS 选择 (...)
我使用 root 是因为这是我本地 XAMPP 安装的默认用户,但出于安全目的,我建议使用与连接该数据库相同的用户。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)