it-swarm.com.de

Joomla Update defekte Update-Tabelle

Ich habe Joomla kürzlich von Version 3.2.3 auf Version 3.3.6 aktualisiert, aber aus irgendeinem Grund erhalte ich jetzt eine Fehlermeldung, wenn ich versuche, etwas zu installieren:

1146  Table 'dbname.ku42W_updates' doesn't exist SQL=SHOW COLUMNS IN `ku42W_updates`

Ich habe die folgende SQL-Abfrage ausprobiert, aber sie funktioniert nicht. Sie besagt, dass die Tabelle nicht existiert!

CREATE TABLE IF NOT EXISTS `ku42W_updates` (
  `update_id` int(11) NOT NULL AUTO_INCREMENT,
  `update_site_id` int(11) DEFAULT 0,
  `extension_id` int(11) DEFAULT 0,
  `name` varchar(100) DEFAULT '',
  `description` text NOT NULL,
  `element` varchar(100) DEFAULT '',
  `type` varchar(20) DEFAULT '',
  `folder` varchar(20) DEFAULT '',
  `client_id` tinyint(3) DEFAULT 0,
  `version` varchar(32) DEFAULT '',
  `data` text NOT NULL,
  `detailsurl` text NOT NULL,
  `infourl` text NOT NULL,
  `extra_query` varchar(1000) DEFAULT '',
  PRIMARY KEY (`update_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='Available Updates';

Ich habe versucht, die Datenbanktabelle manuell zu erstellen, erhalte dann aber den gleichen Fehler.

Wenn ich zu den Erweiterungen >> Extension Manager >> Database >> Fix gehe, wird der folgende Fehler angezeigt:

1146 Table 'kingswood.kw_updates' doesn't exist SQL=SHOW COLUMNS IN `kw_updates` WHERE field = 'infourl'

Irgendwelche Ideen, was ich tun kann, um es zu lösen? Vielen Dank

4
RustyJoomla

Ich habe dies durch eine neue und saubere Installation von Joomla 3.3.6 behoben und dann über alle relevanten Datenbanktabellen hinweg migriert. Nicht schön (oder schnell), aber es funktioniert jetzt zumindest!

* UPDATE *

Dieser Fix funktioniert viel besser:

DROP TABLE #####_updates;

CREATE TABLE IF NOT EXISTS `#####_updates` (
  `update_id` int(11) NOT NULL AUTO_INCREMENT,
  `update_site_id` int(11) DEFAULT 0,
  `extension_id` int(11) DEFAULT 0,
  `name` varchar(100) DEFAULT '',
  `description` text NOT NULL,
  `element` varchar(100) DEFAULT '',
  `type` varchar(20) DEFAULT '',
  `folder` varchar(20) DEFAULT '',
  `client_id` tinyint(3) DEFAULT 0,
  `version` varchar(32) DEFAULT '',
  `data` text NOT NULL,
  `detailsurl` text NOT NULL,
  `infourl` text NOT NULL,
  `extra_query` varchar(1000) DEFAULT '',
  PRIMARY KEY (`update_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='Available Updates';

Ersetzen Sie einfach ##### durch Ihr Tabellenpräfix

5
RustyJoomla

Ich hatte dieses Problem. Ich habe einfach benutzt:

DROP TABLE xxxxx.updates

gefolgt von

CREATE TABLE IF NOT EXISTS `XXXXX_updates` (
  `update_id` int(11) NOT NULL AUTO_INCREMENT,
  `update_site_id` int(11) DEFAULT 0,
  `extension_id` int(11) DEFAULT 0,
  `name` varchar(100) DEFAULT '',
  `description` text NOT NULL,
  `element` varchar(100) DEFAULT '',
  `type` varchar(20) DEFAULT '',
  `folder` varchar(20) DEFAULT '',
  `client_id` tinyint(3) DEFAULT 0,
  `version` varchar(32) DEFAULT '',
  `data` text NOT NULL,
  `detailsurl` text NOT NULL,
  `infourl` text NOT NULL,
  `extra_query` varchar(1000) DEFAULT '',
  PRIMARY KEY (`update_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='Available Updates';

Ersetzen Sie den Ausdruck XXXXX durch Ihre eigene Zeichenfolge

3
Kye

Ich habe diese Lösung ausprobiert, habe jedoch die folgende Fehlermeldung erhalten:

MySQL sagte: Dokumentation

1005 - Tabelle 'CPANELNAME_jml3_2015.j30_updates' kann nicht erstellt werden (Fehlernummer: -1) (Details…)

Ich habe viele Dinge ausprobiert, einschließlich des Versuchs, die Tabelle manuell zu erstellen, sowie des Wiederherstellens einer vorherigen MySQL-Sicherung, die fehlgeschlagen ist, als die Tabelle 'j30_updates' aufgerufen wurde und einfach dort angehalten wurde, sodass keine folgenden Tabellen erstellt wurden, die im Grunde die Site zum Absturz brachten.

Nichts hat geklappt.

Meine Lösungen wurden von der vorherigen MySQL-Sicherung wiederhergestellt, eine Kopie der MySQL-Sicherung erstellt, alles bis einschließlich der Tabelle 'j30_updates' manuell gelöscht, damit ich die folgenden Tabellen wiederherstellen konnte. Dann habe ich manuell eine Tabelle mit den 14 Spalten erstellt und die Spalten manuell hinzugefügt. Das hat funktioniert! Ich konnte Joomla-Updates erneut durchführen und die Site wurde aufgerufen. Groß!

Zum jetzigen Zeitpunkt habe ich keine Ahnung, was dies verursacht hat, aber es ist bisher auf zwei meiner Kundenwebsites passiert. Der vorherige Client, auf dem ich dieses Problem hatte, war eine "sehr kleine" Website, also habe ich sie einfach neu erstellt. Diese Kundenwebsite war jedoch umfangreich, so dass ich weiter an den Tabellen arbeitete, bis ich sie gelöst hatte.

1
Luke Douglas

Ich hatte vor kurzem das gleiche Problem mit dem folgenden Fehler beim Versuch, die Aktualisierungstabelle neu zu erstellen:

#1146 - Table 'xxxxxxxx_joomla.yyy_updates' doesn't exist

In phpMyAdmin wurde die Aktualisierungstabelle in der Tabellenliste in der linken Spalte angezeigt, aber seltsamerweise nicht in der Hauptliste.

Laut https://stackoverflow.com/a/8410497/1983389 können Sie beim Neustart von MySQL die Tabelle gemäß den anderen Antworten erstellen.

In meinem Fall reagierten die Mitarbeiter des Webhosting-Supports in der Weihnachtszeit nicht. Ich habe die Website mit Akeeba Backup gesichert, die Websitedateien gelöscht, die Datenbank gelöscht und neu erstellt und die Website mit Kickstart wiederhergestellt. Ich konnte dann die Aktualisierungstabelle neu erstellen, damit die Website wieder normal funktioniert.

#1146 Table doesn't exist

0
Neil Robertson