13.07.2015 Aufrufe

Download - IP-Symcon

Download - IP-Symcon

Download - IP-Symcon

MEHR ANZEIGEN
WENIGER ANZEIGEN

Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.

YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.

DatenbankwiederherstellungUnter gewissen Umständen, wie z.B. einem Stromausfall, kann die <strong>IP</strong>-<strong>Symcon</strong>-Logging-Datenbank aufgrund nichtabgeschlossener Schreibvorgänge beschädigt werden.Die folgende Anleitung beschreibt, wie die Datenbank auf Fehler überprüft und eine saubere Datenbankdatei erzeugtwerden kann.Fehlerüberprüfung1. <strong>IP</strong>-<strong>Symcon</strong>-Dienst beenden: Rechtsklick auf das <strong>IP</strong>S-Tray-Icon -> Dienst beenden2. Vorkompilierte Binärversion von SQLite 3 herunterladen: www.sqlite.org/download.html (aktuell:www.sqlite.org/sqlite-3_6_23_1.zip)3. sqlite3.exe in C:\<strong>IP</strong>-<strong>Symcon</strong>\db entpacken4. Kommandozeile starten: Start -> Ausführen -> “cmd” -> OK5. In das <strong>IP</strong>-<strong>Symcon</strong>-Datenbankverzeichnis wechseln: cd C:\<strong>IP</strong>-<strong>Symcon</strong>\db6. Datenbank überprüfen: sqlite3.exe logging.db “pragma integrity_check”7. Ist die Befehlsrückgabe “ok”, ist die Datenbank in Ordnung und es braucht nichts weiter unternommen werden.Andernfalls ist mit dem nächsten Schritt fortzufahren.Datenbank-WiederherstellungBefehle für die Kommandozeile (siehe Schritt Fehlerüberprüfung)1. Datenbankdatei umbenennen: mv logging.db logging.db.backup2. Datenbank wiederherstellen: sqlite3.exe logging.db.backup .dump | sqlite3.exe logging.db3. <strong>IP</strong>-<strong>Symcon</strong>-Dienst wieder starten4. Beschädigte Werte reaggregieren, hierzu kann das folgende Skript benutzt werdenAutomatische Reaggregation aller geloggten Variablen/******* Automatische Reaggregation aller geloggten Variablen** Dieses Skript reaggregiert automatisch alle geloggten Variablen nacheinander* automatisiert bei Ausführung. Nach Abschluss des Vorgangs wird der Skript-Timer* gestoppt. Zur erneuten kompletten Reaggregation ist der Inhalt der automatisch* unterhalb des Skripts angelegten Variable 'History' zu löschen.******/$archiveHandlerID = <strong>IP</strong>S_GetInstanceIDByName("Archive Handler", 0);$historyID = CreateVariableByName($_<strong>IP</strong>S['SELF'], "History", 3, "");$finished = true;$history = explode(',', GetValue($historyID));$variableIDs = <strong>IP</strong>S_GetVariableList();foreach ($variableIDs as $variableID){if (AC_GetLoggingStatus($archiveHandlerID, $variableID) && !in_array($variableID,$history)){$finished = false;if (@AC_ReAggregateVariable($archiveHandlerID, $variableID)){$history[] = $variableID;SetValue($historyID, implode(',', $history));}break;}

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!