[gelöst] DbLog wechselt zwischen connected und error

Begonnen von t1me2die, 02 November 2018, 17:12:03

Vorheriges Thema - Nächstes Thema

t1me2die

Moin liebes Forum,

ich bin gerade dabei auf einer meiner FHEM Instanzen auf MySQL umzustellen.
Ich habe mich soweit an den Wiki Eintrag gehalten und bin wie folgt vorgegangen:


apt-get update && apt-get install mysql-server mysql-client libdbd-mysql libdbd-mysql-perl


Danach mit
mysql -p -u root
eingeloggt, funktioniert.

Nun habe ich die entsprechende Datei angelegt in dem unten stehenden Pfad angelegt:

cd /opt/fhem/contrib/dblog/
nano db_create_mysql.sql


Dateiinhalt:

CREATE DATABASE `fhem` DEFAULT CHARACTER SET utf8 COLLATE utf8_bin;
CREATE USER 'admin'@'%' IDENTIFIED BY 'MEIN_PASSWORT';
CREATE TABLE `fhem`.`history` (TIMESTAMP TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP, DEVICE varchar(64), TYPE varchar(64), EVENT varchar(512), READING varchar(64), VALUE varchar(128), UNIT varchar(32));
CREATE TABLE `fhem`.`current` (TIMESTAMP TIMESTAMP, DEVICE varchar(64), TYPE varchar(64), EVENT varchar(512), READING varchar(64), VALUE varchar(128), UNIT varchar(32));
GRANT SELECT, INSERT, DELETE, UPDATE ON `fhem`.* TO 'admin'@'%';
CREATE INDEX Search_Idx ON `fhem`.`history` (DEVICE, READING, TIMESTAMP);


Nun habe ich die Tabelle angelegt wie folgt:

mysql -u root -p < db_create_mysql.sql


Nun habe ich nachgeschaut mit:

mysql -p -u admin
Enter password: MEIN_PASSWORT
show databases;


Die Tabelle "fhem" wurde angelegt.

Nun habe ich noch folgende Datei angepasst:

nano /opt/fhem/db.conf


Mit folgendem Inhalt:

#
# database configuration file
#
#
## for MySQL
################################################################
%dbconfig= (
        connection => "mysql:database=fhem;host=192.168.178.250;port=3306",
        user => "admin",
        password => "MEIN_PASSWORT",
);


Die IP Adresse ist die Instanz, auf der ich die Datenbank angelegt habe.

Nun habe ich das Device in FHEM definiert:

define logdb DbLog ./db.conf .*:.*


Und der Status switched kurz auf "connected" und danach wieder auf:

DBI connect('database=fhem;host=192.168.178.250;port=3306','admin',...) failed: Can't connect to MySQL server on '192.168.178.250' (111) at ./FHEM/93_DbLog.pm line 2374.


Nun habe ich noch ein:

rereadcfg

in FHEM gemacht.

Jedoch wechselt der Status immer von connected zu dem o.g. Fehler.

Logauszug mit verbose 5:

2018.11.02 17:06:24 5: DbLog logdb -> DbLog_Push Returncode:
2018.11.02 17:06:24 4: DbLog logdb - Waiting for database connection
2018.11.02 17:06:25 4: DbLog logdb -> ################################################################
2018.11.02 17:06:25 4: DbLog logdb -> ###              start of new Logcycle                       ###
2018.11.02 17:06:25 4: DbLog logdb -> ################################################################
2018.11.02 17:06:25 4: DbLog logdb -> number of events received: 3 for device: allowed_WEB
2018.11.02 17:06:25 4: DbLog logdb -> check Device: allowed_WEB , Event: lastAuthUser: admin
2018.11.02 17:06:25 5: DbLog logdb -> parsed Event: allowed_WEB , Event: lastAuthUser: admin
2018.11.02 17:06:25 5: DbLog logdb -> DbLogExclude of "allowed_WEB": .*
2018.11.02 17:06:25 4: DbLog logdb -> check Device: allowed_WEB , Event: lastAuthExpires: 1541779585
2018.11.02 17:06:25 5: DbLog logdb -> parsed Event: allowed_WEB , Event: lastAuthExpires: 1541779585
2018.11.02 17:06:25 5: DbLog logdb -> DbLogExclude of "allowed_WEB": .*
2018.11.02 17:06:25 4: DbLog logdb -> check Device: allowed_WEB , Event: lastAuthExpiresFmt: Fri, 09 Nov 2018 16:06:25 GMT
2018.11.02 17:06:25 5: DbLog logdb -> parsed Event: allowed_WEB , Event: lastAuthExpiresFmt: Fri, 09 Nov 2018 16:06:25 GMT
2018.11.02 17:06:25 5: DbLog logdb -> DbLogExclude of "allowed_WEB": .*
2018.11.02 17:06:26 3: DbLog logdb: Rereadcfg requested.
2018.11.02 17:06:26 3: DbLog logdb - Creating Push-Handle to database mysql:database=fhem;host=192.168.178.250;port=3306 with user admin
2018.11.02 17:06:26 2: DbLog logdb - Error: DBI connect('database=fhem;host=192.168.178.250;port=3306','admin',...) failed: Can't connect to MySQL server on '192.168.178.250' (111) at ./FHEM/93_DbLog.pm line 2374.

