esplora/spire

Laravel SQLite 数据库生产环境的简易工具

0.0.2 2024-03-26 23:59 UTC

This package is auto-updated.

Last update: 2024-08-27 00:54:13 UTC


README

Spire 是一个为 Laravel 设计的包,旨在提供针对优化生产环境中 SQLite 数据库的便捷工具。

安装

要将 Spire 安装到您的 Laravel 项目中,您可以使用 Composer

composer require esplora/spire

用法

安装后,您可以通过 Artisan CLI 使用 Spire 的命令。

命令

启用 WAL 日志

为了在 SQLite 数据库上启用 WAL 日志以提高性能

php artisan sqlite:wal-enable

启用 WAL 日志可以提高数据库并发性,减少竞争,并在高流量生产环境中提高数据库的整体性能。

优化数据库

通过运行 PRAGMA optimize 优化 SQLite 数据库

php artisan sqlite:optimize

此组合优化过程确保对数据库文件的全面优化,从而提高性能和有效利用存储。

运行 VACUUM

通过运行 VACUUM 优化 SQLite 数据库

php artisan sqlite:vacuum

VACUUM 重建数据库文件,回收未使用的磁盘空间,并通过优化存储利用率来帮助提高数据库性能。

计划

为了高效地进行数据库维护,强烈建议将这些命令之一作为 cron 作业进行调度。例如,您可以通过将 cron 作业添加到您的调度器来定期优化 SQLite 数据库

// Optimize SQLite database every minute,
// see https://www.sqlite.org/pragma.html#pragma_optimize
$schedule->command('sqlite:optimize')->everyMinute();