HAP mysql Probleme (Ubuntu 16 oder Debian 10)

69 views
Skip to first unread message

Joern

unread,
Aug 22, 2020, 3:15:59 PM8/22/20
to hap-users
Hallo zusammen,

ich nutze jetzt Proxmox & würde gern HAP in Ubuntu 16/ 20 oder Debian 10 laufen lassen (LXC Container).

Bei der Installation jedoch scheint mit der MySQL Datenbank ein Konflikt zu anstehen, denn ich nicht schaffe zu lösen, evtl. was einfaches durch neuere MySQL Version...)

Frische Installation Ubuntu 16 & Installationscript ohne Clear...

(SQL vom GIT - mysql < /opt/hap/etc/hap.sql -u root -p)

MySQL-User [root]: root

Enter password: 

ERROR 1054 (42S22) at line 724: Unknown column 'Password' in 'field list'


Wenn ich die SQL aus meinem Backup nehm, geht es!

Hier jedoch bleibt hap-mp.pl hängen:


root@HAP:~# /opt/hap/bin/hap-mp.pl 

DBI connect('hap','hap',...) failed: Access denied for user 'hap'@'localhost' (using password: YES) at /opt/hap/bin/../lib/HAP/Init.pm line 61.

No connection to SQL-Server possible ..  Error Code: DBI::errstr

Can't use string ("1") as a HASH ref while "strict refs" in use at /opt/hap/bin/../lib/HAP/Init.pm line 62.



Nicolas Angelo

unread,
Aug 23, 2020, 5:55:23 AM8/23/20
to hap-...@googlegroups.com
Hi,

Zu dem ersten Problem kann ich nichts sagen. Das "Can't use string as hash ref" kenn ich allerdings viel zu gut. Das hat mir vor ein paar Jahren wie ich auf Proxmox umgestellt habe auch einiges an Kopfweh bereitet. Ich bin das dann umgangen in dem ich alle HAP Services in Docker Images mit der passenden Perl Version als Basis verpackt habe. Das läuft auch jetzt seit etwa 3 Jahren sehr stabil.

Falls dich (oder auch andere) das interessiert, kann ich mich die nächsten Tage nochmal hinsetzen und Richtung github und Docker Hub publishen. Das liegt bei mir momentan alles noch irgendwo lokal verstreut.

Grüße,
Nico

--
Sie erhalten diese Nachricht, weil Sie in Google Groups E-Mails von der Gruppe "hap-users" abonniert haben.
Wenn Sie sich von dieser Gruppe abmelden und keine E-Mails mehr von dieser Gruppe erhalten möchten, senden Sie eine E-Mail an hap-users+...@googlegroups.com.
Wenn Sie diese Diskussion im Web verfolgen möchten, rufen Sie https://groups.google.com/d/msgid/hap-users/f55ca94e-4281-4c81-b980-9bb6524af134n%40googlegroups.com auf.

Joern

unread,
Aug 23, 2020, 6:24:10 AM8/23/20
to hap-users
Hallo,

das wäre super weil ich es langfristig auch auf Proxmox haben möchte. Docker selber kann ja in nem LXC container Ressourcen schonend laufen ...

Mein PI3 läuft zwar noch, aber kurzer Test heute mit aktuellestem Raspbian als Basis zeigte das gleiche Problem.... Sofern man die "kompatible Perl Version" dauerhaft via Docker einfriert, wäre das Thema ja zumindest gesichert, nicht das man bei HW wechsel / Änderungen es nicht mehr zum laufen bekommt.

Joern

unread,
Aug 24, 2020, 3:00:31 AM8/24/20
to hap-users
Hallo,

welche Perl Version exakt nutzt du?
Habe via Perlbrew mal in einem Ubuntu 20.04 LXC Container die Perl Version 5.18.4 && 5.20.3 getestet, aber ohne Erfolg.

joern@HAPu:~$ /opt/hap/bin/hap-mp.pl 

DBI connect('hap','hap',...) failed: Access denied for user 'hap'@'localhost' (using password: YES) at /opt/hap/bin/../lib/HAP/Init.pm line 61.

No connection to SQL-Server possible ..  Error Code: DBI::errstr

Can't use string ("1") as a HASH ref while "strict refs" in use at /opt/hap/bin/../lib/HAP/Init.pm line 62.


Auf meinem PI läuft es aktuell ok mit Perl 5.20.2, wovon auch auch die SQL Datendank kopiert wurde...