2018.11.02 17:06:26 4: DbLog logdb - Trying to connect to database
2018.11.02 17:06:26 4: DbLog logdb - Waiting for database connection
2018.11.02 17:06:26 4: DbLog logdb -> ################################################################
2018.11.02 17:06:26 4: DbLog logdb -> ###              start of new Logcycle                       ###
2018.11.02 17:06:26 4: DbLog logdb -> ################################################################
2018.11.02 17:06:26 4: DbLog logdb -> number of events received: 3 for device: allowed_WEB
2018.11.02 17:06:26 4: DbLog logdb -> check Device: allowed_WEB , Event: lastAuthUser: admin
2018.11.02 17:06:26 5: DbLog logdb -> parsed Event: allowed_WEB , Event: lastAuthUser: admin
2018.11.02 17:06:26 5: DbLog logdb -> DbLogExclude of "allowed_WEB": .*
2018.11.02 17:06:26 4: DbLog logdb -> check Device: allowed_WEB , Event: lastAuthExpires: 1541779586
2018.11.02 17:06:26 5: DbLog logdb -> parsed Event: allowed_WEB , Event: lastAuthExpires: 1541779586
2018.11.02 17:06:26 5: DbLog logdb -> DbLogExclude of "allowed_WEB": .*
2018.11.02 17:06:26 4: DbLog logdb -> check Device: allowed_WEB , Event: lastAuthExpiresFmt: Fri, 09 Nov 2018 16:06:26 GMT
2018.11.02 17:06:26 5: DbLog logdb -> parsed Event: allowed_WEB , Event: lastAuthExpiresFmt: Fri, 09 Nov 2018 16:06:26 GMT
2018.11.02 17:06:26 5: DbLog logdb -> DbLogExclude of "allowed_WEB": .*
2018.11.02 17:06:28 4: DbLog logdb -> ################################################################
2018.11.02 17:06:28 4: DbLog logdb -> ###              start of new Logcycle                       ###
2018.11.02 17:06:28 4: DbLog logdb -> ################################################################
2018.11.02 17:06:28 4: DbLog logdb -> number of events received: 3 for device: allowed_WEB
2018.11.02 17:06:28 4: DbLog logdb -> check Device: allowed_WEB , Event: lastAuthUser: admin
2018.11.02 17:06:28 5: DbLog logdb -> parsed Event: allowed_WEB , Event: lastAuthUser: admin
2018.11.02 17:06:28 5: DbLog logdb -> DbLogExclude of "allowed_WEB": .*
2018.11.02 17:06:28 4: DbLog logdb -> check Device: allowed_WEB , Event: lastAuthExpires: 1541779588
2018.11.02 17:06:28 5: DbLog logdb -> parsed Event: allowed_WEB , Event: lastAuthExpires: 1541779588
2018.11.02 17:06:28 5: DbLog logdb -> DbLogExclude of "allowed_WEB": .*
2018.11.02 17:06:28 4: DbLog logdb -> check Device: allowed_WEB , Event: lastAuthExpiresFmt: Fri, 09 Nov 2018 16:06:28 GMT
2018.11.02 17:06:28 5: DbLog logdb -> parsed Event: allowed_WEB , Event: lastAuthExpiresFmt: Fri, 09 Nov 2018 16:06:28 GMT
2018.11.02 17:06:28 5: DbLog logdb -> DbLogExclude of "allowed_WEB": .*
2018.11.02 17:06:28 4: DbLog logdb -> ################################################################
2018.11.02 17:06:28 4: DbLog logdb -> ###              start of new Logcycle                       ###
2018.11.02 17:06:28 4: DbLog logdb -> ################################################################
2018.11.02 17:06:28 4: DbLog logdb -> number of events received: 3 for device: allowed_WEB
2018.11.02 17:06:28 4: DbLog logdb -> check Device: allowed_WEB , Event: lastAuthUser: admin
2018.11.02 17:06:28 5: DbLog logdb -> parsed Event: allowed_WEB , Event: lastAuthUser: admin
2018.11.02 17:06:28 5: DbLog logdb -> DbLogExclude of "allowed_WEB": .*
2018.11.02 17:06:28 4: DbLog logdb -> check Device: allowed_WEB , Event: lastAuthExpires: 1541779588
2018.11.02 17:06:28 5: DbLog logdb -> parsed Event: allowed_WEB , Event: lastAuthExpires: 1541779588
2018.11.02 17:06:28 5: DbLog logdb -> DbLogExclude of "allowed_WEB": .*
2018.11.02 17:06:28 4: DbLog logdb -> check Device: allowed_WEB , Event: lastAuthExpiresFmt: Fri, 09 Nov 2018 16:06:28 GMT
2018.11.02 17:06:28 5: DbLog logdb -> parsed Event: allowed_WEB , Event: lastAuthExpiresFmt: Fri, 09 Nov 2018 16:06:28 GMT
2018.11.02 17:06:28 5: DbLog logdb -> DbLogExclude of "allowed_WEB": .*
2018.11.02 17:06:28 4: DbLog logdb -> ################################################################
2018.11.02 17:06:28 4: DbLog logdb -> ###              start of new Logcycle                       ###
2018.11.02 17:06:28 4: DbLog logdb -> ################################################################
2018.11.02 17:06:28 4: DbLog logdb -> number of events received: 3 for device: allowed_WEB
2018.11.02 17:06:28 4: DbLog logdb -> check Device: allowed_WEB , Event: lastAuthUser: admin
2018.11.02 17:06:28 5: DbLog logdb -> parsed Event: allowed_WEB , Event: lastAuthUser: admin
2018.11.02 17:06:28 5: DbLog logdb -> DbLogExclude of "allowed_WEB": .*
2018.11.02 17:06:28 4: DbLog logdb -> check Device: allowed_WEB , Event: lastAuthExpires: 1541779588
2018.11.02 17:06:28 5: DbLog logdb -> parsed Event: allowed_WEB , Event: lastAuthExpires: 1541779588
2018.11.02 17:06:28 5: DbLog logdb -> DbLogExclude of "allowed_WEB": .*
2018.11.02 17:06:28 4: DbLog logdb -> check Device: allowed_WEB , Event: lastAuthExpiresFmt: Fri, 09 Nov 2018 16:06:28 GMT
2018.11.02 17:06:28 5: DbLog logdb -> parsed Event: allowed_WEB , Event: lastAuthExpiresFmt: Fri, 09 Nov 2018 16:06:28 GMT
2018.11.02 17:06:28 5: DbLog logdb -> DbLogExclude of "allowed_WEB": .*
2018.11.02 17:06:28 4: DbLog logdb -> ################################################################
2018.11.02 17:06:28 4: DbLog logdb -> ###              start of new Logcycle                       ###
2018.11.02 17:06:28 4: DbLog logdb -> ################################################################
2018.11.02 17:06:28 4: DbLog logdb -> number of events received: 3 for device: allowed_WEB
2018.11.02 17:06:28 4: DbLog logdb -> check Device: allowed_WEB , Event: lastAuthUser: admin
2018.11.02 17:06:28 5: DbLog logdb -> parsed Event: allowed_WEB , Event: lastAuthUser: admin
2018.11.02 17:06:28 5: DbLog logdb -> DbLogExclude of "allowed_WEB": .*
2018.11.02 17:06:28 4: DbLog logdb -> check Device: allowed_WEB , Event: lastAuthExpires: 1541779588
2018.11.02 17:06:28 5: DbLog logdb -> parsed Event: allowed_WEB , Event: lastAuthExpires: 1541779588
2018.11.02 17:06:28 5: DbLog logdb -> DbLogExclude of "allowed_WEB": .*
2018.11.02 17:06:28 4: DbLog logdb -> check Device: allowed_WEB , Event: lastAuthExpiresFmt: Fri, 09 Nov 2018 16:06:28 GMT
2018.11.02 17:06:28 5: DbLog logdb -> parsed Event: allowed_WEB , Event: lastAuthExpiresFmt: Fri, 09 Nov 2018 16:06:28 GMT
2018.11.02 17:06:28 5: DbLog logdb -> DbLogExclude of "allowed_WEB": .*
2018.11.02 17:06:28 4: DbLog logdb -> ################################################################
2018.11.02 17:06:28 4: DbLog logdb -> ###              start of new Logcycle                       ###
2018.11.02 17:06:28 4: DbLog logdb -> ################################################################
2018.11.02 17:06:28 4: DbLog logdb -> number of events received: 3 for device: allowed_WEB
2018.11.02 17:06:28 4: DbLog logdb -> check Device: allowed_WEB , Event: lastAuthUser: admin
2018.11.02 17:06:28 5: DbLog logdb -> parsed Event: allowed_WEB , Event: lastAuthUser: admin
2018.11.02 17:06:28 5: DbLog logdb -> DbLogExclude of "allowed_WEB": .*
2018.11.02 17:06:28 4: DbLog logdb -> check Device: allowed_WEB , Event: lastAuthExpires: 1541779588
2018.11.02 17:06:28 5: DbLog logdb -> parsed Event: allowed_WEB , Event: lastAuthExpires: 1541779588
2018.11.02 17:06:28 5: DbLog logdb -> DbLogExclude of "allowed_WEB": .*
2018.11.02 17:06:28 4: DbLog logdb -> check Device: allowed_WEB , Event: lastAuthExpiresFmt: Fri, 09 Nov 2018 16:06:28 GMT
2018.11.02 17:06:28 5: DbLog logdb -> parsed Event: allowed_WEB , Event: lastAuthExpiresFmt: Fri, 09 Nov 2018 16:06:28 GMT
2018.11.02 17:06:28 5: DbLog logdb -> DbLogExclude of "allowed_WEB": .*
2018.11.02 17:06:28 4: DbLog logdb -> ################################################################
2018.11.02 17:06:28 4: DbLog logdb -> ###              start of new Logcycle                       ###
2018.11.02 17:06:28 4: DbLog logdb -> ################################################################
2018.11.02 17:06:28 4: DbLog logdb -> number of events received: 1 for device: global
2018.11.02 17:06:28 4: DbLog logdb -> check Device: global , Event: SAVE
2018.11.02 17:06:28 5: DbLog logdb -> parsed Event: global , Event: SAVE
2018.11.02 17:06:28 4: DbLog logdb -> added event - Timestamp: 2018-11-02 17:06:28, Device: global, Type: GLOBAL, Event: SAVE, Reading: state, Value: SAVE, Unit:
2018.11.02 17:06:28 2: DbLog logdb - DBI connect('database=fhem;host=192.168.178.250;port=3306','admin',...) failed: Can't connect to MySQL server on '192.168.178.250' (111) at ./FHEM/93_DbLog.pm line 2439.

