【发布时间】:2019-04-20 16:38:24
【问题描述】:
使用 MySQL 时,我的迁移速度很慢。我计算了sqlite 和mysql 之间的差异,结果如下:
mysql
php artisan migrate:fresh 0,17s user 0,06s system 3% cpu 6,043 total
sqlite
php artisan migrate:fresh 0,16s user 0,08s system 90% cpu 0,268 total
除了大的时差,mysql 似乎使用很少的 CPU。所以我将these settings添加到/etc/mysql/my.cnf并重新启动了mysql服务,但这并没有影响速度,也没有影响cpu %。
我也尝试将迁移文件仅复制到一个新的 laravel 项目中,并获得了相同的结果。我在 macOS Mojave 上使用 homestead 和 VirtualBox。我有大约 20 个迁移,它们的规模很小。在我的生产服务器上运行迁移,不到 1 秒。
为什么在使用 MySQL 时我的迁移花费了意外的时间?
【问题讨论】:
-
在我的机器(没有虚拟机)上连接 MySQL 将响应时间缩短到 1 秒。