epgd SQL-Error unknown column

  • Hallo,


    nach längerer Zeit habe ich mal wieder die überfälligen updates per "apt-get update" / "apt-get dost-upgrade" eingespielt.


    Leider tut seitdem eepgd nicht mehr was es soll. So wie es aussieht gabs da wohl ein Problem beim Update der Datenbank:

    syslog.1:Aug 7 07:40:59 VDR epgd: Calling mysql_init(1850)

    syslog.1:Aug 7 07:40:59 VDR epgd: SQL-Error in 'prepare(stmt_prepare)' - Unknown column 'id' in 'field list' (1054) 'Unknown column 'id' in 'field list'' [select _starttime, action, active, autotimerid, autotimerinssp, autotimername, aux, channelid, childlock, day, directory, doneid, endtime, eventid, expression, file, id, info, inssp, lifetime, namingmode, priority, retrys, source, starttime, state, tccmailcnt, template, type, updsp, vdruuid, vps, weekdays, wrncount from timers where id = ? and vdruuid = ?;]

    syslog.1:Aug 7 07:40:59 VDR epgd: Retry #48 failed, retrying in 60 seconds!

    syslog.1:Aug 7 07:40:59 VDR epgd: Closing mysql connection and calling mysql_thread_end(1850)


    Edit: Kein Wunder, die Spalte ID existiert in der Tat nicht...




    Wie bekomme ich das ganze jetzt wieder in einen lauffähigen Zustand?



    Danke!

    yavdr 0.6: Gigabyte GA H61M, Pentium 645, 4GB RAM, 1x3 TB, 1x64 GB SSD, 1x CineS2 V6, 1x Hauppauge S2-1600 , Nvidia GF210

    ansible@focal: Asrock Z370 Exteme4, Intel i3, 8GB RAM, 1x64GB SSD, 1x2TB HDD, 1xDVB Skystar 952, GF1030

    Einmal editiert, zuletzt von warhammer ()

  • stop vdr

    stop epgd

    -> ps und grep sagen beides ist gestoppt

    start epgd


    Liefert immer noch die selben Fehlermeldungen.


    Wenn ich mir die Ausgabe so ansehe, dann scheint er ja die Spalte hinzufügen zu wollen, kommt damit aber nicht zum Ziel.

    yavdr 0.6: Gigabyte GA H61M, Pentium 645, 4GB RAM, 1x3 TB, 1x64 GB SSD, 1x CineS2 V6, 1x Hauppauge S2-1600 , Nvidia GF210

    ansible@focal: Asrock Z370 Exteme4, Intel i3, 8GB RAM, 1x64GB SSD, 1x2TB HDD, 1xDVB Skystar 952, GF1030

  • welche Spalte hat denn bei dir noch ein autoincrement?

    Versuche doch mal manuell die Spalte if hinzuzufügen und als Primary zu setzen.

    Vlt solltest du auch vorher mal alle unser Felder löschen, so wie es im Log steht

  • Heisst aktuell ist keine Spalte Auto-Increment.

    Das Problem ist wohl auch eher das eine Auto-Increment Spalte Teil des Primary Keys sein muss.

    Damit fehlt beim "alter table timers add column id INT(11) unsigned not null auto_increment" wohl das PRIMARY_KEY.

    Allerdings gibt es ja nun schon drei Spalten die zusammen den PK ergeben...




    Die Spalten die er als überflüssig angibt sind aber alle in einer anderen Tabelle (events). Da ich nicht weiss wie da die Abhängigkeiten zu irgendwelchen scrapern sind habe ich die bisher nicht gelöscht.

    yavdr 0.6: Gigabyte GA H61M, Pentium 645, 4GB RAM, 1x3 TB, 1x64 GB SSD, 1x CineS2 V6, 1x Hauppauge S2-1600 , Nvidia GF210

    ansible@focal: Asrock Z370 Exteme4, Intel i3, 8GB RAM, 1x64GB SSD, 1x2TB HDD, 1xDVB Skystar 952, GF1030

  • Bei mir sieht es so aus:

    Ich denke auch, dass der Befehl dann so nicht klappt. Ich nehme mal an, dass du mehrere Versionen übersprungen hast.. Vlt passt du die Tabelle jetzt mal ensprechend manuell an

  • Kannst Du mir das

    Code
    show create table timers;

    schicken?

    yavdr 0.6: Gigabyte GA H61M, Pentium 645, 4GB RAM, 1x3 TB, 1x64 GB SSD, 1x CineS2 V6, 1x Hauppauge S2-1600 , Nvidia GF210

    ansible@focal: Asrock Z370 Exteme4, Intel i3, 8GB RAM, 1x64GB SSD, 1x2TB HDD, 1xDVB Skystar 952, GF1030

  • So,

    mittels

    Code
    alter table timers drop primary key;
    alter table timers add column id INT(11) UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY FIRST;
    alter table timers drop key `idxeventidchannelidvdruuid`;
    alter table timers add KEY `idxeventidchannelidvdruuid` (`eventid`,`channelid`,`vdruuid`);
    alter table timers drop key `idxvdruuidstate`;
    alter table timers add KEY `idxvdruuidstate` (`vdruuid`,`state`);
    alter table timers drop key `idxupdsp`;
    alter table timers add KEY `idxupdsp` (`updsp`);


    passt die Tabelle nun wieder soweit das er epgd sich nicht mehr beschwert.

    yavdr 0.6: Gigabyte GA H61M, Pentium 645, 4GB RAM, 1x3 TB, 1x64 GB SSD, 1x CineS2 V6, 1x Hauppauge S2-1600 , Nvidia GF210

    ansible@focal: Asrock Z370 Exteme4, Intel i3, 8GB RAM, 1x64GB SSD, 1x2TB HDD, 1xDVB Skystar 952, GF1030

Jetzt mitmachen!

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