3

数か月間 Magento サイトを開発してきました。このプロセス中に、多くの拡張機能をインストールおよび削除しました。これらの拡張機能自体がデータベース内に多くのテーブルとサーバー上のファイルを作成しました。また、独自の複数の拡張機能を構築しようとしました。多くのファイルを含みます。

どのファイルが読み取られて使用されているかを監視し、未使用のテーブルまたはファイルを削除する方法があるかどうか疑問に思っています。

基本的に、未使用のファイルとテーブルのストアをクリーンアップしたいだけです。

これが以前に行われたかどうか誰かが知っていますか?また、ある場合はどこから探し始めますか?

よろしく

4

2 に答える 2

3

未使用のテーブルは多くのスペースを占有せず、それらを削除すると、無効にした Magento モジュール用に Magento 自体が作成したテーブルを削除しようとしている場合に節約できるスペースよりも、バージョンのアップグレードに多大な負担がかかる可能性があります。

サードパーティのモジュールの操作に関しては、Magento は無料であるため、モジュールのインストール用に別のテスト サーバーをセットアップして、それらが本当に有用であるか、互換性があるかを確認してから、Web サイトで実行するために開発用のインストールにインストールすることをお勧めします。 .

そうは言っても、実際には、すべてのモジュールには mysql インストーラー スクリプトがあり、これを読んでどのデータベースの変更が行われたかを確認できるため、元に戻そうとすることができます。これらは通常、app/code/local/(namespace)/(modulename)/sql/(modulename)_setup/*またはに住んでいapp/code/community/(namespace)/(modulename)/sql/(modulename)_setup/*ます。それらは、規則に厳密に従わないサードパーティの開発者によって、上記の規則のいずれかが破られる可能性があるにもかかわらず、mysql4-install-*.php名前が付けられます。mysql4-upgrade-*.php

これらの SQL コードを使用して、モジュールが行った変更を元に戻すことができます。バックアップを強くお勧めします。

于 2012-11-25T16:45:07.813 に答える
3

私の知る限り、「使用されていないすべての拡張テーブルを自動的に削除する」ツールはありません.

続行する場合は、BACK IT UP、BACK IT UP、BACK IT UP !! . 次に、データベースを手動で調べ、各テーブルを調べます (phpMyAdmin を使用すると、これがはるかに簡単になります)。使用されていない拡張機能の名前空間で始まる場合 (通常、テーブル名は次のようになります: namespace_module_tablename)、テーブルを調べて、現在の/関連するデータが含まれているかどうかを確認します。Magento DB スキーマの便利なリファレンスがあります (http://www.magereverse.com/)。ただし、Magento DB にどれだけ精通しているかはわかりませんが、注意や知識が不足していると、甚大な被害をもたらす可能性があります。

Magento にあまり詳しくない場合は、この操作を行わないようにしてください。それがライブ ストアであるか、開発マシンであるかに応じて、いつでも最初からやり直すことができます。そうすれば、それが良い、クリーンなスタートであることがわかります。

于 2012-11-24T14:04:09.130 に答える