Contao 4 Crashkurs
Ergebnis 1 bis 21 von 21

Thema: Can't DROP 'path' Query error bei Update auf Contao 3.1

  1. #1
    Contao-Nutzer Avatar von JeKi
    Registriert seit
    09.10.2009.
    Ort
    Zürich
    Beiträge
    19

    Standard Can't DROP 'path' Query error bei Update auf Contao 3.1

    Beim Update auf Version 3.1 bekomme ich beim letzten Schritt im Install Prozess beim Datenbankupdate (Button: "Version 3.1-Update ausführen") folgende Fehlermeldung:

    Fatal error: Uncaught exception Exception with message Query error: Can't DROP 'path'; check that column/key exists (ALTER TABLE `tl_files` DROP INDEX `path`) thrown in system/modules/core/library/Contao/Database/Statement.php on line 346
    #0 system/modules/core/library/Contao/Database.php(228): Contao\Database\Statement->query('ALTER TABLE `tl...')
    #1 system/modules/core/library/Contao/Database/Updater.php(468): Contao\Database->query('ALTER TABLE `tl...')
    #2 contao/install.php(956): Contao\Database\Updater->run31Update()
    #3 contao/install.php(530): InstallTool->update31()
    #4 contao/install.php(181): InstallTool->runDatabaseUpdates()
    #5 contao/install.php(971): InstallTool->run()
    #6 {main}


    Die Tabelle tl_files wurde angelegt, die Spalte path auch in den Typ blob konvertiert.
    Wenn ich im MySQL-Admin versuche, den Index zu löschen bekomme ich folgende Fehlermeldung:
    #1170 - BLOB/TEXT column 'path' used in key specification without a key length

    Ich habe versucht, eine Länge anzugeben, das nützt aber nichts.
    Kann mir jemand sagen, wo ich in der Konfiguration diese Anweisung löschen kann?
    Oder kennt jemand eine Lösung für das Problem?

    Beste Grüsse, Jens K.

  2. #2
    Contao-Nutzer
    Registriert seit
    03.02.2010.
    Ort
    Unterfladnitz, Steiermark, AUT
    Beiträge
    15

    Standard

    Gleiches Problem bei mir - bei zwei Updates.

    LG Werner

  3. #3
    Contao-Nutzer Avatar von JeKi
    Registriert seit
    09.10.2009.
    Ort
    Zürich
    Beiträge
    19

    Standard Korrektur in Updater.php

    Ich habe jetzt mal die Zeile mit dem SQL-Statement, welches den Error verursacht, auskommentiert:

    /websites/contao-3.1.0_update/system/modules/core/library/Contao/Database/Updater.php
    Zeile 468:
    // $this->Database->query("ALTER TABLE `tl_files` DROP INDEX `path`");

    So läuft das 3.1ner Update immerhin durch.
    Leider will danach install.php das Update wieder ziehmlich von vorne anfangen, ich lande da in einer Endlosschlaufe.

    install.php will wieder hier fortfahren:

    Neue Spalten anlegen -Alle auswählen
    ALTER TABLE `tl_content` ADD `mooType` varchar(32) NOT NULL default '';
    Bestehende Spalten ändern - Alle auswählen
    ALTER TABLE `tl_files` CHANGE `path` `path` blob NULL;
    ALTER TABLE `tl_member` CHANGE `autologin` `autologin` varchar(32) NULL default NULL;
    ALTER TABLE `tl_style` CHANGE `whitespace` `whitespace` char(1) NOT NULL default '';
    ALTER TABLE `tl_calendar_events` CHANGE `startTime` `startTime` int(10) unsigned NULL default NULL;
    ALTER TABLE `tl_calendar_events` CHANGE `endTime` `endTime` int(10) unsigned NULL default NULL;
    ALTER TABLE `tl_calendar_events` CHANGE `startDate` `startDate` int(10) unsigned NULL default NULL;
    ALTER TABLE `tl_calendar_events` CHANGE `endDate` `endDate` int(10) unsigned NULL default NULL;

  4. #4
    Contao-Nutzer Avatar von Nils Heinold
    Registriert seit
    04.09.2010.
    Ort
    Uckermark
    Beiträge
    153
    User beschenken
    Wunschliste

    Standard

    Hi, die Reihenfolge der Aktualisierung der DB ist wohl falsch.

    Einfach den Haken zur Aktualisierung der `tl_files` DROP INDEX `path` deaktivieren, die anderen Tabellen aktualisieren und danach sollte auch diese ohne Fehler aktualisiert werden können.

    Nils

  5. #5
    Contao-Nutzer Avatar von JeKi
    Registriert seit
    09.10.2009.
    Ort
    Zürich
    Beiträge
    19

    Standard Problem mit Passwortverschlüsselung

    Nun konnte ich einmal einloggen im Contao Backend, jedoch kein zweites Mal. Wenn ich die DB anschaue, scheint es, als würden die Passwörter anders verschlüsselt...

    Hier übrigens mal ein paar Angaben zu meiner System-Umgebung:
    - Hosting bei Metanet
    - MySQL Version: 5.5.28-cll - MySQL Community Server (GPL) by Atomicorp
    - MySQL Clikent: Datenbank-Client Version: libmysql - mysqlnd 5.0.8-dev - 20102224 - $Revision: 321634 $
    - PHP Version: PHP Version 5.3.19

    Lösung gefunden:
    https://community.contao.org/de/show...l=1#post244030
    Passwort-Feldlänge muss erhöht werden auf 128 Zeichen
    Geändert von JeKi (06.06.2013 um 13:55 Uhr)

  6. #6
    Contao-Fan Avatar von w3scout
    Registriert seit
    20.06.2009.
    Ort
    Stuttgart
    Beiträge
    254

    Standard

    Zitat Zitat von Nils Heinold Beitrag anzeigen
    Hi, die Reihenfolge der Aktualisierung der DB ist wohl falsch.

    Einfach den Haken zur Aktualisierung der `tl_files` DROP INDEX `path` deaktivieren, die anderen Tabellen aktualisieren und danach sollte auch diese ohne Fehler aktualisiert werden können.

    Nils
    Kann ich bestätigen. So konnte ich das Problem auch beheben.

    VG

  7. #7
    Contao-Nutzer Avatar von JeKi
    Registriert seit
    09.10.2009.
    Ort
    Zürich
    Beiträge
    19

    Standard Update kann nur einmal durchlaufen werden...

    Die von Nils vorgeschlagene Lösung wird wohl funktionieren, wenn man im Updateprozess den richtigen Moment erwischt.

    Das Update kann aber nur einmal durchlaufen werden, danach kann sich das Update-Script nicht mehr orientieren, was bereits aktualisiert wurde und was nicht. Soweit auch logisch.
    Das bedeutet, dass man nach einem fehlgeschlagenen bzw. abgebrochenen Update nochmals von vorne beginnen muss. - Werde das ich jetzt wohl machen müssen...

    Aber danke für die Hilfe!

  8. #8
    Contao-Nutzer Avatar von Nils Heinold
    Registriert seit
    04.09.2010.
    Ort
    Uckermark
    Beiträge
    153
    User beschenken
    Wunschliste

    Standard

    Zitat Zitat von JeKi Beitrag anzeigen

    Das Update kann aber nur einmal durchlaufen werden, ...
    nein, über die install.php geht es doch immer wieder zur Aktualisierung der Datenbank, bis sie aktuell ist.

  9. #9
    Contao-Nutzer Avatar von JeKi
    Registriert seit
    09.10.2009.
    Ort
    Zürich
    Beiträge
    19

    Standard

    Leider nicht, denn wenn z.B. im Update ein Feld hinzugefügt wird, löst das beim erneuten Durchlauf ein Error aus und das Scirpt bricht ab.

  10. #10
    Contao-Nutzer Avatar von JeKi
    Registriert seit
    09.10.2009.
    Ort
    Zürich
    Beiträge
    19

    Standard gelöst

    Das Problem ist nun behoben: ich hatte beim ersten Versuch versehentlich die alten Contao-Files nicht gelöscht.

    Also für Updates von Version 2.x auf 3.1 gehe ich nun so vor:
    1. Sicherung der Files und der Datenbank
    2. Auf anderem Server die gleiche Website aufsetzen
    3. Dort alle inkompatiblen Erweiterungen deinstallieren und das System bereinigen
    4. Von diesem Stand eine Sicherungskopie erstellen (Files und DB)

    5. Alle Dateien und Ordner ausser tl_files löschen
    6. Contao 3.1 hochladen
    7. localconfig von alter Website hochladen
    8. install.php laufen lassen

    Nun habe ich eine saubere Ausgangslage für die Anpassungen an das neue System.

    9. ggf. eigene Templates anpassen
    10. ggf. passende Erweiterungen installieren und konfigurieren
    11. ggf. Styles anpassen
    12. alles wieder Testen und Sichern

    Hoffe, diese Kompakt-Anleitung hilft noch anderen Leuten :-)

  11. #11
    Contao-Nutzer
    Registriert seit
    12.09.2011.
    Ort
    Stuttgart
    Beiträge
    61

    Standard

    Zitat Zitat von JeKi Beitrag anzeigen
    Die von Nils vorgeschlagene Lösung wird wohl funktionieren, wenn man im Updateprozess den richtigen Moment erwischt.

    Das Update kann aber nur einmal durchlaufen werden, danach kann sich das Update-Script nicht mehr orientieren, was bereits aktualisiert wurde und was nicht. Soweit auch logisch.
    Das bedeutet, dass man nach einem fehlgeschlagenen bzw. abgebrochenen Update nochmals von vorne beginnen muss. - Werde das ich jetzt wohl machen müssen...

    Aber danke für die Hilfe!
    Zitat Zitat von Nils Heinold Beitrag anzeigen
    nein, über die install.php geht es doch immer wieder zur Aktualisierung der Datenbank, bis sie aktuell ist.
    Ich habe genau dasselbe Problem. Ich habe ebenfalls die Stelle in der Updater.php auskommentiert und erhalte dann:

    So läuft das 3.1ner Update immerhin durch.
    Leider will danach install.php das Update wieder ziehmlich von vorne anfangen, ich lande da in einer Endlosschlaufe.

    install.php will wieder hier fortfahren:

    Neue Spalten anlegen -Alle auswählen
    ALTER TABLE `tl_content` ADD `mooType` varchar(32) NOT NULL default '';
    Bestehende Spalten ändern - Alle auswählen
    ALTER TABLE `tl_files` CHANGE `path` `path` blob NULL;
    ALTER TABLE `tl_member` CHANGE `autologin` `autologin` varchar(32) NULL default NULL;
    ALTER TABLE `tl_style` CHANGE `whitespace` `whitespace` char(1) NOT NULL default '';
    ALTER TABLE `tl_calendar_events` CHANGE `startTime` `startTime` int(10) unsigned NULL default NULL;
    ALTER TABLE `tl_calendar_events` CHANGE `endTime` `endTime` int(10) unsigned NULL default NULL;
    ALTER TABLE `tl_calendar_events` CHANGE `startDate` `startDate` int(10) unsigned NULL default NULL;
    ALTER TABLE `tl_calendar_events` CHANGE `endDate` `endDate` int(10) unsigned NULL default NULL;
    Allerdings passiert beim updaten dieser Befehle nichts. Dauerschleife quasi. Hat dies jemand hinbekommen ohne nochmals alles neu zu installieren?

  12. #12
    Contao-Urgestein Avatar von BugBuster
    Registriert seit
    15.06.2009.
    Ort
    Berlin
    Beiträge
    9.929
    User beschenken
    Wunschliste

    Fehler bei manuellem Update müssen die alten Contao Files gelöscht werden!

    wie zwei Beiträge vorher schon erwähnt,
    bei manuellem Update müssen die alten Contao Files gelöscht werden!, Die Liste gibt es in den Sammelinfos zu 3.0
    Sonst existieren 2 Datenbank Definitionen je Tabelle was zu diesem Effekt führt.

    Löscht man diese und ruft die Install noch mal auf, sollte das funktionieren.
    Grüße, BugBuster
    "view source" is your guide.
    Danke an alle Amazon Wunschlisten Erfüller

  13. #13
    Contao-Nutzer
    Registriert seit
    12.09.2011.
    Ort
    Stuttgart
    Beiträge
    61

    Standard

    Zitat Zitat von BugBuster Beitrag anzeigen
    wie zwei Beiträge vorher schon erwähnt,
    bei manuellem Update müssen die alten Contao Files gelöscht werden!, Die Liste gibt es in den Sammelinfos zu 3.0
    Sonst existieren 2 Datenbank Definitionen je Tabelle was zu diesem Effekt führt.

    Löscht man diese und ruft die Install noch mal auf, sollte das funktionieren.
    ah jetzt! Vielen Dank. Manchmal brauch es einfach länger wenn man auf dem Schlauch steht. Habe alle alten Files gelöscht, jetzt tut alles vollkommen korrekt. Bin Happy! Danke :-)

  14. #14
    Contao-Urgestein Avatar von Samson1964
    Registriert seit
    05.11.2012.
    Ort
    Berlin
    Beiträge
    2.248

    Standard

    Zitat Zitat von BugBuster Beitrag anzeigen
    wie zwei Beiträge vorher schon erwähnt,
    bei manuellem Update müssen die alten Contao Files gelöscht werden!, Die Liste gibt es in den Sammelinfos zu 3.0
    Sonst existieren 2 Datenbank Definitionen je Tabelle was zu diesem Effekt führt.

    Löscht man diese und ruft die Install noch mal auf, sollte das funktionieren.
    Welche Sammelinfos zu 3.0? Ich habe nur bei Contao 3.1.0 verfügbar was gefunden, aber nirgendwo Sammelinfos. Geholfen hat der Tip unter dem Titel "Alte Ressourcen bereinigen" aber auch nicht.
    Viele Grüße
    Frank

    Seit Mai 2013 Fan von Contao
    Webmaster vom Deutschen Schachbund und Berliner Schachverband
    Mein Blog: Schachbulle
    Meine Erweiterungen bei GitHub
    Meine Videos auf YouTube: Playlist zur Contao-Programmierung/Einrichtung

  15. #15
    Contao-Urgestein Avatar von BugBuster
    Registriert seit
    15.06.2009.
    Ort
    Berlin
    Beiträge
    9.929
    User beschenken
    Wunschliste

    Standard

    ganz oben hier im Forum der blaue Balken
    Grüße, BugBuster
    "view source" is your guide.
    Danke an alle Amazon Wunschlisten Erfüller

  16. #16
    Contao-Urgestein
    Registriert seit
    10.07.2010.
    Beiträge
    4.400
    User beschenken
    Wunschliste

    Standard

    Die blau/grünen Balken, kann mann wenn man sich angemeldet hat, wegklicken (wenn Du sie sehen willst vielleicht mal ausloggen .

    Hier die Links:
    » Sammelinfos mit Tipps und Tricks zum Update auf Contao 3.1 «
    » Sammelinfos mit Tipps und Tricks zum Update auf Contao 3 «

    Man findet sie auch da: Installation, Wartung und Gestaltung von Contao >> Installation / Update


  17. #17
    Contao-Urgestein Avatar von Samson1964
    Registriert seit
    05.11.2012.
    Ort
    Berlin
    Beiträge
    2.248

    Standard

    Kenne ich alles, weil ich es jeden Tag sehe. Nur eine "Liste" habe ich dort nicht gefunden. Aber vielleicht hängt ja das nach wie vor bestehende Problem der Fehlermeldung hier mit der anderen Fehlermeldung zusammen, die ich immer zuerst bekomme.
    Viele Grüße
    Frank

    Seit Mai 2013 Fan von Contao
    Webmaster vom Deutschen Schachbund und Berliner Schachverband
    Mein Blog: Schachbulle
    Meine Erweiterungen bei GitHub
    Meine Videos auf YouTube: Playlist zur Contao-Programmierung/Einrichtung

  18. #18
    Contao-Urgestein Avatar von BugBuster
    Registriert seit
    15.06.2009.
    Ort
    Berlin
    Beiträge
    9.929
    User beschenken
    Wunschliste

    Standard

    Die Liste selber nicht, aber ein Hinweis und Link dazu:
    https://community.contao.org/de/show...l=1#post228373

    Einge Beiträge drüber ist auch die von mir.
    Grüße, BugBuster
    "view source" is your guide.
    Danke an alle Amazon Wunschlisten Erfüller

  19. #19
    Contao-Nutzer Avatar von Brendianer
    Registriert seit
    23.03.2011.
    Beiträge
    94

    Standard

    Hallo!
    Jetzt versuche ich schon ein paar Stunden, das Update auf 3.1 abzuschliessen. Leider bekomme ich immer wieder diesen Fehler:

    Fatal error: Uncaught exception Exception with message Query error: Can't DROP 'path'; check that column/key exists (ALTER TABLE `tl_files` DROP INDEX `path`) thrown in system/modules/core/library/Contao/Database/Statement.php on line 346
    #0 system/modules/core/library/Contao/Database.php(228): Contao\Database\Statement->query('ALTER TABLE `tl...')
    #1 system/modules/core/library/Contao/Database/Updater.php(468): Contao\Database->query('ALTER TABLE `tl...')
    #2 contao/install.php(956): Contao\Database\Updater->run31Update()
    #3 contao/install.php(530): InstallTool->update31()
    #4 contao/install.php(181): InstallTool->runDatabaseUpdates()
    #5 contao/install.php(971): InstallTool->run()
    #6 {main}

    Ich habe alle (oder zumindest viele Forumsbeiträge gelesen). Nur werde ich leider nicht schlau, wie ich diesen Fehler korrigieren muss.
    Sämtliche obsoleten Files habe ich gelöscht.
    Kann mir jemand helfen?
    Grüsse Brendianer

  20. #20
    Contao-Urgestein
    Registriert seit
    10.07.2010.
    Beiträge
    4.400
    User beschenken
    Wunschliste

    Standard

    Kopiere Deine Webseite mal, bevor Du ein update machst, in einen Lokalen Server wie Contao2go. Dann kannst Du rumspielen so viel Du willst, denn da bist Du Dein eigener Provider und kannst backuppen so viel du magst

    Und doppel posten musst du deswegen nicht.


  21. #21
    Contao-Urgestein Avatar von KlausGrenoble
    Registriert seit
    27.01.2013.
    Ort
    Grenoble
    Beiträge
    2.362

    Standard

    Zitat Zitat von Brendianer Beitrag anzeigen
    Hallo!
    Jetzt versuche ich schon ein paar Stunden, das Update auf 3.1 abzuschliessen. Leider bekomme ich immer wieder diesen Fehler:

    Fatal error: Uncaught exception Exception with message Query error: Can't DROP 'path'; check that column/key exists (ALTER TABLE `tl_files` DROP INDEX `path`) thrown in system/modules/core/library/Contao/Database/Statement.php on line 346
    #0 system/modules/core/library/Contao/Database.php(228): Contao\Database\Statement->query('ALTER TABLE `tl...')
    #1 system/modules/core/library/Contao/Database/Updater.php(468): Contao\Database->query('ALTER TABLE `tl...')
    #2 contao/install.php(956): Contao\Database\Updater->run31Update()
    #3 contao/install.php(530): InstallTool->update31()
    #4 contao/install.php(181): InstallTool->runDatabaseUpdates()
    #5 contao/install.php(971): InstallTool->run()
    #6 {main}

    Ich habe alle (oder zumindest viele Forumsbeiträge gelesen). Nur werde ich leider nicht schlau, wie ich diesen Fehler korrigieren muss.
    Sämtliche obsoleten Files habe ich gelöscht.
    Kann mir jemand helfen?
    Grüsse Brendianer
    Das steht doch da oben schon:
    https://community.contao.org/de/show...l=1#post269425
    Install einfach in zwei Etappen laufen lassen.

Aktive Benutzer

Aktive Benutzer

Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)

Lesezeichen

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •