NEWS
[gelöst] Canvas - compiled against a different Node.js vers,
-
@anno171986 Na dann musst erst mal schauen, ob die mysql Service läuft.
Schau mal
systemctl status mysql
-
@mickym said in Canvas -> compiled against a different Node.js version:
systemctl status mysql
pi@raspberrypi:~$ systemctl status mysql ● mariadb.service - MariaDB 10.5.15 database server Loaded: loaded (/lib/systemd/system/mariadb.service; enabled; vendor preset: enabled) Active: active (running) since Sun 2022-11-20 17:40:49 CET; 24min ago Docs: man:mariadbd(8) https://mariadb.com/kb/en/library/systemd/ Process: 545 ExecStartPre=/usr/bin/install -m 755 -o mysql -g root -d /var/run/mysqld (code=exited, status=0/SUCCESS) Process: 555 ExecStartPre=/bin/sh -c systemctl unset-environment _WSREP_START_POSITION (code=exited, status=0/SUCCESS) Process: 576 ExecStartPre=/bin/sh -c [ ! -e /usr/bin/galera_recovery ] && VAR= || VAR=`cd /usr/bin/..; /usr/bin/galera_recovery`; [ $? -eq 0 ] && systemctl set> Process: 685 ExecStartPost=/bin/sh -c systemctl unset-environment _WSREP_START_POSITION (code=exited, status=0/SUCCESS) Process: 688 ExecStartPost=/etc/mysql/debian-start (code=exited, status=0/SUCCESS) Main PID: 665 (mariadbd) Status: "Taking your SQL requests now..." Tasks: 8 (limit: 4915) CPU: 2.701s CGroup: /system.slice/mariadb.service └─665 /usr/sbin/mariadbd Nov 20 17:40:49 raspberrypi systemd[1]: Started MariaDB 10.5.15 database server. Nov 20 17:40:49 raspberrypi /etc/mysql/debian-start[690]: Upgrading MySQL tables if necessary. Nov 20 17:40:49 raspberrypi /etc/mysql/debian-start[693]: /usr/bin/mysql_upgrade: the '--basedir' option is always ignored Nov 20 17:40:49 raspberrypi /etc/mysql/debian-start[693]: Looking for 'mysql' as: /usr/bin/mysql Nov 20 17:40:49 raspberrypi /etc/mysql/debian-start[693]: Looking for 'mysqlcheck' as: /usr/bin/mysqlcheck Nov 20 17:40:49 raspberrypi /etc/mysql/debian-start[693]: This installation of MariaDB is already upgraded to 10.5.15-MariaDB. Nov 20 17:40:49 raspberrypi /etc/mysql/debian-start[693]: There is no need to run mysql_upgrade again for 10.5.15-MariaDB. Nov 20 17:40:49 raspberrypi /etc/mysql/debian-start[693]: You can use --force if you still want to run mysql_upgrade Nov 20 17:40:49 raspberrypi /etc/mysql/debian-start[701]: Checking for insecure root accounts. Nov 20 17:40:49 raspberrypi /etc/mysql/debian-start[705]: Triggering myisam-recover for all MyISAM tables and aria-recover for all Aria tables
Scheint zu laufen. Jetzt muss ich wirklich los
-
@anno171986 Ok - dann viel Spaß.
-
@mickym said in Canvas -> compiled against a different Node.js version:
@anno171986 Na ich sehe Du bist auch noch auf buster und altem Betriebssystem. Man könnte nochmal versuchen, dass komplette nodejs runterzuschmeissen und neu zu installieren. Im Prinzip scheitert die Installation vom dem canvas ja an irgendeinem Module der node-js.
Wie gesagt - wenn Du eh nichts mehr zu verlieren hast, würde ich das noch versuchen.
Also iob stoppen - nodejs deinstallieren die ganzen npm Verzeichnisse manuell löschen und nodejs neu installieren.also
sudo apt remove nodejs
dann schauen, ob
nodejs -v npm -v
keine Ausgaben mehr liefert und unter /usr/lib keine node_modules Verzeichnis mehr gibt.
Wenn alles weg ist - dann mit
sudo apt install nodejs
wieder installieren
Ich habe den echarts Adapter auf meiner Testmaschine installiert ohne Probleme - das canvas Verzeichnis taucht dann auch auf. Also wie gesagt denke ich, dass da irgendwas uralt ist, deswegen bekommst Du da auch keinen schönen Baum hin. - Ab jetzt bin ich mit meiner Weisheit denke ich auch am Ende.
Ich probiere jetzt erstmal das mit nodejs zu machen. DIe MySQl DAtenbank sehe ich erstmal als nachgelagert Problem an.
-
@mickym Es gibt noch einen node_modules Ordner in /usr/lib/.
pi@raspberrypi:/usr/lib/node_modules$ ls n node-gyp npm
Einfach mit
rm node_modules
löschen?
-
habe den Ordner /usr/lib/node_modules mittels
sudo rm -r node_modules
gelöscht.
danach dann nodejs neuinstalliert, eCharts Adapter deinstalliert, das hate etwas länger gedauert und er hat dabei auch was installiert. Habe dann aus Neugier mal nach canvas gesucht:pi@raspberrypi:/opt/iobroker$ npm ls canvas iobroker.core@1.0.0 /opt/iobroker ├─┬ iobroker.iot@1.11.9 │ ├── canvas@2.10.2 │ └─┬ jsdom@19.0.0 │ └── canvas@2.10.2 deduped └─┬ iobroker.mihome-vacuum@3.8.6 └── canvas@2.10.2 deduped
Und er hat es wohl installiert.
Danach dann den eCharts Adapter installiert. Canvas Abfrage sieht jetzt so aus:pi@raspberrypi:/opt/iobroker$ npm ls canvas iobroker.core@1.0.0 /opt/iobroker ├─┬ iobroker.echarts@1.0.12 │ ├── canvas@2.10.2 │ └─┬ jsdom@19.0.0 │ └── canvas@2.10.2 deduped ├─┬ iobroker.iot@1.11.9 │ └── canvas@2.10.2 deduped └─┬ iobroker.mihome-vacuum@3.8.6 └── canvas@2.10.2 deduped
Verglichen zu meiner Ausgangssituation hat er jetzt canvas von Version 2.9.3 auf 2.10.2 geupdated.
Das Skript zum erzeugen des Diagramm Bildes gestartet: Kein Fehler. Aber: Jetzt ist SQl das Problem, da keine SQL Adapter läuft ist auch kein Diagramm da. Hast du eine Idee wie ich die SQL DAtenbank wieder ans laufen bekomme?● mariadb.service - MariaDB 10.5.15 database server Loaded: loaded (/lib/systemd/system/mariadb.service; enabled; vendor preset: enabled) Active: active (running) since Sun 2022-11-20 17:40:49 CET; 16h ago Docs: man:mariadbd(8) https://mariadb.com/kb/en/library/systemd/ Process: 545 ExecStartPre=/usr/bin/install -m 755 -o mysql -g root -d /var/run/mysqld (code=exited, status=0/SUCCESS) Process: 555 ExecStartPre=/bin/sh -c systemctl unset-environment _WSREP_START_POSITION (code=exited, status=0/SUCCESS) Process: 576 ExecStartPre=/bin/sh -c [ ! -e /usr/bin/galera_recovery ] && VAR= || VAR=`cd /usr/bin/..; /usr/bin/galera_recovery`; [ $?> Process: 685 ExecStartPost=/bin/sh -c systemctl unset-environment _WSREP_START_POSITION (code=exited, status=0/SUCCESS) Process: 688 ExecStartPost=/etc/mysql/debian-start (code=exited, status=0/SUCCESS) Main PID: 665 (mariadbd) Status: "Taking your SQL requests now..." Tasks: 8 (limit: 4915) CPU: 17.251s CGroup: /system.slice/mariadb.service └─665 /usr/sbin/mariadbd Nov 20 17:40:49 raspberrypi systemd[1]: Started MariaDB 10.5.15 database server. Nov 20 17:40:49 raspberrypi /etc/mysql/debian-start[690]: Upgrading MySQL tables if necessary. Nov 20 17:40:49 raspberrypi /etc/mysql/debian-start[693]: /usr/bin/mysql_upgrade: the '--basedir' option is always ignored Nov 20 17:40:49 raspberrypi /etc/mysql/debian-start[693]: Looking for 'mysql' as: /usr/bin/mysql Nov 20 17:40:49 raspberrypi /etc/mysql/debian-start[693]: Looking for 'mysqlcheck' as: /usr/bin/mysqlcheck Nov 20 17:40:49 raspberrypi /etc/mysql/debian-start[693]: This installation of MariaDB is already upgraded to 10.5.15-MariaDB. Nov 20 17:40:49 raspberrypi /etc/mysql/debian-start[693]: There is no need to run mysql_upgrade again for 10.5.15-MariaDB. Nov 20 17:40:49 raspberrypi /etc/mysql/debian-start[693]: You can use --force if you still want to run mysql_upgrade Nov 20 17:40:49 raspberrypi /etc/mysql/debian-start[701]: Checking for insecure root accounts. Nov 20 17:40:49 raspberrypi /etc/mysql/debian-start[705]: Triggering myisam-recover for all MyISAM tables and aria-recover for all Aria tabl>~
-
@anno171986 na erst mal Glückwunsch, das war doch das Hauptproblem. Canvas unter dem charts Adapter ist genau richtig. Der MySQL läuft ja eigentlich. Hast du schon mal versucht, die Daten aus einem MySQL Backup wieder herzustellen? (aus backitup Adapter)? Ansonsten musst mal googlen, wie man das Root Passwort des MySQL Servers zurücksetzt, da muss man ein paar Befehle auf der Kommandozeile eingeben. Meines Erachtens läuft die Datenbank ja und du hast ein Problem mit der Authentifizierung.
-
@mickym Denke ich auch.
Wenn ich mich per Konsole einlogge scheint es zu gehen:
pi@raspberrypi:/opt/iobroker$ mariadb -u iobroker -p Enter password: Welcome to the MariaDB monitor. Commands end with ; or \g. Your MariaDB connection id is 33 Server version: 10.5.15-MariaDB-0+deb11u1 Raspbian 11 Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others. Type 'help;' or '\h' for help. Type '\c' to clear the current input statement. MariaDB [(none)]>
-
@anno171986 gib mal im Adapter nochmal das Passwort ein. Das muss gehen oder auch nochmal Port 3306 etc. du musst aber auch Mel schauen, ob du auf der Kommandozeile die iobroker Datenbank Listen kannst. Wie gesagt im backitup müsstest du doch MySQL Datenbanken gesondert gesichert haben.
-
@mickym Geht nicht. Bin jetzt via Konsole mal in die entsprechende DB gegangen, das geht.
MariaDB [(none)]> \u iobroker Reading table information for completion of table and column names You can turn off this feature to get a quicker startup with -A Database changed MariaDB [iobroker]> \s -------------- mariadb Ver 15.1 Distrib 10.5.15-MariaDB, for debian-linux-gnueabihf (armv8l) using EditLine wrapper Connection id: 33 Current database: iobroker Current user: iobroker@localhost SSL: Not in use Current pager: stdout Using outfile: '' Using delimiter: ; Server: MariaDB Server version: 10.5.15-MariaDB-0+deb11u1 Raspbian 11 Protocol version: 10 Connection: Localhost via UNIX socket Server characterset: utf8mb4 Db characterset: utf8 Client characterset: utf8 Conn. characterset: utf8 UNIX socket: /run/mysqld/mysqld.sock Uptime: 16 hours 47 min 30 sec Threads: 1 Questions: 71 Slow queries: 0 Opens: 38 Open tables: 31 Queries per second avg: 0.001
kann man sich anzeigen lassen, auf welchen port die DB hört?
-
@anno171986 normalerweise 3306. prüfe mit
sudo netstat -tulpen
Ansonsten erstellst mal auf der Kommandozeile einen neuen User, der sich von überall anmelden kann und alle Rechte hat.
-
@mickym said in Canvas -> compiled against a different Node.js version:
sudo netstat -tulpen
Jup, das scheint zu stimmen:
pi@raspberrypi:~$ sudo netstat -tulpen Aktive Internetverbindungen (Nur Server) Proto Recv-Q Send-Q Local Address Foreign Address State Benutzer Inode PID/Program name tcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN 0 16392 753/python3 tcp 0 0 127.0.0.1:9000 0.0.0.0:* LISTEN 1001 1666679 18855/iobroker.js-c tcp 0 0 127.0.0.1:9001 0.0.0.0:* LISTEN 1001 1667670 18855/iobroker.js-c tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 0 12785 567/sshd: /usr/sbin tcp 0 0 192.168.178.12:8087 0.0.0.0:* LISTEN 1001 1670571 19450/io.simple-api tcp 0 0 127.0.0.1:53 0.0.0.0:* LISTEN 0 15566 381/connmand tcp 0 0 0.0.0.0:52050 0.0.0.0:* LISTEN 1000 12926 393/MyMediaForAlexa tcp 0 0 0.0.0.0:52051 0.0.0.0:* LISTEN 1000 12922 393/MyMediaForAlexa tcp 0 0 0.0.0.0:1885 0.0.0.0:* LISTEN 1001 1668091 19115/io.mqtt.0 tcp 0 0 127.0.0.1:631 0.0.0.0:* LISTEN 0 701845 15500/cupsd tcp 0 0 127.0.0.1:3306 0.0.0.0:* LISTEN 111 11727 665/mariadbd tcp6 0 0 :::22 :::* LISTEN 0 12795 567/sshd: /usr/sbin tcp6 0 0 ::1:3350 :::* LISTEN 0 12740 557/xrdp-sesman tcp6 0 0 :::3389 :::* LISTEN 110 14899 599/xrdp tcp6 0 0 :::4369 :::* LISTEN 0 13938 1/init tcp6 0 0 ::1:631 :::* LISTEN 0 701844 15500/cupsd tcp6 0 0 :::8082 :::* LISTEN 1001 1668847 19370/io.web.0 tcp6 0 0 :::8081 :::* LISTEN 1001 1666752 18887/io.admin.0 tcp6 0 0 ::1:53 :::* LISTEN 0 15570 381/connmand udp 0 0 0.0.0.0:53421 0.0.0.0:* 1001 1668351 18984/io.mihome-vac udp 0 0 0.0.0.0:5353 0.0.0.0:* 108 14047 378/avahi-daemon: r udp 0 0 127.0.0.1:53 0.0.0.0:* 0 15558 381/connmand udp 0 0 0.0.0.0:68 0.0.0.0:* 0 12164 452/dhcpcd udp 0 0 0.0.0.0:51299 0.0.0.0:* 0 15890 381/connmand udp 0 0 0.0.0.0:631 0.0.0.0:* 0 703638 15501/cups-browsed udp 0 0 0.0.0.0:49800 0.0.0.0:* 108 14049 378/avahi-daemon: r udp6 0 0 :::5353 :::* 108 14048 378/avahi-daemon: r udp6 0 0 :::58705 :::* 108 14050 378/avahi-daemon: r udp6 0 0 :::546 :::* 0 16390 452/dhcpcd udp6 0 0 ::1:53 :::* 0 15562 381/connmand
-
@mickym Ich ahbe im SQl Adapter mal meine RPI Adresse 192.168.178.12 durch die 127.0.0.1 ersetzt, jetzt funktioniert es.
-
@anno171986 ja schaut gut aus. Für mich ist das ein Berechtigungsproblem. Entweder passt das Passwort im Adapter nicht, oder der Benutzer ist limitiert.
-
@anno171986 sagte in Canvas -> compiled against a different Node.js version:
@mickym Ich ahbe im SQl Adapter mal meine RPI Adresse 192.168.178.12 durch die 127.0.0.1 ersetzt, jetzt funktioniert es.
Na dann ist hat der User nur das Recht sich nur Lokal anzumelden. Dann solltest nun am wieder deine Verlaufsdaten sehen. Glückwunsch
-
eChart funktioniert, und noch viel wichtiger: Ich habe gerade das Bild per Telegram bekommen
-
@anno171986 sagte in Canvas -> compiled against a different Node.js version:
eChart funktioniert, und noch viel wichtiger: Ich habe gerade das Bild per Telegram bekommen
Na dann haben sich die Mühen doch letztlich ausgezahlt. Dann sofort das Image sichern und Dein System lieber regelmäßig aktuell halten.
-
@mickym Jetzt ist die Frage wie ich das mit den recht wieder ändere. Mit HeidiSQL kann ich nämlich immer noch nicht drauf zugreifen.
-
@mickym mit den aktuell hatte ich ja soweit, nur dass ich quasi das OS nicht geupdated hatte, hatte das nicht auf den Plan, wie man das macht und wusste auch nicht, dass es überhaupt eine neue Version gibt.
-
@anno171986 na ich würde halt mit dem Root User nun einen neuen Admin auf der Kommandozeile definieren, der sich von überall anmelden kann und den für die HeidiSql Anmeldung verwenden.