Install Fehler

Begonnen von Dukewh, 29 Januar 2014, 14:34:56

⏪ vorheriges - nächstes ⏩

0 Mitglieder und 1 Gast betrachten dieses Thema.

Dukewh

Hallo,
erst mal Danke für die Arbeit die ihr euch für uns "nur Anwender" macht.  :JC_highfive:

Das Problem: Bei der Installation als Testseite werden einige Tabellen nicht erstellt (siehe Anhang).
Was mich wundert, dass z.B. die Tabelle "downloads_newdownload" nicht vorhanden ist, aber mit einem Download-Testeintrag funktioniert anscheinend alles - auch "....de/modules.php?name=Downloads&op=NewDownloads"

Hab grade gemerkt, dass sich Artikel nicht speichern lassen.

MySQL 5.5.28
PHP 5.3.19 STABLE-STANDARD
pragmaMx_2.0_2014-01-28--20-58_full
M.f.G.u.b.d.T. Duke



CMS-Version: pragmaMx 1.12.3.1.33.4.14 (2012-06-21)
PHP-Version:  5.3.19  (PHP-Info)
MySQL-Version: 5.5.28-log
Server-Version: Apache/2.2.22

rmax

#1
Bei mir trat das mit MySQL 5.1.71 auch auf. Das Problem scheint zu sein, daß der Datentyp DATETIME erst ab MySQL 5.6.5 Defaults unterstützt, davor muß man das entweder über einen Trigger lösen oder auf den Datentyp TIMESTAMP zurückgreifen, der aber einen kleineren Wertebereich hat.

http://stackoverflow.com/questions/168736/how-do-you-set-a-default-value-for-a-mysql-datetime-column

Edit: Nach Änderung aller betroffenen Spalten von DATETIME auf TIMESTAMP läuft die Installation durch, weiter habe ich aber noch nicht getestet.
$ X="NOT NULL default CURRENT_TIMESTAMP"
$ grep -rl "datetime $X" . | xargs sed -i "s/datetime $X/timestamp $X/"


Das zeigt übrigens auch gleich noch ein Problem mit dem Rendering von code-Tags, denn die Dollars sollten eigentlich übereinander stehen.

Dukewh

wenn ich Create Table "zu Fuß" mache bekomme ich die Fehlermeldung
CREATE TABLE `mx2_tracking` (
`tracktime` datetime NOT NULL default CURRENT_TIMESTAMP ,
`ip` varchar( 20 ) NOT NULL default '',
`uid` int( 11 ) NOT NULL default '0',
`server` varchar( 90 ) NOT NULL default '',
`referer` varchar( 255 ) NOT NULL default '',
`requrl` varchar( 255 ) NOT NULL default '',
`trackid` varchar( 20 ) NOT NULL default '',
PRIMARY KEY ( `ip` , `tracktime` ) ,
KEY `requrl` ( `requrl` ) ,
KEY `uid` ( `uid` ) ,
KEY `tracktime` ( `tracktime` ) ,
KEY `trackid` ( `trackid` )
) ENGINE = MYISAM DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci

MySQL meldet: Dokumentation
#1067 - Invalid default value for 'tracktime'


wenn ich default CURRENT_TIMESTAMP lösche wird die Tabelle erstellt
M.f.G.u.b.d.T. Duke



CMS-Version: pragmaMx 1.12.3.1.33.4.14 (2012-06-21)
PHP-Version:  5.3.19  (PHP-Info)
MySQL-Version: 5.5.28-log
Server-Version: Apache/2.2.22

Andi

Moin :)

grundsätzlich taucht der Fehler nur auf, wenn der mySql Server im Strict Mode läuft. Dies ist allerdings ab v5.5 standardmässig der Fall.
Wir hatten das Problem vor kurzem auch bemerkt und dachten es gelöst zu haben, war wohl ein Irrtum  :red:

Ok, wie rmax auch schreibt sind die beiden Feldtypen datetime und timestamp ja vom Format her kompatibel. In alten mySql Versionen war dies nicht der Fall und es wurde eben datetime verwendet...

Ich werde heute noch die betroffenen Tabellen durchguggen, ob überall timestamp anstatt datetime verwendet werden kann und das Setup entsprechend anpassen. Update kommt ;)


@ Dukewh
müsstest dann halt ein wenig warten auf das Update, bevor sich durch die Testerei was anderes verhaspelt...
schön´s Grüssle, Andi

rmax

Bei mir tritt das Problem wie gesagt mit 5.1 auf und der strict-Mode scheint nicht aktiviert zu sein:
mysql> SELECT @@global.sql_mode;
+-------------------+
| @@global.sql_mode |
+-------------------+
|                   |
+-------------------+
1 row in set (0.01 sec)

mysql> SELECT @@session.sql_mode;
+--------------------+
| @@session.sql_mode |
+--------------------+
|                    |
+--------------------+
1 row in set (0.01 sec)

pyr0

Achso, sieht voll cool aus, dass ACP, war nur etwas komisch als ich es zum ersten mal gesehen hab.
Hab die Fehler beim anlegen der Tabellen mal ignoriert und die Install weiter durch geführt.  :smile:

Jepp das selbe, nur bekomme ich noch mehr Fehler  :bye:

Kein Support über PN, Mail !
Bitte die Fragen im Forum stellen, nur so helfen die Antworten auch den anderen Usern.
Bitte auch die Boardsuche nicht vergessen, oft ist genau dein Problem schon an anderer Stelle gelöst worden!

pyr0

Also hab jetzt das ganze mal als Update laufen lassen auf einer jungfreudigen pmx 1.12.3 und dann mal pmx2.0 update
DB's werden alle als iO bezeichnet.
Das einzige ist halt das manuelle löschen der Dateien, wäre schön wenn man eine export Funktion der aufgelisteten Datein hätte damit nicht irgendeine verloren geht beim löschen.

Gruss
Kein Support über PN, Mail !
Bitte die Fragen im Forum stellen, nur so helfen die Antworten auch den anderen Usern.
Bitte auch die Boardsuche nicht vergessen, oft ist genau dein Problem schon an anderer Stelle gelöst worden!

Andi

Moin :)

ich mach hier mal zu.
Das entsprechende Update kommt spätestens Morgen Mittag, dann sollte das Problem gelöst sein.


ZitatDas einzige ist halt das manuelle löschen der Dateien, wäre schön wenn man eine export Funktion der aufgelisteten Datein hätte damit nicht irgendeine verloren geht beim löschen.
Die Dateien werden garantiert niccht mehr benötigt. Sie verbrauchen nur unnötig Speicherplatz und verursachen evtl. sogar Sicheheitsprobleme wenn sie verbleiben.
Es werden ja keine Dateien von Fremdmodulen oder Themes gelöscht, sondern nur veraltete und unnötige Systemdateien, bzw. von integrierten Modulen.
Und ein Komplettbackup der Dateien wird ja sowieso empfohlen...
schön´s Grüssle, Andi

Andi

schön´s Grüssle, Andi