NEWS
Wichtiger Hinweis für Redis Installationen!
-
@marty56 sagte in Wichtiger Hinweis für Redis Installationen!:
@apollon77 Danke für den Hinweis.
Was mich noch interessieren würde, wäre die Auswirkung dieser falschen Redis Konfiguration. Ich hatte den Server mindestens 1 Jahr mit der falschen Konfiguration laufen und habe es nicht bemerkt.Dem schließe ich mich an Aber gut, besser vor dem merken korrigieren
127.0.0.1:6379> EVAL "return 'c-i.t' >= 'c.' and 'c-i.t' < 'c.香'" 1 1 (integer) 1 LANG=de_DE.UTF-8 LANGUAGE= LC_CTYPE="de_DE.UTF-8" LC_NUMERIC="de_DE.UTF-8" LC_TIME="de_DE.UTF-8" LC_COLLATE="de_DE.UTF-8" LC_MONETARY="de_DE.UTF-8" LC_MESSAGES="de_DE.UTF-8" LC_PAPER="de_DE.UTF-8" LC_NAME="de_DE.UTF-8" LC_ADDRESS="de_DE.UTF-8" LC_TELEPHONE="de_DE.UTF-8" LC_MEASUREMENT="de_DE.UTF-8" LC_IDENTIFICATION="de_DE.UTF-8" LC_ALL=
-
@darkiop ja die Nummer hat uns bissl beschäftigt bis wir auf diesen Grund kamen ;-))
-
Hallo Ingo,
seit erscheinen dieses Threads hat mich das Thema "Redis" etwas mehr beschäftigt. Ich bin Neueinsteiger bei Redis, und die Informationen im Web bezüglich der Einstellungen zur Redis Datenbank und locale sagen nicht wirklich viel aus. Beziehungsweise, in der Dokumentation von Redis finde ich nichts zu diesem Thema. Auf dieser Seite konnte ich zumindest schon einmal herausfinden das der große Unterschied von c zu x.UTF-8 an der Single-/Multibyte-Unicode-Kodierung liegt.
Dennoch bleibt bei mir die ein oder andere Frage noch offen.Aktuell habe ich zwei Container (LXD/LXC) aufgesetzt, je einen für ioBroker und Redis. Beide mit der Einstellung "LOKALE=de-DE.UTF-8".
1.) Muss ich beide Container auf "LANG=C" umstellen, oder reicht es die Konfiguration des Redis-Server anzupassen?
2.) Kann die Umstellung während des laufenden Betriebs vorgenommen, bzw. sollte ioBroker vorher gestoppt, oder gar auf "jsonl:jsonl" umgestellt werden?
3.) Wie verhält es sich mit mySQL/MariaDB, sollte hier auch die locale beachtet und auf "LANG=C" umgestellt werden?
Eventuell kannst du mir etwas weiterhelfen.
Dankeschön
Gruß, Karsten -
Ich hab noch eine Kombination.
Ich verwende redis in einem docker container auf alpine basis.
alpine hat erst einmal keine locale.
daher lässt sich 2) nicht abfragen. Aber wenn ich es richtig interpretiere,
dann geht ihr immer vom stand ohne locale aus und andere lokalisationen führen ggfs zu Problemen.
dann dürfte es mit alpine keine probleme geben- ergibt bei mir
(nil)
- ergibt bei mir
-
@hydrotec
1.) redis Server reicht.
2.) gute Frage, weiß ich nicht. Ich denke geht im Betrieb aber sicher ist iobroker stoppen, redis konfig ändern und neu starten, iobroker neu starten
3.) keine Ahnung wie eine MySQL da tickt und ob Bzw wie relevant das da ist bei queries. -
@oliverio (Nil) ist gut und damit keine Probleme.
-
Hi ich komme nicht auf die Schell
andy@debian:~$ redis-cli -bash: redis-cli: Kommando nicht gefunden.
-
@ostseereiter sagte in Wichtiger Hinweis für Redis Installationen!:
Hi ich komme nicht auf die Schell
Läuft denn redis?
sudo systemctl status redis
-
-
@thomas-braun
Ist wohl nicht installiert braucht man das?andy@debian:~$ sudo systemctl status redis [sudo] Passwort für andy: Unit redis.service could not be found.
-
Um
redis-cli
aufzurufen braucht es die redis-tools. Da ist das nämlich drin.
Bei dir läuft aber gar kein redis. Was haste also vor?
Oder läuft da was anderes?
systemctl status redis-server.service redis.service
-
@thomas-braun sagte in Wichtiger Hinweis für Redis Installationen!:
systemctl status redis-server.service redis.service
Ich habe nix vor dann ist es ja ok wenn ich es nicht installiert habe. Dann ist ja alles im grünen Bereich. Ich wüsste auch gar nicht wozu man das braucht.
andy@debian:~$ systemctl status redis-server.service redis.service Unit redis-server.service could not be found. Unit redis.service could not be found.
-
@ostseereiter naja schon etwas verwirrend. Nutzt du nun redis als db oder nicht? Wenn ein „iob status“ nicht sagt das es als redis läuft dann ist dieser thread für dich komplett irrelevant
-
@apollon77 sagte in Wichtiger Hinweis für Redis Installationen!:
iob status
ok alles klar dann ist ja gut.
iobroker is running on this host. Objects type: jsonl States type: jsonl
-
Danke für die Unterstützung
Hab es in der Redis-Konfiguration umgestellt. Jetzt passt es.
Zu 2.), da bin ich den sicheren Weg gegangen.
ioBroker gestoppt und wieder auf jsonl:jsonl umgestellt. Dann den redis.service gestoppt, und die Datenbank auf redis-cli mitflushall
zurückgesetzt. Die Zeile bei [Service] eingefügt, und einen reload service, sowie ein reboot von Redis ausgeführt. Anschließend ioBroker wieder auf redis:redis umgestellt und neu gestartet.
Zu3.), dann lass ich mal die Finger weg, sollte es Probleme geben, kann man ja immer noch Hand anlegen.Angenehmes Wochenende noch
Gruß, Karsten -
@hydrotec also 2. hättest nicht tun müssen … alles gut.
-
Hallo,
da ich meine States in Redis habe wollte ich bei mir auch mal die Systemeinstellungen checken und ggf. gerade ziehen.
Den 2. Weg mit dem locale-Befehl krieg ich ja noch hin aber was ist denn das für ein lustiges (chinesisches?) Zeichen im 1. Weg??
Wie gibt man den das ein?EVAL "return 'c-i.t' >= 'c.' and 'c-i.t' < 'c.香'" 1 1
Gruß Steffen
-
@steff sagte in Wichtiger Hinweis für Redis Installationen!:
Wie gibt man den das ein?
Copy & Paste?
Geht z. B. mit der rechten Maustaste in einem Terminal. -
ahh..., das war ja leicht Das ich im Terminal auch mit copy&paste via rechte Maustaste arbeiten kann wusste ich noch gar nicht!
Vielen Dank für den Tip!
-
Hallo zusammen,
ich habe Redis in einem Docker auf meiner Synology laufen. Iobroker ist ein Multihost mit dem Master als (Buanet)Docker auf der Synology und einen Raspi als Slave. Der Master liefert "(nil)" und der Slave liefert "(integer) 1". In Redis werden nur die States und nicht die Objekte abgelegt.Schau ich mit jetzt mit locate die System an:
- Redis Server ( LC_ALL=C):
oder wenn ich die Umgebungsvariable LC_ALL leer lasse:
-
IOB Master:
-
IOB Slave
Und nu? Ich vermute, bei der aktuellen Konfiguration könnte es zu Problemen kommen. Risiko ist vermutlich nicht sooo hoch, da nur die States in Redis landen.
- Redis Server ( LC_ALL=C):