laravel mysql optimize
[L8] Upgrade
優化MySQL數據庫表的Laravel軟件包。
優化表語句用於重組表並壓實所有浪費的空間。重組的桌子需要更少的磁盤I/O才能執行全表掃描。
優化表複製表的數據部分並重建索引。好處來自索引中數據的改善,以及在表空間和磁盤上減少碎片化。好處取決於每個表中的數據。您可能會發現某些而不是其他人的收益顯著,或者隨著時間的推移收益下降,直到您下次優化桌子。如果桌子較大,或者重建的索引不適合緩衝池,則此操作可能會很慢。將大量數據添加到表之後的第一次運行通常比以後的運行慢得多。
有關更多詳細信息,請閱讀有關優化技術的MySQL網站。
通過作曲家
$ composer require zakriyarahman/laravel-mysql-optimize
該軟件包提供默認配置變量。將配置發佈到您的存儲庫中以進行自定義配置。數據庫的默認設置設置為環境DB_DATABASE
變量。
$ artisan vendor:publish --provider= " ZaksMySQLOptimierServiceProvider " --tag=config
使用可選數據庫和表/s優化數據庫表。
$ artisan db:optimize --database={DATABASE} --table={table[]}
使用該數據庫中的所有表優化默認數據庫(在軟件包的配置中定義)。將軟件包配置發佈到更改Defualt數據庫設置。
$ artisan db:optimize
優化與默認數據庫配置分開的自定義數據庫。
$ artisan db:optimize --database=database_test
僅優化一組表。
$ artisan db:optimize --table=table_1 --table=table_2
當不存在諸如表格或數據庫之類的參數時,會引發異常。
Zaks MySQLOptimier Exceptions DatabaseNotFoundException
Zaks MySQLOptimier Exceptions TableNotFoundException
$ composer test
請在此處查看許可證
有關詳細信息,請參見貢獻和code_of_conduct。
請遵循以下指南和代碼標準: