Hallo Freunde der freien Heimautomatisierung,
ich nutze dblog für meine 1Wire Geräte und vor ein paar Tagen hat mein S0-Zähler mir ein Wert in die dblog geschrieben, der völlig daneben ist. Warum weiss ich nicht direkt.
Wie kann man jetzt Werte aus der dblog über die FHEM Commando Oberfläche löschen/ändern.
Krallos
garnicht, noch nicht... Das musst du direkt per Shell erledigen. Oder per intallierten Webfrontend (zb. phpmyadmin)
phpmyadmin zum Datenbank bearbeiten? *staun*
Ich stand gestern übrigens vor einer ähnlichen Frage: Datenbankreorganisation. Pro Tag wächst mein DbLog um ca. 10MB (und das ist schon sehr vieles vom Logging ausgenommen), das muss ich irgendwie umstrukturieren, zumindest auf Monatslogs runterbrechen.
Momentan mach ich das jetzt per Shell-Skript, richtig befriedigend ist das aber nicht.
siehe auch hier: http://forum.fhem.de/index.php/topic,19383.msg132900.html#msg132900
Mit "Daten löschen" meine ich auch gewissermaßen eine Aggregation. Zb. TemperaturMinutenwerte auf einen Tageswert zu aggegieren. Steht aber alles noch auf meiner ToDo Liste... ZurZeit bin ich mit meinen 1wire Projekten stark beschäftigt... und das alles wie bei anderen auch in der Freizeit... ;)
Trotzdem würde ich eher zu phpmysqladmin greifen anstatt zu dem von Dir empfohlenen phpmyadmin.
Zitat von: betateilchen am 03 Februar 2014, 10:57:36
Trotzdem würde ich eher zu phpmysqladmin greifen anstatt zu dem von Dir empfohlenen phpmyadmin.
Ups... ein schreibfehler... ;) ich nutze phppgadmin
ich nutze die Systemkonsole, da weiß ich wenigstens genau, was passiert :)
Zitat von: betateilchen am 03 Februar 2014, 11:18:21
ich nutze die Systemkonsole, da weiß ich wenigstens genau, was passiert :)
Wie genau? :)
Krallos
Standard SQL Syntax.
Beispielsweise
select count(*) from history
liefert die Anzahl Einträge in der Tabelle.
Anderes Beispiel:
# sqlite3 fhem-2013.db
ATTACH DATABASE fhem.db AS c;
INSERT INTO history SELECT * FROM c.history WHERE TIMESTAMP like "2013%";
DETACH DATABASE c;
Überträgt alle Logeinträge von 2013 aus der Tabelle "history" der Datenbank "fhem.db" in die Tabelle "history" der Datenbank "fhem-2013.db".
So archiviere ich alte Einträge, um dann die aktuelle fhem.db bereinigen zu können:
# sqlite3 fhem.db
sqlite> delete from history where TIMESTAMP like "2013%";
löscht aus der Tabelle history alle Logeinträge aus 2013.
Eine weitere Möglichkeit wäre z.B.
sqlitestudio-2.1.5
Daran denken, FHEM vorher stoppen, dann sqlitestudio starten, datenbank einlesen, Filter setzen, gewünschte Werte entfernen, Datenbankverbindung trennen,FHEM starten.
Gruß Joachim
:-\
Setzt aber eine grafische Oberfläche voraus. Da bin ich auf der Konsole schneller unterwegs.
Du ja, aber es gibt auch Mausschubser.
und da mit sqlitestudio auch mal eben 100 000 Werte gefiltert werden können, ohne Linux bzw. SQlite kenntnisse, ist das sehr angenehm.
Gruß Joachim
Zitat von: Joachim am 03 Februar 2014, 11:58:28aber es gibt auch Mausschubser
Schlimm genug. Stehen die in der Evolutionsgeschichte über oder unter den zufriedenen Fritzbox-Nutzern? 8)
Was soll man von einem Fossil erwarten, an dem die Entwicklung der grafischen Benutzeroberfläche vorbeigegangen ist. ;)
Es gibt nicht nur schwarz oder weiß, sondern auch diverse grautöne.
Zitat von: Joachim am 03 Februar 2014, 12:08:52an dem die Entwicklung der grafischen Benutzeroberfläche vorbeigegangen ist
wenn Du meinst...
mittlerweile OT, aber ich bevorzuge i.d.R. auch die Shell, wenn ich wählen könnte.
Hallo zusammen,
ich habe ein wenig mitgelesen und dabei stellt sich mir die Frage,
wie es aussieht,
gleich zu versuche nur so wenig Daten wie möglich in die Datenbank zu schreiben.
In den Logfiles wird dies ja normalerweise auch so praktiziert,
oder ist es ein Problem wenn man in den RegExp der DBLog
z.B. 50 Filter einstellt.
Bzw. Z.T: schreibe ich die Werte zuerst auf Dummy's und über diesen Umweg in die Logfiles.
Ist dann DBLog langsamer mit vielen Filtern und schreiben in die DB wie die LOGFile Methode mit vielen einzelnen Logfiles?
Was mir jedoch an den Logfiles nicht so gut gefällt, das ich keine übergeordneten Diagramme erstellen kann. :-[
Deshalb würde ich auch mit DBLog liebäugeln ::)
Vielleicht kann mir ein erfahrener DBLog User seine Erfahrung mitteilen 8)
Schöne Grüße
Hannes
ich hole das Thema mal hoch, da es meinem Anliegen am nächsten zu kommen scheint.
Mein Vorhaben:
SQLITE Datenbank vom RaspberryPi3 mit Jessie Lite von meinem Windows Rechner aus bearbeiten.
Es geht mir um Daten, die ich nachträglich händisch eintragen möchte um Daten aus der Vergangenheit plotten zu können.
Hat da einer eine Idee, wie ich das am elegantesten lösen kann?
Vielen lieben Dank
Jan
Ich habe jetzt nicht den ganzen Thread gelesen, aber wenn du wirklich nur Daten eintragen willst kannst du doch einen CSV Import in Sqlite machen...
Alternativ schau Dir mal den HeidiSQL-Client an. Schlank und sehr schnell. Von welchem Rechner aus Du Dich in welche DB einloggst ist völlig egal - IP, User&PW reichen da aus ;) Auch Wartungsaufgaben lassen sich so recht einfach auch für non-SQL-Shell-Cracks recht einfach durchführen.
(http://www2.pic-upload.de/thumb/31252893/HeidiSQL.png) (http://www.pic-upload.de/view-31252893/HeidiSQL.png.html)
danke dir für den tollen Tip