2018.11.02 17:06:28 4: DbLog logdb -> ################################################################
2018.11.02 17:06:28 4: DbLog logdb -> ###              start of new Logcycle                       ###
2018.11.02 17:06:28 4: DbLog logdb -> ################################################################
2018.11.02 17:06:28 4: DbLog logdb -> number of events received: 1 for device: logdb
2018.11.02 17:06:28 4: DbLog logdb -> check Device: logdb , Event: state: DBI connect('database=fhem;host=192.168.178.250;port=3306','admin',...) failed: Can't connect to MySQL server on '192.168.178.250' (111) at ./FHEM/93_DbLog.pm line 2439.

2018.11.02 17:06:28 5: DbLog logdb -> parsed Event: logdb , Event: state: DBI connect('database=fhem;host=192.168.178.250;port=3306','admin',...) failed: Can't connect to MySQL server on '192.168.178.250' (111) at ./FHEM/93_DbLog.pm line 2439.

2018.11.02 17:06:28 4: DbLog logdb -> added event - Timestamp: 2018-11-02 17:06:28, Device: logdb, Type: DBLOG, Event: state: DBI connect('database=fhem;host=192.168.178.250;port=3306','admin',...) failed: Can't connect to MySQL server on '192.168.178.250' (111) at ./FHEM/93_DbLog.pm line 2439.
, Reading: state, Value: DBI connect('database=fhem;host=192.168.178.250;port=3306','admin',...) failed, Unit: Can't connect to MySQL server on
2018.11.02 17:06:28 2: DbLog logdb - DBI connect('database=fhem;host=192.168.178.250;port=3306','admin',...) failed: Can't connect to MySQL server on '192.168.178.250' (111) at ./FHEM/93_DbLog.pm line 2439.