Nicolas Angelo

unread,
Aug 28, 2020, 4:22:21 AM8/28/20
to hap-...@googlegroups.com
Hallo,

Hab nun endlich die Dockerfiles gefunden. Leider sieht man, dass ich da gerade erst angefangen habe Docker zu verstehen. D.h. da sind Versionen nirgends fixiert. Es basiert außerdem auf einem raspbian base image, das nicht mehr gewartet wird.
Perl Version ist allerdings 5.20.3. Was mir abgesehen davon noch aufgefallen ist, dass ich im Vergleich zum "offiziellen" hap.yml einen leicht anderen DB Connect string habe:

Model::hapModel:
  schema_class: hapConfig::hapSchema
  connect_info:
    - dbi:mysql:database=hap;host=192.168.5.4
    - 'hap'
    ...

Evtl. war das damals ja die Lösung.

Wenn Sie diese Diskussion im Web verfolgen möchten, rufen Sie https://groups.google.com/d/msgid/hap-users/a1d455ca-27f4-4ef1-840a-de3f130ba426n%40googlegroups.com auf.

Marco Bendowski

unread,
Aug 29, 2020, 4:18:14 AM8/29/20
to hap-...@googlegroups.com
Hi,

ich habe damals alle Dienste im Docker laufen lassen. Hierzu habe ich ein docker-compose-File gebaut, welches alles weitgehend automatisch erledigt.
Ich hänge die Dateien mal an. Vielleicht ist das ja für den ein oder anderen hier hilfreich.

Die Images wurden in /opt/docker/hap vorgehalten. Entsprechend liegen da auch die Dateien aus dem Anhang.



Gruß
Marco
docker.tar.gz
Message has been deleted
Message has been deleted

Joern

unread,
Aug 29, 2020, 1:32:49 PM8/29/20
to hap-users
Nachricht test

Joern

unread,
Aug 29, 2020, 1:42:04 PM8/29/20
to hap-users
Mhh leider wurden die letzten zwei Posts hier gelöscht, evtl. wegen dem log aus dem Terminal.
Nochmal vielen Dank für die compose files - Docker läuft also unter 18.04 + nutzt MySQL 5.7. Was mir nicht ganz klar ist, in Docker läuft dann Perl 5.26 oder?

Mein LXC - jetzt auch Ubuntu  18.04 hat: mysql  Ver 14.14 Distrib 5.7.31 && This is perl 5, version 26, subversion 1 (v5.26.1)

Hap-mp-pl läuft mittlerweile nachdem ich keine Root MySQL PW nach der Installation gesetzt habe & die Rechte manuell.

Leider hängt mein hap-configserver.pl aber jetzt. Scheinbar in ner Log Funktion. Älteren Perl Version Via Perlbrew ändert nicht die Fehlermeldung...

Fehlermeldung folgt in nächsten, damit komme ich leider nicht weiter was in Log.pm line 74. schief geht.

Joern

unread,
Aug 29, 2020, 1:42:42 PM8/29/20
to hap-users


$ sudo /opt/hap/bin/hap-configserver.pl
[debug] Debug messages enabled
[debug] Statistics enabled
[debug] Loaded Config "/opt/hap/etc/hap.yml"
[debug] Setting up auth realm members
[debug] Session Store file: /tmp/hapconfig/session_data
Unescaped left brace in regex is illegal here in regex; marked by <-- HERE in m/\\input{ <-- HERE (.*?)}/ at /opt/hap/bin/hap-configserver/lib/hapConfig/Controller/Log.pm line 74.
Compilation failed in require at /usr/share/perl5/Catalyst/Utils.pm line 309.
Compilation failed in require at /usr/share/perl5/Catalyst/Utils.pm line 309.
Compilation failed in require at /opt/hap/bin/hap-configserver.pl line 5.

Joern

unread,
Sep 10, 2020, 1:17:09 PM9/10/20
to hap-users
Mal nen Update, falls jemand etwas ähnlich vor hat mit Ubuntu 16.04.5 LTS:

- MySQL kein Root Password setzen (nur Enter)
- mysql < Backup_Datenbank.sql -u root -p
- mysql
>CREATE USER 'hap'@'localhost' IDENTIFIED BY 'password';
>GRANT ALL PRIVILEGES ON *.* TO 'hap'@'localhost' WITH GRANT OPTION;
>FLUSH PRIVILEGES;

Danach lief es wunderbar...

Reply all
Reply to author
Forward
0 new messages