[gelöst] fhem.db - No table in database. ???

Begonnen von jove01, 19 Juli 2017, 18:40:21

Vorheriges Thema - Nächstes Thema

jove01

Hallo

ich nutze schon ewig lange sqlite "SQLite:dbname=/opt/fhem/fhem.db".

Heute habe ich für DbLog_reduce u.a. die Anzahl der Tage reduziert. Dabei hatte ich einen Netzwerkfehler im Webfrontend. Danach habe ich die config gesichert.

Später wollte ich mit phpliteadmin prüfen, wieviel Einträge für dei einzelnen Device gschrieben werden, um bei diesen evtl. etwas zu optimieren. phpliteadmin ist auch schon ewig installiert.

Jetzt bekomme ich aber unter fhem.db No table in database ??? Wenn ich dann über Putty die einzelnen Test laut Wiki durchführe bekomme ich
SQLite version 3.8.7.1 2014-10-29 13:59:56
Enter ".help" for usage hints.
sqlite> .tables
sqlite> .schema
sqlite> pragma integrity_check;
ok
sqlite> select * from HISTORY;
Error: no such table: HISTORY
sqlite>


Die Plots scheinen aber alle zu funktionieren!?

Hat sich an fhem.db irgendetwas geändert, dass ich so nicht mehr zugreifen kann? Aber im Wiki steht nichts.

Sollte ich von fhem.db eine Sicherung von gestern oder wann einspielen ?

Ich hoffe, einer kann meine Verwirrung auflösen.

Danke
Jürgen
Aktuelles FHEM auf Raspi 3 und dbLog
CUL 433
HMLan Rolladensteuerung

amenomade

Was ist das für eine Db? Config oder Log?

Poste mal ein "list <dbDevice>"
Pi 3B, Alexa, CUL868+Selbstbau 1/2λ-Dipol-Antenne, USB Optolink / Vitotronic, Debmatic und HM / HmIP Komponenten, Rademacher Duofern Jalousien, Fritz!Dect Thermostaten, Proteus

jove01

Hallo amenomade

vielen Dank für deine Antwort

da ich <dbDevice> nicht ganz verstanden habe, da meines Wissens <> für einen Platzhalter steht, habe ich ein list myDbLog durchgeführt (Solltest du irgend etwas anderes gemeint haben, bitte korrigiere mich.

Internals:
   COLUMNS    field length used for Device: 64, Type: 64, Event: 512, Reading: 64, Value: 128, Unit: 32
   CONFIGURATION /opt/fhem/db.conf
   DBMODEL    SQLITE
   DEF        /opt/fhem/db.conf .*:(.*emp.*|desired-temp|.*alve.*|.*umidity.*|statTotal.*|current|actuator|ur_Th.*|motion|brightness|PWMPulse|actorState|PID.*).*
   MODE       synchronous
   NAME       myDbLog
   NR         23
   NTFY_ORDER 50-myDbLog
   PID        1138
   REGEXP     .*:(.*emp.*|desired-temp|.*alve.*|.*umidity.*|statTotal.*|current|actuator|ur_Th.*|motion|brightness|PWMPulse|actorState|PID.*).*
   STATE      connected
   TYPE       DbLog
   VERSION    2.17.1
   dbconn     SQLite:dbname=/opt/fhem/fhem.db
   dbuser
   Helper:
     COLSET     1
     DEVICECOL  64
     EVENTCOL   512
     READINGCOL 64
     TYPECOL    64
     UNITCOL    32
     VALUECOL   128
   Readings:
     2017-03-02 02:00:11   lastReduceLogResult Rows processed: 44556, deleted: 1982, updated: 94, excluded: 29140, time: 11.00sec
     2017-07-19 02:30:05   lastRowsDeleted 2968
     2017-07-19 02:00:06   reduceLogState  Rows processed: 20846, deleted: 1876, updated: 87, excluded: 11976, time: 6.00sec
     2017-07-19 23:54:23   state           connected
   Cache:
     index      0
Attributes:
   DbLogSelectionMode Exclude/Include
   DbLogType  History
   room       01 Logs


Selbst wenn ich irgendwann mal " DbLogType  History" gesetzt habe, müßten die Tabellen doch da sein.
Aktuelles FHEM auf Raspi 3 und dbLog
CUL 433
HMLan Rolladensteuerung

amenomade

Ja, das meinte ich.

Anscheinend sind die Daten doch da. Was sagt:
set myDbLog count?

Wenn > 0, wie hast Du sqlite im terminal gestartet? Ist die Db open?
Pi 3B, Alexa, CUL868+Selbstbau 1/2λ-Dipol-Antenne, USB Optolink / Vitotronic, Debmatic und HM / HmIP Komponenten, Rademacher Duofern Jalousien, Fritz!Dect Thermostaten, Proteus

jove01

#4
Hallo amenomade

das sieht gut aus
countCurrent

0

2017-07-20 10:09:11
countHistory

735961

2017-07-20 10:09:11
lastReduceLogResult

Rows processed: 44556, deleted: 1982, updated: 94, excluded: 29140, time: 11.00sec

2017-03-02 02:00:11
lastRowsDeleted

19968

2017-07-20 02:30:13
reduceLogState

Rows processed: 44787, deleted: 11403, updated: 573, excluded: 22782, time: 15.00sec

2017-07-20 02:00:15
state

connected

2017-07-20 10:09:30


Zitatsudo sqlite3 /opt/fhem/fhem.db
Aktuelles FHEM auf Raspi 3 und dbLog
CUL 433
HMLan Rolladensteuerung

amenomade

Pi 3B, Alexa, CUL868+Selbstbau 1/2λ-Dipol-Antenne, USB Optolink / Vitotronic, Debmatic und HM / HmIP Komponenten, Rademacher Duofern Jalousien, Fritz!Dect Thermostaten, Proteus

jove01


sqlite> .databases
seq  name             file
---  ---------------  ----------------------------------------------------------
0    main             /opt/fhem/fhem.db
sqlite> .dbinfo
Error: unknown command or invalid arguments:  "dbinfo". Enter ".help" for help


jedoch

sqlite> .fullschema
CREATE TABLE 'history' (TIMESTAMP TIMESTAMP, DEVICE varchar(32), TYPE varchar(32), EVENT varchar(512), READING varchar(32), VALUE varchar(32), UNIT varchar(32));
CREATE TABLE 'current' (TIMESTAMP TIMESTAMP, DEVICE varchar(32), TYPE varchar(32), EVENT varchar(512), READING varchar(32), VALUE varchar(32), UNIT varchar(32));
CREATE INDEX Search_Idx ON `history` (DEVICE, READING, TIMESTAMP);
/* No STAT tables available */


Es passieren wundersame Dinge. jetzt habe ich nochmals ausgeführt

sqlite> .tables
current  history


und auch bei ".schema" bekomme ich das gewünschte Ergebnis. Warum auch immer? SQlite habe ich immer mit dem gleichen  (kopiert aus dem Wiki) in der Konsole gestartet.

Letzlich bin ich wieder bei phpliteadmin. Hier wird fhem.db angezeigt, aber "no table in database". Kann sich an den Rechten irgendetwas geändert haben ?

Vorab schon einmal Dank für deine Unterstützung.

Jürgen
Aktuelles FHEM auf Raspi 3 und dbLog
CUL 433
HMLan Rolladensteuerung

jove01

jetzt ist das Problem phpliteadmin auch geklärt. Es war ein Berechtigungsproblem

Nochmals vielen Dank
Aktuelles FHEM auf Raspi 3 und dbLog
CUL 433
HMLan Rolladensteuerung