MySQLデータベーステーブルを最適化するLaravelパッケージ。
最適化テーブルステートメントは、テーブルを再編成し、無駄なスペースをコンパクトするために使用されます。再編成されたテーブルは、完全なテーブルスキャンを実行するために、より少ないディスクI/Oが必要です。
Tablize Tableの最適化テーブルのデータ部分をコピーし、インデックスを再構築します。利点は、インデックス内のデータの梱包の改善、およびテーブルスペース内およびディスク内の断片化の減少から生じます。利点は、各テーブルのデータによって異なります。他の人にはそうではなく、一部の人には大きな利益があること、またはテーブルを次に最適化するまで利益が時間の経過とともに減少することがわかります。この操作は、テーブルが大きい場合、または再構築されているインデックスがバッファープールに収まらない場合に遅くなる可能性があります。多くのデータをテーブルに追加した後の最初の実行は、多くの場合、後の実行よりもはるかに遅くなります。
詳細については、最適化手法に関するMySQL Webサイトをお読みください。
作曲家経由
$ 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を参照してください。
次のガイドとコード標準に従ってください。