Fehler beim Einbinden der Datenbank

Begonnen von NewbieNew, 13 November 2014, 12:01:13

Vorheriges Thema - Nächstes Thema

NewbieNew

Hallo,
ich habe einen komplett neuen FEHM 5.6 auf nem BabanaPi eingerichtet. Nun wollte ich gleich mit der Datenbank lt. Wiki weitermachen.

Soweit Datenbank angelegt (MySQL) dann wollte ich starten:


root@Banana01:~# perl /opt/fhem/fhem.pl configDB

2014.11.13 11:45:34 1: Can't locate configDB.pm in @INC (@INC contains: /etc/perl /usr/local/lib/perl/5.14.2 /usr/local/share/perl/5.14.2 /usr/lib/perl5 /usr/share/perl5 /usr/lib/perl/5.14 /usr/share/perl/5.14 /usr/local/lib/site_perl .) at (eval 5) line 2.
BEGIN failed--compilation aborted at (eval 5) line 2.

Undefined subroutine &main::cfgDB_Init called at /opt/fhem/fhem.pl line 413.
root@Banana01:~#


auch mit dem Befehl:

perl fhem.pl configDB

fand er die fhem.pl nicht.

Habe ich da was übersehen? Muß man irgendwo Pfade eintragen? Wenn ja, wo?

Dankeschön für Eure Hilfe.



betateilchen

Zitat von: NewbieNew am 13 November 2014, 12:01:13
perl fhem.pl configDB

fand er die fhem.pl nicht.

Aus welchem Verzeichnis heraus hast Du versucht, fhem zu starten? Du solltest vorher nach /opt/fhem wechseln und es von dort versuchen.

Es stimmt übrigens nicht, dass die fhem.pl nicht gefunden wird, sondern die configDB.pm kann nicht gefunden werden ;)
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

NewbieNew

#2
Zitat von: betateilchen am 13 November 2014, 12:14:46
Du solltest vorher nach /opt/fhem wechseln und es von dort versuchen.

Es stimmt übrigens nicht, dass die fhem.pl nicht gefunden wird, sondern die configDB.pm kann nicht gefunden werden ;)

Ok, danke, bin etwas weiter.

root@Banana01:/opt/fhem# perl fhem.pl configDB
Use of uninitialized value $line[3] in concatenation (.) or string at configDB.pm line 633.
root@Banana01:/opt/fhem#


?? Was ist dieser Fehler?

Tabellen (alle?) hat er schon angelegt, also scheint die Datenbank zu funktionieren.


mysql> SHOW TABLES FROM configDB;
+--------------------+
| Tables_in_configDB |
+--------------------+
| fhembinfilesave    |
| fhemconfig         |
| fhemstate          |
| fhemversions       |
+--------------------+
4 rows in set (0.00 sec)

mysql>



Dankeschön

PS ohne in /etc/fhem zu sein, findet er auch die fhem.pl nicht, daher hatte ich versucht den ganzen Pfad voranzustellen. Da hatte er die fhem.pl, aber nicht die Datenbank ;-)


betateilchen

Zitat von: NewbieNew am 13 November 2014, 13:26:30
?? Was ist dieser Fehler?

Du hast irgendeinen Eintrag in der Konfiguration stehen - wahrscheinlich ein define - der nicht aus vier Teilen besteht.

Die Hinweismeldung ist zwar unschön, aber ein wirkliches Problem sollte sie nicht darstellen. Fhem sollte trotzdem funktionieren.

-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

NewbieNew

Hallo, also kann ich ihn ignorieren? Die fhem.cfg ist absolut jungfräulich, so wie bei der Installation.
Wie finde ich raus, das alles richtig über die Datenbank läuft?

Dankeschön.


Gesendet von meinem KFSOWI mit Tapatalk


betateilchen

Wenn Du eine jungfräuliche fhem.cfg migriert hast, ist die Ursache das defaultmäßig vorhandene autocreate die Ursache für die Warnmeldung (es ist kein echter Fehler). Du kannst ihn einfach ignorieren.

Wenn Dein fhem beim Starten mit "configDB" funktioniert, ist alles in Ordnung.

Übrigens: wenn man "from scratch" anfängt, also noch gar keine eigene fhem-Konfiguration hat, braucht man keine Migration durchführen, sondern kann sofort mit der configDB loslegen. Es wird dann eine Standardkonfiguration generiert, die einen Zugriff per Webinterface gestattet.
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

NewbieNew

Ok, und sorry für folgende dumme Frage:
Wie starte ich FHEM mit der configDB? Bisher bin ich nur über den Web Browser reingegangen und fand keine Unterschiede. Oder gibt's eine Dokumentation hierzu, die ich übersehen habe?

Dankeschön

Gesendet von meinem KFSOWI mit Tapatalk


betateilchen

fhem mit configDB starten ist ganz einfach (und sollte auch im Init-Skript zu fhem sogar beschrieben sein)

Du hast das doch sogar schon gemacht:


cd /opt/fhem
perl fhem.pl configDB


ZitatBisher bin ich nur über den Web Browser reingegangen und fand keine Unterschiede.

Doch, im Frontend gibt es zwei erkennbare Unterschiede.

1. Der Eintrag "fhem.cfg" unter "Edit files" fehlt
2. Wenn Du auf "save config" klickst, sollte eine Meldung erscheinen, dass die Konfiguration in die configDB geschrieben wurde.

(http://up.picr.de/20115782ua.png)
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

betateilchen

Die hier diskutierte Warnung wird ab dem morgigen Update nicht mehr auftreten.
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

NewbieNew

#9
Moin,
sorry, das ich mich wieder melden muß,

In FHEM zeigt er noch alles wie gehabt an.

Jetzt hat er das:
Events (global only):
2014-11-14 07:54:15 Global global UPD ./configDB.pm


angezeigt. Kommen wie der Sache näher?

der Befehl im FHEM 

configdb migrate

fördert folgendes zutage:

Starting migration...
Processing: database initialization
Processing: save config
Processing: save state
Processing: fileimport
importing: ./log/eventTypes.txt
importing: ./www/gplot/templateDB.gplot
Migration completed

-----------------------------------------------------------------
configDB Database Information
-----------------------------------------------------------------
# $Id: configDB.pm 6965 2014-11-13 21:09:39Z betateilchen $
-----------------------------------------------------------------
dbconn: mysql:database=configDB;host=localhost;port=3306
dbuser: fhemuser
dbpass: fhempassword
dbtype: MYSQL
-----------------------------------------------------------------
config: 29 entries

Ver 0 saved: Fri Nov 14 08:34:19 2014 def: 8 attr: 12
Ver 1 saved: by cfgDB_Init  def: 3 attr: 4
-----------------------------------------------------------------
state: 6 entries saved: Fri Nov 14 08:34:20 2014
-----------------------------------------------------------------
filesave: 2 files stored in database
-----------------------------------------------------------------


Das sieht ja auch nicht schlecht aus, oder?


Aber die Datenbank scheint er nicht zu nutzen. Wo könnte ich noch suchen?

Dankeschön.

NewbieNew

#10
Zitat von: betateilchen am 13 November 2014, 22:23:31
Die hier diskutierte Warnung wird ab dem morgigen Update nicht mehr auftreten.

Ist weg, OK

root@Banana01:~# cd /opt/fhem
root@Banana01:/opt/fhem# perl fhem.pl configDB
root@Banana01:/opt/fhem#


Und auch die Datenbank ist eingebunden!

Ich hatte ganz einfach das Stoppen von FHEM vergessen.

Nun läuft es.

Dankeschön