Nach Update der SE keine Datenbankverbindung mehr?

  • Hallo,

    ich wollte meine SE mit

    Code
      ./se-update -s 8 


    von Reihe 6 auf 8 updaten. Auffällig war, dass während des Updates nicht zur Datenbank verbunden werden konnte. Aber auch nach der Installation scheint die Datenbank nicht hochgefahren zu sein.


    Hat jemand eine Idee wie ich

    1. die Datenbank wieder hochgefahren bekomme und

    2. auf Reihe 8 upgedatet bekomme?



    Danke für die Hilfe im Voraus.

  • Ich überlege auch von Reihe 6 auf Reihe 8 upzudaten auf einem Debian 12 System.


    -> Ist dies grundsätzlich offiziell vorgesehen und unterstützt?


    -> Gibt es Dinge, die ich im Vorfeld beachten sollte, bzw. die idealerweise davor gemacht werden sollten?


    Besten Dank!

  • 1) Warte nun seit >30Minuten, ok


    Ich sehe nur keine wirkliche "Aktivität" hinsichtlich eines Updates seitens mysql daher bin ich etwas skeptisch in der Prozessübersicht...


    2) log.XXXX im seu3-Verzeichnis -> Ist damit /usr/local/pd-admin2/logs/error_log gemeint? Wenn nicht welches denn?


    Danke!

  • 1. Wenn Herr Bradler mehrere Stunden schreibt, dann würde ich noch warten, wo das sicher auch von der Leistungsfähigkeit des Servers abhängt.

    Bei mir selbst hat es meist relativ schnell geklappt. Ich habe aber auch eher weniger Kunden pro Server.


    2. Im Verzeichnis /seu (da wo die SE drin liegt) schreibt er eine Logdatei, da steht drin, was beim Update passiert ist.

  • Ok Danke.


    Zu 2)


    Ich hatte bereits während der Installation Fehler, dass keine Verbindung zur DB aufgebaut werden konnte, die

    war aber sicherlich aktiv / bereit.


    Dennoch gab es beim Update folgende Fehler:


    ...

    |

    | Dienste werden gestoppt ...

    |

    /service/apache24

    /service/clamd

    /service/dovecot22

    /service/FPM-xy-8.3.99

    /service/mysqld

    /service/proftpd

    /service/qmail-msa

    /service/qmail-send

    /service/qmail-smtpd

    /service/qmail-smtpSd

    /service/spamd

    /service/dovecot22/log

    /service/FPM-xy-8.3.99/log

    /service/proftpd/log

    /service/qmail-msa/log

    /service/qmail-smtpd/log

    /service/qmail-smtpSd/log

    couriertls: no process found

    courierlogger: no process found

    mysql still running (75) Fri Sep 20 10:23:20 PM CEST 2024

    mysql still running (74) Fri Sep 20 10:23:24 PM CEST 2024

    mysql still running (73) Fri Sep 20 10:23:28 PM CEST 2024

    mysqld: no process found

    Lege ein temporäres Arbeitsverzeichnis an: /usr/local/pd-admin2.work done

    Installierte Dateien werden kopiert (hard-linking) ... done

    Unveränderte Dateien werden gelöscht.

    6016 directories removed

    57 directories not removed (not empty)

    done

    Das alte pd-admin2-Verzeichnis wird umbenannt ... done

    Bringe die neue Server-Umgebung in Stellung...

    ~/seu3

    USERADD=useradd

    ** Eigentümer ändern auf root **

    ** user mysql einrichten **

    ** Eigentümer ändern auf mysql für var/mysql **

    ** user dovecot und dovenull einrichten **

    ** DocumentRoot einrichten **

    ** adminer vorbereiten **

    ** adminer an root **

    ** phpMyAdmin vorbereiten **

    ** php.d an root **

    ** Gruppe/Benutzer squirrel anlegen**

    ** Eigentümer/Berechtigungen von squirrelmail anpassen**

    ** Gruppe/Benutzer rndcbml anlegen**

    ** Eigentümer/Berechtigungen von roundcubemail anpassen**

    ** Berechtigung für share/clamav ändern **

    ** user/group simscan/simscan einrichten **

    ** Eigentümer ändern auf clamav für share/clamav **

    ** suidperl wird erzeugt **

    + workaround for perl without suid support

    ** cgiwrap setuid **

    ** Berechtigungen für Apache-Logfile-Verzeichnis **

    ** Berechtigungen für Apache-Conf-Verzeichnis **

    ** Berechtigungen für UPDATE.INF-Verzeichnis **

    ** Berechtigungen für awstats-Verzeichnis **

    ** Verzeichnisse für mod-pagespeed **

    ** Ausführungsberechtigung zurückgesetzt **

    ** User/Gruppen für qmail **

    ** Berechtigungen für /var/qmail/owners/... **

    chown: warning: '.' should be ':': ‘qmaild.qmail’

    HERE=/root/seu3

    Entferne Symlink /usr/local/pd-admin2.work/var/mysql

    (1) MYSQLDATADIR = </home/mysql>

    checking subdirectory structure before importing changed files

    importing changed files from work dir

    Arbeitsverzeichnis wird gelöscht ...Fertig

    |

    | Entferne einige .pdu-Dateien ...

    |

    /usr/local/pd-admin2/var/mysql/mysql/db.MY[ID].pdu-*

    /usr/local/pd-admin2/var/mysql/mysql/db.frm.pdu-*

    /usr/local/pd-admin2/var/mysql/mysql/user.MY[ID].pdu-*

    /usr/local/pd-admin2/var/mysql/mysql/user.frm.pdu-*

    /usr/local/pd-admin2/var/mysql/mysql/tables_priv.MY[ID].pdu-*

    /usr/local/pd-admin2/var/mysql/mysql/tables_priv.frm.pdu-*

    /usr/local/pd-admin2/var/mysql/mysql/func.MY[ID].pdu-*

    /usr/local/pd-admin2/var/mysql/mysql/func.frm.pdu-*

    /usr/local/pd-admin2/var/mysql/mysql/host.MY[ID].pdu-*

    /usr/local/pd-admin2/var/mysql/mysql/host.frm.pdu-*

    /usr/local/pd-admin2/var/mysql/mysql/columns_priv.MY[ID].pdu-*

    /usr/local/pd-admin2/var/mysql/mysql/columns_priv.frm.pdu-*

    /usr/local/pd-admin2/var/mysql/mysql/time_zone.MY[ID].pdu-*

    /usr/local/pd-admin2/var/mysql/mysql/time_zone.frm.pdu-*

    /usr/local/pd-admin2/var/mysql/mysql/time_zone_leap_seconds.MY[ID].pdu-*

    /usr/local/pd-admin2/var/mysql/mysql/time_zone_leap_seconds.frm.pdu-*

    /usr/local/pd-admin2/var/mysql/mysql/time_zone_name.MY[ID].pdu-*

    /usr/local/pd-admin2/var/mysql/mysql/time_zone_name.frm.pdu-*

    /usr/local/pd-admin2/var/mysql/mysql/time_zone_transition.MY[ID].pdu-*

    /usr/local/pd-admin2/var/mysql/mysql/time_zone_transition.frm.pdu-*

    /usr/local/pd-admin2/var/mysql/mysql/time_zone_transition_type.MY[ID].pdu-*

    /usr/local/pd-admin2/var/mysql/mysql/time_zone_transition_type.frm.pdu-*

    (2) MYSQLDATADIR = </home/mysql>

    (3) re-creating symlink var/mysql -> </home/mysql>

    old SE has mysql symlink

    new SE has mysql symlink (OK)

    |

    | changing u/g of squirrelmail

    |

    |

    | Dienste werden gestartet ...

    |

    /service/apache24

    /service/clamd

    /service/dovecot22

    /service/FPM-xy-8.3.99.

    /service/mysqld

    /service/proftpd

    /service/qmail-msa

    /service/qmail-send

    /service/qmail-smtpd

    /service/qmail-smtpSd

    /service/spamd

    /service/dovecot22/log

    /service/FPM-xy-8.3.99/log

    /service/proftpd/log

    /service/qmail-msa/log

    /service/qmail-smtpd/log

    /service/qmail-smtpSd/log

    Kann nicht zur Datenbank verbinden!

    Kann nicht zur Datenbank verbinden!

    Kann nicht zur Datenbank verbinden!

    Kann nicht zur Datenbank verbinden!

    Kann nicht zur Datenbank verbinden!

    Konnte auch nach 60 Sekunden nicht mit der MySQL-Datenbank verbinden.

    DBI connect('database=vadmin;host=localhost;','vadmin',...) failed: Can't connect to local MySQL server through socket '/usr/local/pd-admin2/var/mysql.run/mysql.sock' (2) at /opt/pdadmin/bin/httpd_vhosts.pl line 70

    can't connect! at /opt/pdadmin/bin/httpd_vhosts.pl line 70.

    |

    | MySQL fix privileges/MySQL shutdown/restart (MySQL 4.1/5.0)

    | mysql_upgrade (MySQL 5.1)

    |

    skipping mysql_fix_privilege_tables (MySQL 4.0/5.0)

    skipping mysql_upgrade (MySQL 5.1)

    |

    | mysqlcheck --all-databases --repair

    |

    mysqlcheck: [Warning] Using a password on the command line interface can be insecure.

    mysqlcheck: Got error: 2002: Can't connect to local MySQL server through socket '/usr/local/pd-admin2/var/mysql.run/mysql.sock' (2) when trying to connect

    mysqld: no process found

    |

    | rssh wird als shell registriert

    |

    |

    | Das Update der Serverumgebung (SE) ist abgeschlossen

    | Bitte prüfen Sie, ob alle Dienste wieder angelaufen sind,

    | insbesondere solche, die über /etc/rc.d (z. B. imap) ge-

    | startet werden.

    |

    |

    | clamav-Datenbank wird initialisiert/aktualisiert.

    |

    ClamAV update process started at Fri Sep 20 22:28:47 2024

    daily database available for update (local version: 27393, remote version: 27404)

    Testing database: '/usr/local/pd-admin2/share/clamav/tmp.56989f3b08/clamav-e5000a9e4534606087111510af6b37f4.tmp-daily.cld' ...

    Database test passed.

    daily.cld updated (version: 27404, sigs: 2066990, f-level: 90, builder: raynman)

    main.cvd database is up-to-date (version: 62, sigs: 6647427, f-level: 90, builder: sigmgr)

    bytecode.cvd database is up-to-date (version: 335, sigs: 86, f-level: 90, builder: raynman)

    Database succesfully updated.

    |

    | simscan cdb files werden initialisiert/aktualisiert.

    |

    simscan versions cdb file built. /var/qmail/simcontrol/simversions.cdb

    simscan versions cdb file built. /var/qmail/simcontrol-msa/simversions.cdb

    |

    | ROUNDCUBEMAIL wird upgegradet.

    |

    mysql: [Warning] Using a password on the command line interface can be insecure.

    ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/usr/local/pd-admin2/var/mysql.run/mysql.sock' (2)

    |

    | phpMyAdmin < 4.8.4 and phpPgAdmin no longer available, use $hostname/adminer

    |

    |

    | DKIM activated

    |

    |

    | timezone-Daten werden in MySQL registriert, falls erforderlich

    |

    Kann nicht zur Datenbank verbinden!

    Kann nicht zur Datenbank verbinden!

    Kann nicht zur Datenbank verbinden!

    Kann nicht zur Datenbank verbinden!

    Kann nicht zur Datenbank verbinden!

    Konnte auch nach 60 Sekunden nicht mit der MySQL-Datenbank verbinden.

    ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/usr/local/pd-admin2/var/mysql.run/mysql.sock' (2)

    trying to install time zone data from /usr/share/zoneinfo

    ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/usr/local/pd-admin2/var/mysql.run/mysql.sock' (2)

    |

    | se-update.sh done

    |

    |

    | regenerating dovecot configuration

    |

    default_process_limit = <1000>

    mail_max_userip_connections = <50>

    Bestehende Konfiguration wird nach dovecot.2024-09-20-22:29:54 verschoben ...

    OK.

    deleting configuration backup <dovecot.2024-08-22-20:30:57>

    Konfigurations-Template wird kopiert ...

    OK.

    Datenbankpassword wird ermittelt ...

    OK.

    Datenbankzugriff wird eingerichtet ...

    OK.

    andere Variablen werden gesetzt ...

    OK.

    Berechtigungen werden angepasst ...

    OK.

    certificate found, enable ssl/tls

    mysql: [Warning] Using a password on the command line interface can be insecure.

    ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/usr/local/pd-admin2/var/mysql.run/mysql.sock' (2)

    |

    | roundcubemail: twofactor_gauthenticator

    |

    plugin <twofactor_gauthenticator> already registered




    D.h. ich bin nicht sicher ob das "Update" Skript tatsächlich erfolgreich durchgelaufen ist.


    Auf jeden Fall bin ich jetzt in der Situation, dass der mysqld nicht hochkommt.


    Wenn es einen Hinweis geben würde, dass es "nur" an der Zeit liegt, die im Hintergrund für das Update benötigt wird gut,

    dann warte ich - aber ich befürchte, dass es nicht dieser Fall ist.


    D.h. wenn es etwas gibt, was ich tun kann um sicherzustellen, dass das Update soweit gut verlaufen ist (abseits von warten...)

    wäre ich für Hinweise sehr dankbar!

  • Ich habe jetzt mal auf einem Server das Update von Reihe 6 auf 8 gestartet. In der Log-Datei sind auch keine anderen Meldungen zu sehen. Da dort nur wenige Datenbanken sind, bin ich mal gespannt, wie lange das jetzt dauert. Wenn das schon lange dauert, dann kann es wahrscheinlich bei vielen oder großen Datenbanken sehr lange dauern.

  • Genau. Die Meldungen mit der Datenbank sind auch bei mir drin. Server ist jetzt auch schon fertig. Aber er hat auch nur 3 Datenbanken mit ca. 150 MB Daten. Wenn das jetzt ca. 7 Minuten dauert, dann kann man ja ggf. hochrechnen, wie lange es dauert. Kommt natürlich wahrscheinlich auch noch auf CPU und RAM an. Der Server hat 16 GB und 2 XEON Kerne mit 2.40GHz.

  • Danke für deine Rückmeldung und Test!


    Ich habe in der Zwischenzeit durch weiteres Testen herausgefunden, dass es zusätzliche Einstellungen in der my.conf gab wodurch der mysqld nicht starten konnte.


    Dies habe ich durch mysqld_safemode Aufruf herausgefunden - war nicht so leicht.

    Auch sinnvoll durch mysqld --validate-config für die Zukunft.


    Nach einem Reboot der Maschine (sicherheitshalber) ist der mysqld nun wieder hochgekommen und schreibt laut SE mysql log:


    [Server] /usr/local/pd-admin2/bin/mysqld: Shutdown complete (mysqld 8.0.39) Source distribution.

    2024-09-20T21:56:40.694957Z 2 [System] [MY-011003] [Server] Finished populating Data Dictionary tables with data.

    2024-09-20T21:58:22.108182Z 0 [System] [MY-010116] [Server] /usr/local/pd-admin2/bin/mysqld (mysqld 8.0.39) starting as process 1559

    2024-09-20T21:58:26.379190Z 0 [Warning] [MY-013907] [InnoDB] Deprecated configuration parameters innodb_log_file_size and/or innodb_log_files_in_group have been used to compute innodb_redo_log_capacity=8388608000. Please use innodb_redo_log_capacity instead.

    2024-09-20T21:58:26.926746Z 1 [System] [MY-013576] [InnoDB] InnoDB initialization has started.

    2024-09-20T22:01:58.916839Z 1 [System] [MY-013577] [InnoDB] InnoDB initialization has ended.

    2024-09-20T22:02:10.157693Z 4 [System] [MY-013381] [Server] Server upgrade from '50700' to '80039' started.


    -> Also jetzt läuft einmal das eigentliche Upgrade :)


    Jetzt macht es Sinn, dass kein Zugriff derzeit möglich ist. Davor hatte ich leider 0 Feedback / Logs.


    Ich hoffe, dass das nun einmal durchläuft und ich das Setup checken kann.


    Nochmals herzlichen Dank an dieser Stelle - warst eine seelische Unterstützung zu späterer Stunde :)