2018.11.02 17:06:28 5: DbLog logdb -> DbLog_Push Returncode:
2018.11.02 17:06:28 5: DbLog logdb -> DbLog_Push Returncode:
2018.11.02 17:06:28 4: DbLog logdb -> ################################################################
2018.11.02 17:06:28 4: DbLog logdb -> ###              start of new Logcycle                       ###
2018.11.02 17:06:28 4: DbLog logdb -> ################################################################
2018.11.02 17:06:28 4: DbLog logdb -> number of events received: 1 for device: logdb
2018.11.02 17:06:28 4: DbLog logdb -> check Device: logdb , Event: state: connected
2018.11.02 17:06:28 5: DbLog logdb -> parsed Event: logdb , Event: state: connected
2018.11.02 17:06:28 4: DbLog logdb -> added event - Timestamp: 2018-11-02 17:06:28, Device: logdb, Type: DBLOG, Event: state: connected, Reading: state, Value: connected, Unit:
2018.11.02 17:06:28 2: DbLog logdb - DBI connect('database=fhem;host=192.168.178.250;port=3306','admin',...) failed: Can't connect to MySQL server on '192.168.178.250' (111) at ./FHEM/93_DbLog.pm line 2439.

2018.11.02 17:06:28 5: DbLog logdb -> DbLog_Push Returncode:
2018.11.02 17:06:30 4: DbLog logdb -> ################################################################
2018.11.02 17:06:30 4: DbLog logdb -> ###              start of new Logcycle                       ###
2018.11.02 17:06:30 4: DbLog logdb -> ################################################################
2018.11.02 17:06:30 4: DbLog logdb -> number of events received: 3 for device: allowed_WEB
2018.11.02 17:06:30 4: DbLog logdb -> check Device: allowed_WEB , Event: lastAuthUser: admin
2018.11.02 17:06:30 5: DbLog logdb -> parsed Event: allowed_WEB , Event: lastAuthUser: admin
2018.11.02 17:06:30 5: DbLog logdb -> DbLogExclude of "allowed_WEB": .*
2018.11.02 17:06:30 4: DbLog logdb -> check Device: allowed_WEB , Event: lastAuthExpires: 1541779590
2018.11.02 17:06:30 5: DbLog logdb -> parsed Event: allowed_WEB , Event: lastAuthExpires: 1541779590
2018.11.02 17:06:30 5: DbLog logdb -> DbLogExclude of "allowed_WEB": .*
2018.11.02 17:06:30 4: DbLog logdb -> check Device: allowed_WEB , Event: lastAuthExpiresFmt: Fri, 09 Nov 2018 16:06:30 GMT
2018.11.02 17:06:30 5: DbLog logdb -> parsed Event: allowed_WEB , Event: lastAuthExpiresFmt: Fri, 09 Nov 2018 16:06:30 GMT
2018.11.02 17:06:30 5: DbLog logdb -> DbLogExclude of "allowed_WEB": .*
2018.11.02 17:06:31 3: DbLog logdb - Creating Push-Handle to database mysql:database=fhem;host=192.168.178.250;port=3306 with user admin
2018.11.02 17:06:31 2: DbLog logdb - Error: DBI connect('database=fhem;host=192.168.178.250;port=3306','admin',...) failed: Can't connect to MySQL server on '192.168.178.250' (111) at ./FHEM/93_DbLog.pm line 2374.

