3 Stimmen

Entfernen Sie Magento nicht verwendete Dateien und Datenbanktabellen

Iv been developing a Magento site for a few months now, during this process I have installed and removed many extensions that themselves have created many tables within my database and files on the server, along with that I've tried building multiple extensions of my own including lots of files.

Im wondering if there is a way to monitor which files are being read and used, and then have the ability to remove any, unused tables, or files.

Basically i just want to clean up the store of unused files and tables.

does anyone know if this has been done before? also where to start looking if it has?

Regards

3voto

Joseph at SwiftOtter Punkte 4291

Nach meinem Kenntnisstand gibt es kein Werkzeug, das automatisch "alle ungenutzten Erweiterungstabellen entfernt", da dies potenziell sehr gefährlich sein könnte (Entfernen von noch verwendeten Tabellen oder Tabellen, bei denen die Erweiterung einfach deaktiviert ist usw.).

Wenn Sie fortfahren möchten, SICHERN SIE ES, SICHERN SIE ES, SICHERN SIE ES!!. Dann und nur dann durchsuchen Sie manuell die Datenbank und sehen sich jede Tabelle an (phpMyAdmin macht dies viel einfacher). Wenn es mit dem Namensraum einer Erweiterung beginnt, die nicht verwendet wird (normalerweise sind Tabellennamen wie: namespace_module_tablename), sehen Sie sich die Tabelle an, um zu sehen, ob sie aktuelle/relevante Daten enthält. Es gibt eine praktische Referenz für das Magento-Datenbankschema (http://www.magereverse.com/). Ich weiß jedoch nicht, wie vertraut Sie mit der Magento-Datenbank sind, und wenn man nicht vorsichtig/kenntnisreich ist, kann man enormen Schaden anrichten.

Wenn Sie nicht sehr vertraut mit Magento sind, würde ich Sie davon abhalten, diesen Vorgang durchzuführen. Je nachdem, ob es sich um einen Live-Shop oder nur um Ihre Entwicklungsmaschine handelt, könnten Sie immer von vorne beginnen. Dann wissen Sie, dass es ein guter, sauberer Start ist.

3voto

Fiasco Labs Punkte 6421

Unbenutzte Tabellen nehmen nicht viel Platz ein und ihr Entfernen kann bei Versionsupgrades viel mehr Ärger verursachen als der Platz, den Sie sparen, wenn Sie versuchen, Tabellen zu entfernen, die Magento selbst für Magento-Module erstellt hat, die Sie deaktiviert haben.

Was die Arbeit mit Drittanbieter-Modulen betrifft, ist es am besten, wenn Sie einen separaten Testserver für die Modulinstallation einrichten, um zu sehen, ob sie wirklich nützlich und/oder kompatibel sind, und sie dann in Ihrer Entwicklungsinstallation installieren, um mit Ihrer Website zu arbeiten.

Das gesagt habend, hat nachträglich jedes Modul ein MySQL-Installations-Skript, das Sie lesen können, um zu sehen, welche Datenbankänderungen vorgenommen wurden, damit Sie versuchen können, sie rückgängig zu machen. Diese befinden sich normalerweise in app/code/local/(namespace)/(modulename)/sql/(modulename)_setup/* oder app/code/community/(namespace)/(modulename)/sql/(modulename)_setup/*. Sie werden ähnlich benannt sein wie mysql4-install-*.php oder mysql4-upgrade-*.php, obwohl einige der obigen Konventionen von Drittanbieterentwicklern gebrochen werden könnten, die die Konventionen nicht genau befolgen.

Sie können den SQL-Code in diesen verwenden, um die Änderungen rückgängig zu machen, die das Modul vorgenommen hat. Backups werden dringend empfohlen.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X