HowTo - MyOOSDumper - Infos, Installation, Update [Projekt eingestellt]
Verfasst: 02.03.2021 21:34
Das Projekt MyOOSDumper wurde am 08.05.2024 eingestellt.
Bekanntmachung im MyOOS Forum: Projekt Einstellung
Zugehöriger Beitrag hier im Thema: viewtopic.php?p=1427220#p1427220
Die letzte Version an der gearbeitet wurde: 5.0.25
Das letzte offizielle Release war: 5.0.24
Bekanntmachung im MyOOS Forum: Projekt Einstellung
Zugehöriger Beitrag hier im Thema: viewtopic.php?p=1427220#p1427220
Die letzte Version an der gearbeitet wurde: 5.0.25
Das letzte offizielle Release war: 5.0.24
Ralf hat das letzte offizielle Release in einem neuen Repository zur Verfügung gestellt, danke dafür!
Release: MyOOS [Dumper] v 5.0.24
Zugehöriger Beitrag hier im Thema: viewtopic.php?p=1431997#p1431997
Allerdings sollte dabei bedacht werden, dass Ralf eine Warnung bezüglich "Sicherheitsrisiken" in seinem Forum veröffentlicht hatte. Siehe dazu diesen Beitrag.
Besser wäre folgendes:
Release: MyOOS [Dumper] v 5.0.24
Zugehöriger Beitrag hier im Thema: viewtopic.php?p=1431997#p1431997
Allerdings sollte dabei bedacht werden, dass Ralf eine Warnung bezüglich "Sicherheitsrisiken" in seinem Forum veröffentlicht hatte. Siehe dazu diesen Beitrag.
Besser wäre folgendes:
Mahony hat ein neues Projekt begonnen: phpBBDumper ehemals MyOOSDumper. Am besten kann man das Projekt unterstützen, indem man testet und dort in Mahony's Thema Rückmeldungen gibt.
Inhalt:
- A1: Informationen zu MyOOSDumper
- A2: Installation von MyOOSDumper
- A3: Manuelles Update von MyOOSDumper
Hinweis: Dieses HowTo ist entstanden, weil es hier bei uns noch nichts gab bezüglich grundlegende Infos und Anleitungen zu MyOOSDumper. Dieses HowTo existiert also primär um ein Thema zu haben, das man einfach verlinken kann. Dieses Thema ist jedoch nicht als allgemeines Support-Thema für MyOOSDumper gedacht. Ich habe zwar mehrere Updates zu MyOOSDumper beigesteuert, bin jedoch kein Fachmann für dieses Tool und erst Recht kein MySQL Profi. Bei technischen Problemen wäre das MyOOS Forum eine gute Wahl, welches ich hier ebenfalls verlinke.
A1: Informationen zu MyOOSDumper
Allgemein
- MyOOSDumper (Ralf Zschemisch) ist ein Fork von MySQLDumper (Daniel Schlichtholz) und war früher Teil des MyOOS Projekts. Seit Version 5.0.14 ist MyOOSDumper als eigenständiges Projekt auf GitHub verfügbar.
- Der Fork basiert auf dem letzten offiziellen MySQLDumper Release 1.24.4 (2011), jedoch nicht auf dem letzten MySQLDumper Repository Stand (2018). Damit hat bei MyOOSDumper eine abweichende Entwicklung stattgefunden. Vergleicht man den MyOOSDumper Sourcecode mit dem letzten MySQLDumper Repository Sourcecode, wird man erhebliche Abweichungen feststellen.
- Der Fork wurde 2013 angelegt und 2016 begannen die Arbeiten. Seitdem wurde MyOOSDumper kontinuierlich weiterentwickelt.
- PHP 8.0.2+
- MySQL 5.6+
- Apache 2.4+
MyOOS [Dumper] (Seite nicht mehr vorhanden)
Download
MyOOS-Dumper Releases (Seite nicht mehr vorhanden)
Anpassungen/Korrekturen
Auf GitHub können alle bisherigen Änderungen verfolgt werden, über die Historie der Commits (Seite nicht mehr vorhanden). Die detaillierten Infos sind jedoch meist sehr technisch und darum nicht für jeden nachvollziehbar. Darum folgt jetzt noch eine grobe Übersicht der primären Änderungen.
- Es wurden zahlreiche Kompatibilitätsanpassungen vorgenommen.
- Ebenso wurden zahlreiche Fehlerbehebungen in vielen Bereichen durchgeführt.
- Obsoleter Code wurde entfernt. Zum Beispiel wurde ein grosser Teil entfernt, der sich noch auf alte PHP Versionen bezieht wie z.B. PHP 4.3 und PHP 5.3, welche bei MyOOSDumper nicht mehr relevant sind.
- Überarbeitete Konfiguration.
- Der frühere Schalter-Wildwuchs bestehend aus Checkboxen und Radio-Buttons mit unterschiedlichen Bezeichnungen (aktiviert/nicht aktiviert und ja/nein) wurde eliminiert und konsequent auf Checkboxen geändert.
- Des Weiteren sind konsequent alle Eingabefelder für Zahlen rechtsbündig ausgerichtet.
- Der wählbare Mindestwert der Geschwindigkeitskontrolle beträgt jetzt 5 (statt 50), wodurch in Sonderfällen die Chance erhöht wird, eine erfolgreiche Sicherung durchführen zu können.
- Darüber hinaus gibt es weitere Detailänderungen in der Konfiguration.
- Die Möglichkeit binäre Daten im korrekten Container-Format exportieren zu können, um Kodierungsprobleme zu verhindern.
- Diese Option ist per Standard deaktiviert und kann optional aktiviert werden. Bei Datenbanken die Binärdaten enthalten können, wie zum Beispiel beim Mantis Bugtracker, ist diese Option empfehlenswert.
- Zu beachten ist hierbei, dass Sicherungen durch diese Option deutlich grösser werden können, sofern die Datenbank binäre Daten enthält.
- Zu beachten ist ebenfalls, dass diese Option aktuell nur für das PHP Backup (manuelles Backup) zur Verfügung steht, jedoch nicht für das Perl Backup (Cronjob).
- Überarbeitete Verzeichnisschutz Steuerung.
- Für die Anzeige (Warnung) bezüglich fehlendem Verzeichnisschutz ist es nicht mehr relevant ob
.htaccess
vorhanden ist oder nicht. Stattdessen wird ein externer Zugriff auf MyOOSDumper simuliert und somit der effektive Verzeichnisschutz getestet. - Darüber hinaus kennt MyOOSDumper jetzt auch weitere Zustände des Verzeichnisschutzes und es werden auch übergeordnete Berechtigungen erkannt.
- Durch diese Änderungen haben entsprechende Meldungen auf der Startseite bezüglich Verzeichnisschutz mehr Aussagekraft.
- Wenn der Verzeichnisschutz entfernt werden soll, erfolgt jetzt eine Rückfrage.
- Für die Anzeige (Warnung) bezüglich fehlendem Verzeichnisschutz ist es nicht mehr relevant ob
- Ebenso wurde der Verzeichnisschutz Generator überarbeitet.
- Obsolete Hash-Methoden wurden entfernt.
- Alle bislang fehlenden Hash-Methoden wurden hinzugefügt, wodurch alle von Apache aktuell unterstützten Methoden zur Verfügung stehen (siehe Apache 2.4 Doku).
- Die Standard Hash-Methode für Linux wurde von CRYPT auf MD5APR geändert.
- Etliche Texte die bisher fest im Source verankert waren, stehen jetzt als Sprachvariablen für die Übersetzer zur Verfügung.
Detaillierte Auflistung meiner Updates
Meine Commits im MyOOS Repository
#9 MyOOSDumper 5.0.2 Revision of the directory protection ... (patch 1)
Note: The changes listed below have increased the minimum PHP version from 5.3 to 5.5.
Fixes:
Primary changes:
Fixes:
Improvement:
Fixes:
#9 MyOOSDumper 5.0.2 Revision of the directory protection ... (patch 1)
- Since there are free hosters that block / deactivate external access, a corresponding error handling had to be implemented. This intercepts the PHP warnings in such cases and generates a controlled error message instead.
- Accordingly, 1 new language variable has been added for the error message.
- In the template for the start page, the code for the new messages from the directory protection check has been made more compact. The possibilities offered by the template system are now better used.
- A version switch for PHP versions 4.3.0 to 4.3.2 regarding the Zlib bug has been removed from the start page.
- Accordingly, 1 language variable for the error message has been removed.
- Accordingly, the code in the template has been removed.
- In "Configuration -> Interface" with the option "Display Server:" the unnecessary text "activated" has been removed and the radio buttons have been moved to a separate line.
- If, after installing the program, a situation arises where it is no longer possible to write to the
work
folder or its sub-folders, detailed error messages should be displayed. However, these could never be displayed because there was a typo in the corresponding template.
Note: The changes listed below have increased the minimum PHP version from 5.3 to 5.5.
- To check whether a directory protection exists, the existence of
.htaccess
is no longer checked, but the effective directory protection is tested with a new function. In doing so, an external access to MOD is simulated.- New function
IsAccessProtected()
added.
- New function
- The control for the display of whether a directory protection exists and the control for the generation of the buttons for the directory protection are now independent mechanisms.
- MOD now not only knows the status "Directory protection not available", but also the status "Directory protection available", "Directory protection incomplete" and "Higher-level permissions detected".
- Accordingly, 3 new language variables have been added.
- Directory protection generator revised and adapted to currently valid methods.
- Removed Methods: MD5
- Added methods: MD5APR (replaces MD5), bcrypt
- Accordingly, 1 new language variable has been added.
- Method descriptions changed.
- List of methods rearranged.
- Implemented the MD5APR algorithm from WhiteHat101.
- The standard hash method for Linux-based systems is no longer CRYPT, but MD5APR, which has also been the standard for Apache since 2.2.18.
- The generated content of
.htaccess
and.htpasswd
is now contained in<pre> ... </pre>
tags. This means that no HTML line breaks have to be inserted in the displayed content. Furthermore, the version switch for PHP 5.3 and XHTML has been removed. - When deleting the directory protection you will now be asked.
- Accordingly, 1 new language variable has been added.
- The designation of the start page (heading) is no longer permanently entered in the source. Instead, the existing language variable
L_HOME
is now used. - The language variable
L_HTACC_CONFIRM_DELETE
was named incorrectly and was renamed toL_HTACC_CONFIRM_CREATE
. - Changes and corrections to several language files.
Fixes:
- In the search function of the SQL browser there was another array variable that was initially declared as a string. However, further changes were necessary to correct this error.
- The error handling of the search function was incomplete. If, for whatever reason, no fields in the table could be determined, an error message was only issued for the first two search options, but not for the third.
- If the error (no fields) occurred, the search function could no longer be used in the current PHP session. In this case, the search term is automatically deleted in the session object so that the search function can be called up again via the menu.
- The error message regarding missing table fields was defined directly in the source. Instead, the new language variable
L_ERROR_NO_FIELDS
was added and the error message was transferred to the language file (all languages).
- If an attempt was made to use the search in the SQL browser, it generated PHP errors. The cause was an array which was initialized with an empty string. This is not allowed as of PHP 7.1 and causes a serious error.
Primary changes:
- The problems reported by PHPCompatibility (analysis tool) have been resolved to such an extent that the source is classified as fully compatible with the individual PHP versions. The focus was on versions 5.6 to 7.4.
- Among other things, the complete safe_mode path of the installation has been removed, which is no longer relevant for MOD anyway.
- At a later point in time, the compatibility adjustment will be extended to PHP 8.0, if necessary.
- In "Configuration> Databases", the unnecessary indentation of the input field in the "Table Prefix" column has been removed. This indentation leads to an unsightly vertical offset on smaller monitors. The reason for the offset is the removed
DOCTYPE
URI for MOD.
- When testing the revised installation procedure, another PHP error was found in
install.php
. This error only appears ifconfig.php
cannot be written during the installation. In this case, an error message should actually be displayed by MOD, but this caused a PHP error due to a missing language variable.
Fixes:
- When resetting to the standard configuration, the menu item "general" was displayed in the configuration UI instead of "General". The reason was a language variable that was present twice. Removed the redundant language variable
L_GENERAL
fromlang.php
(all languages). - If the "Multipart Backup" switch was deactivated when the configuration was saved, the numerical value for "Maximum File size" was set to "0" and the unit of measurement was reset to KB, effectively losing previously saved settings.
- In the UI configuration, checkboxes were used for simple switches, including radio buttons with the designations "activated / not activated" and "yes / no", which was chaotic and confusing. Checkboxes are now consistently used in the configuration for simple switches.
- Input fields for numbers are now consistently right-justified.
- Minor corrections in the UI.
- The Javascript function "obj_disable" changed so that it can be used for radio buttons as well as checkboxes and can also replace
obj_enable
. - The Javascript function
obj_enable
removed. - In
lang_config_overview.php
(all languages) the language variableL_CONFIG_EMAIL
was renamed toL_EMAIL_NOTIFICATION
. - The labels of the menu items "Email", "FTP" and "Cronscript" were previously defined directly in the source. These can now also be changed via the language file. A language variable was already available for "FTP", the following language variables were added for the other two:
L_CONFIG_EMAIL
L_CONFIG_CRONSCRIPT
- Several corrections for the languages
de
andde_du
. - The switch
ignore_enable_keys
has been added to the standard file.
- The export of binary data in a binary container (hex format) is now optional and deactivated by default. Thus MOD behaves as before by default. With a new installation the switch is in a defined state. When updating MOD, the switch is in an undefined state until the switch state has been explicitly selected.
- Two new language variables have also been added for this. The languages en, de and de (formal) have been adapted. For all other languages, the new language variables with English texts have been added.
Improvement:
- Fields with binary data are now exported in the designated binary data format. This prevents binary data from being corrupted due to coding problems in further processing programs and / or prevents problems when restoring a dump with binary data.
Fixes:
- If a DB is selected with "Home > Databases", 2 PHP errors are caused.
- In the config page "General" with "Backup > GZip compression:" a changed state is not saved. Instead, the state is influenced by "compressed (gz)". Both errors have the same cause.
- In the config page "Email" for "Maximum size of attachment:" the unit of measure (KB / MB) cannot be changed or saved permanently.
- In the "General" config page, the minimum value 5 is accepted for "Speed control". So far there have been 50, which is too much for some servers in connection with certain DBs (such as MantisBT). This gives you more leeway in the settings to be able to carry out successful backups even in special cases.
1. Vorbereitungen
- Das GitHub Archiv in einen separaten lokalen Arbeitsordner entpacken. Der im Archiv enthaltene Ordnername wäre reichlich sperrig und unpraktisch beim Aufruf per Web, weshalb wir ihn der Einfachheit halber schlicht in
mod
umbenennen. Wie der Ordner schlussendlich heisst bleibt jedem selbst überlassen, in diesem HowTo wird jedoch immer vonmod
ausgegangen.
- Den Ordner
mod
aus unserem lokalen Arbeitsordner in den gewünschten Ordner des Webservers hochladen. - Im Web den Ordner
mod
aufrufen. Wenn die eigene Webseitehttps://www.meinewebseite.de
lauten würde, wäre der Aufrufhttps://www.meinewebseite.de/mod
, sofern man den Ordnermod
in das Wurzelverzeichnis der Webseite kopiert hat. - Gewünschte Sprache auswählen und "Installation" klicken. In diesem Beispiel wählen wir "Deutsch".
- Auf der nächsten Seite "Datenbank-Parameter" müssen im Normalfall nur "Datenbank-Benutzer" und "Datenbank-Passwort" für die Datenbank eingegeben werden. Die übrigen Felder können auf Standard belassen werden und müssen nur in Sonderfällen angepasst werden.
- "zu MySQL verbinden" klicken.
- Wenn "Datenbank-Verbindung wurde hergestellt." erscheint, auf "speichern und Installation fortsetzen" klicken. Ansonsten Logindaten überprüfen.
- Als nächstes sollte die Startseite von MyOOSDumper erscheinen. Hier sollte als erstes ein Verzeichnisschutz eingerichtet werden, falls nicht schon ein übergeordneter Verzeichnisschutz vorhanden ist.
A3: Manuelles Update von MyOOSDumper
Info: Seit Version 5.0.19 bietet MyOOSDumper sowohl eine Update-Prüfung als auch eine Update-Funktion. Details dazu können in diesem Beitrag nachgelesen werden. Für den Fall dass die Update-Funktionalität nicht genutzt werden kann, bleibt nach wie vor diese Anleitung für ein manuelles Update bestehen.
1. Vorbereitungen lokal- Das GitHub Archiv in einen separaten lokalen Arbeitsordner entpacken. Den im Archiv enthaltenen Ordner in
mod
umbenennen. - Im Ordner
mod
die Dateiconfig.php
löschen.
Im Ordner
mod
auf dem Webserver alles löschen, mit Ausnahme der folgenden Ordner und Dateien:work
(Dieser Ordner enthält die Sicherungen, die aktuelle Konfiguration, Login-Daten und die Log-Dateien.)config.php
(Diese Datei enthält die Standard-Konfiguration und den MySQL Login der Erstinstallation.).htaccess
(Sofern vorhanden. Diese Datei wird für den Ordnerschutz benötigt.).htpasswd
(Sofern vorhanden. Diese Datei wird für den Ordnerschutz benötigt.)
Jetzt den kompletten Inhalt des lokalen Ordners
mod
in den Web Ordner von MyOOSDumper hochladen. Wenn alles richtig vorbereitet wurde, werden bei diesem Schritt keine Dateien überschrieben.4. Abschliessende Tätigkeiten
- MyOOSDumper im Browser aufrufen.
- Die Konfiguration aufrufen und "Speichern" klicken. Dadurch werden die Konfigurationsdateien auf den neuesten Stand gebracht.