2018.11.02 17:06:31 4: DbLog logdb - Trying to connect to database
2018.11.02 17:06:31 4: DbLog logdb -> ################################################################
2018.11.02 17:06:31 4: DbLog logdb -> ###              start of new Logcycle                       ###
2018.11.02 17:06:31 4: DbLog logdb -> ################################################################
2018.11.02 17:06:31 4: DbLog logdb -> number of events received: 1 for device: logdb
2018.11.02 17:06:31 4: DbLog logdb -> check Device: logdb , Event: state: DBI connect('database=fhem;host=192.168.178.250;port=3306','admin',...) failed: Can't connect to MySQL server on '192.168.178.250' (111) at ./FHEM/93_DbLog.pm line 2374.

2018.11.02 17:06:31 5: DbLog logdb -> parsed Event: logdb , Event: state: DBI connect('database=fhem;host=192.168.178.250;port=3306','admin',...) failed: Can't connect to MySQL server on '192.168.178.250' (111) at ./FHEM/93_DbLog.pm line 2374.

2018.11.02 17:06:31 4: DbLog logdb -> added event - Timestamp: 2018-11-02 17:06:31, Device: logdb, Type: DBLOG, Event: state: DBI connect('database=fhem;host=192.168.178.250;port=3306','admin',...) failed: Can't connect to MySQL server on '192.168.178.250' (111) at ./FHEM/93_DbLog.pm line 2374.
, Reading: state, Value: DBI connect('database=fhem;host=192.168.178.250;port=3306','admin',...) failed, Unit: Can't connect to MySQL server on
2018.11.02 17:06:31 2: DbLog logdb - DBI connect('database=fhem;host=192.168.178.250;port=3306','admin',...) failed: Can't connect to MySQL server on '192.168.178.250' (111) at ./FHEM/93_DbLog.pm line 2439.


