Problem nach Update auf 2.15.1

  • Hallo


    bei einem Server erhalten wir nach dem Update auf 2.15.1 folgende Fehlermeldung:


    Feb 10 11:40:06 mail systemd[1]: Starting LiveConfig Control Panel...
    Feb 10 11:40:06 mail liveconfig[3927348]: - /usr/sbin/liveconfig: LiveConfig 2.15.1-release starting...
    Feb 10 11:40:06 mail liveconfig[3927348]: - /usr/sbin/liveconfig: Database driver loaded: MySQL (3.3.3)
    Feb 10 11:40:06 mail liveconfig[3927348]: - /usr/sbin/liveconfig: Upgrading database schema (r215012 -> 2.15.1-3)
    Feb 10 11:40:06 mail liveconfig[3927348]: - /usr/sbin/liveconfig: Database connection failed: Duplicate entry '4' for key 'PRIMARY'
    Feb 10 11:40:06 mail liveconfig[3927348]: - /usr/sbin/liveconfig: Closing log file
    Feb 10 11:40:06 mail systemd[1]: liveconfig.service: Control process exited, code=exited, status=1/FAILURE
    Feb 10 11:40:06 mail systemd[1]: liveconfig.service: Failed with result 'exit-code'.
    Feb 10 11:40:06 mail systemd[1]: Failed to start LiveConfig Control Panel.


    Debian 11 wird verwendet.


    Mit freundlichen Grüßen
    Martin Krüger

  • Diese Fehlermeldung deutet auf ein lokales Datenbankproblem hin (das betroffene Schema-Upgrade hier ist ziemlich primitiv).
    Bitte schicken Sie die Ausgabe folgendes SQL-Befehls (ausgeführt auf der LiveConfig-Datenbank) an support@liveconfig.com, damit wir sehen was da drin eventuell falsch ist:

    Code
    select P_ID, P_IDLEFT, P_IDRIGHT, P_IDLEVEL, P_PERMISSIONID, P_KEY from PERMISSIONS order by P_IDLEFT;
  • Hallo


    vielleicht hilft auch:


    [2023/02/12 14:25:53.351172] [2746982|2746982] LiveConfig 2.15.1-release starting...
    [2023/02/12 14:25:53.351433] [2746982|2746982] Database driver loaded: MySQL (3.3.3)
    [2023/02/12 14:25:53.351984] [2746982|2746982] Upgrading database schema (r214045 -> 2.15.0-0)
    [2023/02/12 14:25:53.358179] [2746982|2746982] Upgrading database schema (r215000 -> 2.15.1-0)
    [2023/02/12 14:25:53.359298] [2746982|2746982] Upgrading database schema (r215010 -> 2.15.1-1)
    [2023/02/12 14:25:53.365275] [2746982|2746982] Upgrading database schema (r215011 -> 2.15.1-2)
    [2023/02/12 14:25:53.365332] [2746982|2746982] - migrating RRA_MAIL
    [2023/02/12 14:25:53.369876] [2746982|2746982] - migrating RRD_MAIL
    [2023/02/12 14:25:53.376720] [2746982|2746982] Upgrading database schema (r215012 -> 2.15.1-3)
    [2023/02/12 14:25:53.377590] [2746982|2746982] Database connection failed: Duplicate entry '2' for key 'PRIMARY'
    [2023/02/12 14:25:53.377663] [2746982|2746982] Closing log file


    auch noch den Fehler zu finden.


    Mit freundlichen Grüßen
    Martin Krüger

  • Nein, das hilft leider nicht - der o.g. SQL-Output wäre hilfreich.
    Dieser Fehler deutet auf eine korrupte Datenbanktabelle (PERMISSIONS) hin; jeder Eintrag darin muss einen eindeutigen Wert für P_ID haben. Während des Schema-Upgrades wird ein Eintrag hinzugefügt; wenn MySQL dabei einen "duplicate key" meldet, dann müssen bereits irgendwelche "falschen" Daten in der Tabelle stehen.

  • Hallo


    anbei die Abfrage:


    -- phpMyAdmin SQL Dump
    -- version 5.2.1
    -- https://www.phpmyadmin.net/
    --
    -- Host: localhost
    -- Erstellungszeit: 13. Feb 2023 um 16:24
    -- Server-Version: 10.10.3-MariaDB-1:10.10.3+maria~deb11
    -- PHP-Version: 8.1.15


    SET SQL_MODE = "NO_AUTO_VALUE_ON_ZERO";
    START TRANSACTION;
    SET time_zone = "+00:00";



    /*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;
    /*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */;
    /*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */;
    /*!40101 SET NAMES utf8mb4 */;


    --
    -- Datenbank: `lc-backup`
    --


    -- --------------------------------------------------------


    --
    -- Tabellenstruktur für Tabelle `PERMISSIONS`
    --


    CREATE TABLE `PERMISSIONS` (
    `P_ID` int(11) NOT NULL,
    `P_IDLEFT` int(11) NOT NULL,
    `P_IDRIGHT` int(11) NOT NULL,
    `P_IDLEVEL` int(11) NOT NULL,
    `P_TYPE` int(11) NOT NULL,
    `P_GROUPING` int(11) NOT NULL,
    `P_MODULEID` int(11) NOT NULL,
    `P_PERMISSIONID` int(11) NOT NULL,
    `P_KEY` varchar(30) DEFAULT NULL,
    `P_NAME` varchar(30) NOT NULL,
    `P_ICON` varchar(30) DEFAULT NULL
    ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci ROW_FORMAT=DYNAMIC;


    --
    -- Daten für Tabelle `PERMISSIONS`
    --


    INSERT INTO `PERMISSIONS` (`P_ID`, `P_IDLEFT`, `P_IDRIGHT`, `P_IDLEVEL`, `P_PERMISSIONID`, `P_KEY`) VALUES
    (1, 1, 8, 0, 0, NULL),
    (2, 2, 3, 1, 1, 'CORE_LOGIN'),
    (3, 4, 5, 1, 2, 'CORE_SOAP'),
    (4, 6, 7, 1, 3, 'CORE_LOG'),
    (5, 9, 16, 0, 0, NULL),
    (6, 10, 11, 1, 4, 'CORE_PASSWORD'),
    (7, 12, 13, 1, 5, 'CORE_LANGUAGE'),
    (8, 14, 15, 1, 9, 'CORE_RESELLERSETTINGS'),
    (9, 17, 28, 0, 0, NULL),
    (10, 18, 19, 1, 6, 'CORE_USERS'),
    (11, 20, 21, 1, 7, 'CORE_CUSTOMERS'),
    (12, 22, 23, 1, 8, 'CORE_LIVECONFIG'),
    (13, 24, 25, 1, 1, 'IFR_CUSTOMLINKS'),
    (14, 26, 27, 1, 10, 'CORE_REPORTS'),
    (15, 29, 62, 0, 0, NULL),
    (16, 30, 31, 1, 1, 'HST_ADM_HOSTING'),
    (17, 32, 33, 1, 2, 'HST_ADM_PLANS'),
    (18, 34, 35, 1, 12, 'HST_ADM_SSLCERTS'),
    (19, 36, 37, 1, 13, 'HST_ADM_PHPTEMPLATES'),
    (20, 38, 61, 1, 0, NULL),
    (21, 39, 40, 2, 3, 'HST_OBJ_WEBSPACE'),
    (22, 41, 42, 2, 4, 'HST_OBJ_LOGFILES'),
    (23, 43, 44, 2, 5, 'HST_OBJ_FTP'),
    (24, 45, 46, 2, 6, 'HST_OBJ_DB'),
    (25, 47, 48, 2, 7, 'HST_OBJ_EMAIL');


    --
    -- Indizes der exportierten Tabellen
    --


    --
    -- Indizes für die Tabelle `PERMISSIONS`
    --
    ALTER TABLE `PERMISSIONS`
    ADD PRIMARY KEY (`P_ID`),
    ADD KEY `P_IDLEFT_IDX` (`P_IDLEFT`),
    ADD KEY `P_IDRIGHT_IDX` (`P_IDRIGHT`),
    ADD KEY `P_MODULEID_IDX` (`P_MODULEID`);


    --
    -- AUTO_INCREMENT für exportierte Tabellen
    --


    --
    -- AUTO_INCREMENT für Tabelle `PERMISSIONS`
    --
    ALTER TABLE `PERMISSIONS`
    MODIFY `P_ID` int(11) NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=2;
    COMMIT;


    /*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */;
    /*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */;
    /*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */;


    Mit freundlichen Grüßen
    Martin Krüger

  • Wie bereits vermutet: die Tabelle PERMISSIONS ist kaputt. War der Server vielleicht mal irgendwann (rand)voll?
    Da liegen jedenfalls zwei Fehler vor:
    - der AUTO_INCREMENT-Wert für PERMISSIONS steht auf "2", der sollte aber bei "42" stehen
    - da fehlen etwa 16 Einträge. Die Tabelle PERMISSIONS muss vor dem Update 41 Zeilen enthalten.


    Sie können einfach von irgendeinem beliebigen anderen LiveConfig-Server (mit Version <= 2.15.0 !) einen Dump der Tabelle PERMISSIONS importieren.


    Wenn diese Tabelle aber schon fehlerhaft ist, kann es sein, dass auch woanders Probleme bestehen...

  • Hallo


    mein Fehler gewesen:


    Hier der komplette Dump


    INSERT INTO `PERMISSIONS` (`P_ID`, `P_IDLEFT`, `P_IDRIGHT`, `P_IDLEVEL`, `P_TYPE`, `P_GROUPING`, `P_MODULEID`, `P_PERMISSIONID`, `P_KEY`, `P_NAME`, `P_ICON`) VALUES
    (1, 1, 8, 0, 0, 0, 1, 0, NULL, 'General', 'ico_settings.gif'),
    (2, 2, 3, 1, 1, 0, 1, 1, 'CORE_LOGIN', 'Web Login', NULL),
    (3, 4, 5, 1, 1, 0, 1, 2, 'CORE_SOAP', 'SOAP API', NULL),
    (4, 6, 7, 1, 1, 0, 1, 3, 'CORE_LOG', 'View Log', NULL),
    (5, 9, 16, 0, 0, 0, 1, 0, NULL, 'Settings', NULL),
    (6, 10, 11, 1, 1, 0, 1, 4, 'CORE_PASSWORD', 'Change Password', NULL),
    (7, 12, 13, 1, 1, 0, 1, 5, 'CORE_LANGUAGE', 'Change Language', NULL),
    (8, 14, 15, 1, 1, 0, 1, 9, 'CORE_RESELLERSETTINGS', 'Reseller Settings', NULL),
    (9, 17, 28, 0, 0, 0, 1, 0, NULL, 'Administration', NULL),
    (10, 18, 19, 1, 1, 0, 1, 6, 'CORE_USERS', 'User Management', NULL),
    (11, 20, 21, 1, 1, 0, 1, 7, 'CORE_CUSTOMERS', 'Customer Management', NULL),
    (12, 22, 23, 1, 1, 0, 1, 8, 'CORE_LIVECONFIG', 'LiveConfig Control', NULL),
    (13, 24, 25, 1, 1, 0, 6, 1, 'IFR_CUSTOMLINKS', 'Manage Custom Links', NULL),
    (14, 26, 27, 1, 1, 0, 1, 10, 'CORE_REPORTS', 'Reports', NULL),
    (15, 29, 64, 0, 0, 20, 2, 0, NULL, 'Hosting', NULL),
    (16, 30, 31, 1, 1, 20, 2, 1, 'HST_ADM_HOSTING', 'Manage Hosting', NULL),
    (17, 32, 33, 1, 1, 20, 2, 2, 'HST_ADM_PLANS', 'Manage Plans', NULL),
    (18, 34, 35, 1, 1, 20, 2, 12, 'HST_ADM_SSLCERTS', 'SSL Certificates', NULL),
    (19, 36, 37, 1, 1, 20, 2, 13, 'HST_ADM_PHPTEMPLATES', 'Manage php.ini Templates', NULL),
    (20, 38, 63, 1, 2, 20, 2, 0, NULL, 'Hosting', NULL),
    (21, 39, 40, 2, 2, 20, 2, 3, 'HST_OBJ_WEBSPACE', 'Webspace', NULL),
    (22, 41, 42, 2, 2, 20, 2, 4, 'HST_OBJ_LOGFILES', 'Logfiles', NULL),
    (23, 43, 44, 2, 2, 20, 2, 5, 'HST_OBJ_FTP', 'FTP', NULL),
    (24, 45, 46, 2, 2, 20, 2, 6, 'HST_OBJ_DB', 'Databases', NULL),
    (25, 47, 48, 2, 2, 20, 2, 7, 'HST_OBJ_EMAIL', 'E-Mail', NULL),
    (26, 49, 50, 2, 2, 20, 2, 8, 'HST_OBJ_DOMAINS', 'Domains', NULL),
    (27, 51, 52, 2, 2, 20, 2, 9, 'HST_OBJ_APPS', 'Applications', NULL),
    (28, 53, 54, 2, 2, 20, 2, 10, 'HST_OBJ_RESALE', 'Resale', NULL),
    (29, 55, 56, 2, 2, 20, 2, 11, 'HST_OBJ_CRONJOBS', 'Cron jobs', NULL),
    (30, 57, 58, 2, 2, 20, 2, 15, 'HST_OBJ_BACKUP', 'Backups', NULL),
    (31, 59, 60, 2, 2, 20, 2, 16, 'HST_OBJ_BUILDER', 'Website Builder', NULL),
    (32, 65, 84, 0, 0, 30, 3, 0, NULL, 'Servers', NULL),
    (33, 66, 67, 1, 1, 30, 3, 1, 'SRV_ADM_MANAGE', 'Manage Servers', NULL),
    (34, 68, 69, 1, 1, 30, 3, 2, 'SRV_ADM_ADD', 'Add Server', NULL),
    (35, 70, 71, 1, 1, 30, 3, 8, 'SRV_ADM_DNS', 'Manage DNS servers', NULL),
    (36, 72, 83, 1, 2, 30, 3, 0, NULL, 'Server', NULL),
    (37, 73, 74, 2, 2, 30, 3, 3, 'SRV_OBJ_MANAGE', 'Manage server', NULL),
    (38, 75, 76, 2, 2, 30, 3, 4, 'SRV_OBJ_LOG', 'Server log', NULL),
    (39, 77, 78, 2, 2, 30, 3, 5, 'SRV_OBJ_REBOOT', 'Reboot', NULL),
    (40, 79, 80, 2, 2, 30, 3, 6, 'SRV_OBJ_USERS', 'Users', NULL),
    (41, 81, 82, 2, 2, 30, 3, 7, 'SRV_OBJ_WEBSPACE', 'Webspace', NULL),
    (42, 61, 62, 2, 2, 20, 2, 17, 'HST_OBJ_WEBSHELL', 'WebShell', NULL);


    Demnach sind alle 42 vorhanden.


    Mit freundlichen Grüßen
    Martin Krüger

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!