我试图通过phpMyAdmin导入一个大的sql文件…但它一直显示错误

“MySql服务器已经消失”

怎么办呢?

如何在phpmyadmin中为现有的表生成创建表脚本?

我正在使用phpMyAdmin设置数据库。我有两个表(foo和bar),在它们的主键上建立索引。我试图在它们之间创建一个关系表(foo_bar),使用它们的主键作为外键。

我用MyISAM创建了这些表,但后来把三个表都换成了InnoDB,因为我读到MyISAM不支持外键。所有id字段都是INT(11)。

当我选择foo_bar表时,单击“关系视图”链接,并尝试将FK列设置为database.foo.id和database.bar。id,它会在每一列旁边说“未定义索引!”

我错过了什么?

澄清/更新

为了简单起见,我想继续使用phpMyAdmin。我目前使用XAMPP,这很容易让我专注于PHP/CSS/Javascript,它附带phpMyAdmin。

此外,虽然我还不能设置显式外键,我有一个关系表,可以执行这样的连接:

SELECT * 
FROM foo 
INNER JOIN foo_bar 
ON foo.id = foo_bar.foo_id 
INNER JOIN bar
ON foo_bar.bar_id = bar.id;

在数据库中没有显式定义fk只是让我感到不舒服。

我已经改变了我知道的所有php.ini参数: upload_max_filesize post_max_size。

为什么我仍然看到2MB?

我使用Zend Server CE,在Windows 7主机上的Ubuntu VirtualBox上。

我已经上传了备份到一个表,打开表我看到这个:

Warning in ./libraries/sql.lib.php#601
count(): Parameter must be an array or an object that implements Countable

Backtrace

./libraries/sql.lib.php#2038: PMA_isRememberSortingOrder(array)
./libraries/sql.lib.php#1984: PMA_executeQueryAndGetQueryResponse(
array,
boolean true,
string 'alternativegirls',
string 'tgp_photo',
NULL,
NULL,
NULL,
NULL,
NULL,
NULL,
string '',
string './themes/pmahomme/img/',
NULL,
NULL,
NULL,
string 'SELECT * FROM `tgp_photo`',
NULL,
NULL,
)
./sql.php#216: PMA_executeQueryAndSendQueryResponse(
array,
boolean true,
string 'alternativegirls',
string 'tgp_photo',
NULL,
NULL,
NULL,
NULL,
NULL,
NULL,
string '',
string './themes/pmahomme/img/',
NULL,
NULL,
NULL,
string 'SELECT * FROM `tgp_photo`',
NULL,
NULL,
)
./index.php#53: include(./sql.php)

在phpMyAdmin……

PHP是7.2,服务器是Ubuntu 16.04,昨天安装的。

我看到一些人在他们的代码中有这个错误,但我没有发现任何人在phpMyAdmin中收到它…

我该怎么办?这是我的错误吗?phpmyadmin错误?等待更新?回到PHP 7.1?