Ein configCheck sagt folgendes:

Result of DbLog version check

Used DbLog version: 3.12.6
Recommendation: Your running version may be the current one. Please check for updates of DbLog periodically.

Result of configuration read check

Connection parameter store type: file
Connection parameter: Connection -> mysql:database=fhem;host=192.168.178.250;port=3306, User -> admin, Password -> read o.k.

Result of connection check

Connection to database was not successful.
Recommendation: Plese check logfile for further information.


List von dblog Device, wenn es connected ist:

Internals:
   CFGFN     
   COLUMNS    field length used for Device: 64, Type: 64, Event: 512, Reading: 64, Value: 128, Unit: 32
   CONFIGURATION ./db.conf
   DEF        ./db.conf .*:.*
   MODE       synchronous
   MODEL      MYSQL
   NAME       logdb
   NR         37
   NTFY_ORDER 50-logdb
   PID        3496
   REGEXP     .*:.*
   STATE      connected
   TYPE       DbLog
   UTF8       0
   VERSION    3.12.6
   dbconn     mysql:database=fhem;host=192.168.178.250;port=3306
   dbuser     admin
   HELPER:
     COLSET     1
     DEVICECOL  64
     EVENTCOL   512
     OLDSTATE   connected
     READINGCOL 64
     TYPECOL    64
     UNITCOL    32
     VALUECOL   128
   Helper:
     DBLOG:
       state:
         logdb:
           TIME       1541175069.58775
           VALUE      connected
   READINGS:
     2018-11-02 17:11:09   state           connected
   cache:
     index      0
Attributes:
   room       LogDB
   verbose    5


Und wenn es nicht connected ist:

Internals:
   CFGFN     
   COLUMNS    field length used for Device: 64, Type: 64, Event: 512, Reading: 64, Value: 128, Unit: 32
   CONFIGURATION ./db.conf
   DEF        ./db.conf .*:.*
   MODE       synchronous
   MODEL      MYSQL
   NAME       logdb
   NR         37
   NTFY_ORDER 50-logdb
   PID        3496
   REGEXP     .*:.*
   STATE      connected
   TYPE       DbLog
   UTF8       0
   VERSION    3.12.6
   dbconn     mysql:database=fhem;host=192.168.178.250;port=3306
   dbuser     admin
   HELPER:
     COLSET     1
     DEVICECOL  64
     EVENTCOL   512
     OLDSTATE   DBI connect('database=fhem;host=192.168.178.250;port=3306','admin',...) failed: Can't connect to MySQL server on '192.168.178.250' (111) at ./FHEM/93_DbLog.pm line 2374.

     READINGCOL 64
     TYPECOL    64
     UNITCOL    32
     VALUECOL   128
   Helper:
     DBLOG:
       state:
         logdb:
           TIME       1541175096.86675
           VALUE      DBI connect('database=fhem;host=192.168.178.250;port=3306','admin',...) failed
   READINGS:
     2018-11-02 17:11:36   state           connected
   cache:
     index      0
Attributes:
   room       LogDB
   verbose    5


Nun weiß ich nicht mehr weiter.
Ich hoffe, es sind alle Informationen vorhanden, die ihr benötigt.

Gruß
Mathze

t1me2die

Fehler selber gefunden, jedoch nicht verstanden!
Evtl. kann mir es jemand erklären?!

