我正尝试在 Windows 10 上使用 WAMP 将我们的数据库迁移到 MySQL,但我收到一个 PDO 异常,提示“服务器已消失”。我正在运行标准迁移命令:
php artisan migrate --seed
但是,当迁移到 ~4MiB 文件时,它会因以下错误而阻塞:
[ErrorException]
PDO::exec(): MySQL server has gone away
此迁移已在其他机器上运行,所以我有点困惑。我的 MySQL my.ini 文件如下所示:
[client]
port = 3306
socket = /tmp/mysql.sock
reconnect = true
[wampmysqld]
port = 3306
socket = /tmp/mysql.sock
key_buffer_size = 64M
max_allowed_packet = 512M
sort_buffer_size = 8M
net_buffer_length = 256K
read_buffer_size = 4M
read_rnd_buffer_size = 512K
myisam_sort_buffer_size = 8M
basedir=c:/wamp/bin/mysql/mysql5.6.17
log_error=C:\wamp\logs\mysql.log
datadir=c:/wamp/bin/mysql/mysql5.6.17/data
wait_timeout = 84600
interactive_timeout = 84600
当我通过 PhpMyAdmin 运行各个 SQL 文件时,一切运行良好。这可能是 WAMP 问题,因为我的同事已使用 XAMPP 成功迁移并且他具有相同数量的 RAM
最佳答案
这原来是 WAMP 的错误配置。在 [sqld] 部分重命名为 [sqld64] 之前,配置文件未被正确加载
如果发生这种情况,检查加载的MySQL配置
关于php - WAMP 上的 Laravel MySQL PDO "Server has gone away",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39162030/