【问题标题】:php artisan migrate with sqlite throws error, database is lockedphp artisan migrate with sqlite 抛出错误,数据库被锁定
【发布时间】:2019-06-13 17:40:55
【问题描述】:

我尝试使用 Laravel 和 SQLite,但每当我运行 php artisan migrate 时,我总是会遇到同样的错误:Illuminate\Database\QueryException : SQLSTATE[HY000]: General error: 5 database is locked (SQL: create table "migrations" ("id" integer not null primary key autoincrement, "migration" varchar not null, "batch" integer not null))

我尝试了所有选项,尝试以sudo php artisan migrate 运行命令,但仍然没有运气,我将目录和文件权限设置为 777,但仍然出现相同的错误。

我在 vagrant box 上运行 Laravel,主机是 Windows 10,来宾是 Ubuntu 16.04,并使用推荐的同步方法 sync_type: smb

我知道我可以使用 MySQL 或其他驱动程序,我只是好奇是否有人知道原因。

顺便说一句,我尝试了fuser database.sqlite,它返回空,这意味着没有其他进程正在使用它。

我注意到,当我运行 php artisan migrate 时,会创建一个新文件 database.sqlite-journal,它也在主机上同步,我在想是否有可能是 IDE PhpStrom 或主机 (Windows) 正在使用临时的database.sqlite-journal 并锁定它?!

【问题讨论】:

    标签: laravel sqlite laravel-artisan artisan-migrate


    【解决方案1】:

    好的,我找到了问题,但我不知道原因?

    我将主机 (Windows) 和来宾 (Ubuntu) 之间的同步文件夹 sync_typesmb 切换为 default,一切正常。

    如果有人知道sync_type: smb 的原因,可以发帖。

    【讨论】:

      猜你喜欢
      • 2019-10-29
      • 2015-04-12
      • 2020-01-20
      • 2012-02-09
      • 2018-06-11
      • 1970-01-01
      • 2013-04-18
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多