FALSCH:
Zitat von: t1me2die am 02 November 2018, 17:12:03
...
Mit folgendem Inhalt:

#
# database configuration file
#
#
## for MySQL
################################################################
%dbconfig= (
        connection => "mysql:database=fhem;host=192.168.178.250;port=3306",
        user => "admin",
        password => "MEIN_PASSWORT",
);




RICHTIG:

#
# database configuration file
#
#
## for MySQL
################################################################
%dbconfig= (
        connection => "mysql:database=fhem;host=localhost;port=3306",
        user => "admin",
        password => "MEIN_PASSWORT",
);


MySQL läuft auf derselben Maschine, wie FHEM.
FHEM läuft auf: 192.168.178.250
Dementsprechend müsste doch bei Host es egal sein, ob ich "localhost" oder die IP Adresse angeben oder täusche ich mich?

Gruß
Mathze

Wzut

Zitat von: t1me2die am 02 November 2018, 17:31:44
ob ich "localhost" oder die IP Adresse angeben oder täusche ich mich?
du täuscht dich , was der MYSQLServer an Verbindungen erlaubt steht in der my.conf
und das Loopback Device ist eben nicht eth0 :)
Maintainer der Module: MAX, MPD, UbiquitiMP, UbiquitiOut, SIP, BEOK, readingsWatcher

t1me2die

Zwar werden nun Datensätze in die DB geschrieben, jedoch erscheinen im Log weiterhin Fehlermeldungen:


2018.11.02 17:39:06 2: DbLog LogDB - DBI connect('database=fhem;host=localhost;port=3306','admin',...) failed: Access denied for user 'admin'@'localhost' (using password: NO) at ./FHEM/93_DbLog.pm line 2439.

2018.11.02 17:39:07 2: DbLog LogDB - DBI connect('database=fhem;host=localhost;port=3306','admin',...) failed: Access denied for user 'admin'@'localhost' (using password: NO) at ./FHEM/93_DbLog.pm line 2439.

2018.11.02 17:39:07 2: DbLog LogDB - DBI connect('database=fhem;host=localhost;port=3306','admin',...) failed: Access denied for user 'admin'@'localhost' (using password: NO) at ./FHEM/93_DbLog.pm line 2439.

2018.11.02 17:39:07 2: DbLog LogDB - DBI connect('database=fhem;host=localhost;port=3306','admin',...) failed: Access denied for user 'admin'@'localhost' (using password: NO) at ./FHEM/93_DbLog.pm line 2439.


Also irgendwas mache ich wohl noch falsch...
Jedoch hilft mir die Fehlermeldung nicht weiter.

Kann mir jemand auf die Sprünge helfen?

Gruß
Mathze

DS_Starter

Hat der User admin wirklich ein Passwort füt localhost zugewiesen bekommen ?

Sieh mal:

ZitatAccess denied for user 'admin'@'localhost' (using password: NO)

In der Userverwaltung von MySQL nachschauen ...
Proxmox+Debian+MariaDB, PV: SMA, Victron MPII+Pylontech+CerboGX
Maintainer: SSCam, SSChatBot, SSCal, SSFile, DbLog/DbRep, Log2Syslog, SolarForecast,Watches, Dashboard, PylonLowVoltage
Kaffeekasse: https://www.paypal.me/HMaaz
Contrib: https://svn.fhem.de/trac/browser/trunk/fhem/contrib/DS_Starter

DS_Starter

#5
Ich würde dir auch  empfehlen die MySQL auf alle Interfaces hören zu lassen.
Dazu in der my.cnf die beiden Zeilen auskommentieren:


skip-networking
bind-address = 127.0.0.1


Wo du diese Datei findest -> siehe https://stackoverflow.com/questions/2482234/how-do-i-find-the-mysql-my-cnf-location/2485758#2485758

Danach die DB restarten


sudo service mysql restart
Proxmox+Debian+MariaDB, PV: SMA, Victron MPII+Pylontech+CerboGX
Maintainer: SSCam, SSChatBot, SSCal, SSFile, DbLog/DbRep, Log2Syslog, SolarForecast,Watches, Dashboard, PylonLowVoltage
Kaffeekasse: https://www.paypal.me/HMaaz
Contrib: https://svn.fhem.de/trac/browser/trunk/fhem/contrib/DS_Starter

t1me2die

Zitat von: DS_Starter am 02 November 2018, 22:16:17
Ich würde dir auch  empfehlen die MySQL auf alle Interfaces hören zu lassen.
Dazu in der my.cnf die beiden Zeilen auskommentieren:


skip-networking
bind-address = 127.0.0.1

...

Meine my.cnf schaut wie folgt aus:


#
# The MySQL database server configuration file.
#
# You can copy this to one of:
# - "/etc/mysql/my.cnf" to set global options,
# - "~/.my.cnf" to set user-specific options.
#
# One can use all long options that the program supports.
# Run program with --help to get a list of available options and with
# --print-defaults to see which it would actually understand and use.
#
# For explanations see
# http://dev.mysql.com/doc/mysql/en/server-system-variables.html

#
# * IMPORTANT: Additional settings that can override those from this file!
#   The files must end with '.cnf', otherwise they'll be ignored.
#

!includedir /etc/mysql/conf.d/
!includedir /etc/mysql/mysql.conf.d/


Wenn ich mich mit

mysql -p -u admin


Einlogge, dann fragt er mich ja schon nach meinem Passwort.

Wenn ich mich als root einlogge und:

select * from mysql.user;


mache, dann erhalte ich auch die Ausgabe, dass ein Passwort vorhanden ist.
Nachdem ich ein shutdown restart gemacht habe, habe ich auch bisher keine error bekommen.

Gruß
Mathze

DS_Starter

Hallo Mathze,

Zitat
Meine my.cnf schaut wie folgt aus:

Code: [Auswählen]

#
# The MySQL database server configuration file.
#
# You can copy this to one of:
# - "/etc/mysql/my.cnf" to set global options,
# - "~/.my.cnf" to set user-specific options.
Dann schau mal in die /etc/mysql/my.cnf wenn es sie gibt bzw. in die Konfigurationsdateien die sich evtl. in den Verzeichnissen /etc/mysql/conf.d/ oder /etc/mysql/mysql.conf.d/ befinden.

ZitatNachdem ich ein shutdown restart gemacht habe, habe ich auch bisher keine error bekommen.
Dann scheint das ja zu passen.

Grüße
Heiko

Proxmox+Debian+MariaDB, PV: SMA, Victron MPII+Pylontech+CerboGX
Maintainer: SSCam, SSChatBot, SSCal, SSFile, DbLog/DbRep, Log2Syslog, SolarForecast,Watches, Dashboard, PylonLowVoltage
Kaffeekasse: https://www.paypal.me/HMaaz
Contrib: https://svn.fhem.de/trac/browser/trunk/fhem/contrib/DS_Starter

t1me2die

#8
Zitat von: DS_Starter am 03 November 2018, 09:08:00
Hallo Mathze,
Dann schau mal in die /etc/mysql/my.cnf
...

In dem Verzeichnis ist meine oben genannte Datei vorhanden.

In dem Verzeichnis
/etc/mysql/mysql.conf.d
befindet sich die Datei:

mysqld.cnf


Dort finde ich folgenden Part:

...
[mysqld]
#
# * Basic Settings
#
user = mysql
pid-file = /var/run/mysqld/mysqld.pid
socket = /var/run/mysqld/mysqld.sock
port = 3306
basedir = /usr
datadir = /var/lib/mysql
tmpdir = /tmp
lc-messages-dir = /usr/share/mysql
skip-external-locking
#
# Instead of skip-networking the default is now to listen only on
# localhost which is more compatible and is not less secure.
bind-address = 127.0.0.1
#
# * Fine Tuning
#
key_buffer_size = 16M
max_allowed_packet = 16M
thread_stack = 192K
thread_cache_size       = 8
...


In dem anderen Verzeichnis sind zwei Dateien vorhanden, welche jedoch keinen sonderlich großen Inhalt haben.

Gruß
Mathze

DS_Starter

Na da hast du doch die richtige gefunden.

mysqld.cnf

Nun bind-address wie oben beschrieben ändern und restarten.
Proxmox+Debian+MariaDB, PV: SMA, Victron MPII+Pylontech+CerboGX
Maintainer: SSCam, SSChatBot, SSCal, SSFile, DbLog/DbRep, Log2Syslog, SolarForecast,Watches, Dashboard, PylonLowVoltage
Kaffeekasse: https://www.paypal.me/HMaaz
Contrib: https://svn.fhem.de/trac/browser/trunk/fhem/contrib/DS_Starter