Typo3 LTS Upgrade

Aus Vosp.info
Wechseln zu:Navigation, Suche

https://jweiland.net/typo3-cms/versionen-und-updates.html

Inhaltsverzeichnis

standard prozedure

auf dem alten Server

  • alle möglichen caches löschen
  • sämtliche tests mal machen
  • noch mal alle möglichen caches löschen

Backup Machen

  • bash
cd /var/www/_site_
cat typo3conf/LocalConfiguration.php  | grep "DB" -A 10
# export
mysqldump --single-transaction --default-character-set=utf8 -u _username_ -p _databasename_ > mysql._databasename_.xy.yyyymmdd.sql
#
cd ..
tar -czvf _site_xy.yyyymmdd.tar.gz  _site_/ --exclude=TYPO3.CMS
  • am besten mit phpmyadmin auch noch mal die datenbank live und dateienverzeichnis kopieren, spart arbeit beim zurück spielen

upgrade

wget get.typo3.org/x.y -O typo3_src-x.y.tar.gz 
tar -xzf typo3_src-x.y.tar.gz
mv typo3_src_old
ln -s typo3_src-x.y.z typo3_src
  • typo3 x.y runter laden
  • typo3 auf x.y verlinken
typo3_src -> typo3_src-7.6.32/

für den Umzug exportieren

mysqldump --single-transaction --default-character-set=utf8 -u _username_ -p _databasename_ > mysql.typo3.76.yyyymmdd.sql

auf dem neuen Server

Datenbank

  • Datenbank erstellen
cd /var/www/_site_
cat typo3conf/LocalConfiguration.php  | grep "DB" -A 10
mysql -u root -p
create database DATABASE;
create user 'USERNAME'@'localhost' identified by 'PASSWORD';
grant all on DATABASE.* to 'USERNAME'@'localhost';
FLUSH PRIVILEGES;
  • Datenbank imporierten
# import
mysql -u _username_ -p _databasename_ < mysql.yyyymmdd.sql

typo3 7.6 nach 8.7

Probleme

t3-8.7: The option $TYPO3_CONF_VARS[SYS][displayErrors] is not set to "-1", "0" or "1"

[proxy_fcgi:error] [pid 2607] [client 176.6.178.229:36660] AH01071: Got error 'PHP message: PHP Fatal error:  Uncaught RuntimeException: The option $TYPO3_CONF_VARS[SYS][displayErrors] is not set to "-1", "0" or "1". in typo3_src-8.7.32/typo3/sysext/core/Classes/Core/Bootstrap.php:660\nStack 
  • typo3conf/AdditionalConfiguration.php
    • displayErrors war 2
}
$GLOBALS['TYPO3_CONF_VARS']['SYS']['displayErrors'] = '1';
echo '<h1>display: '.$GLOBALS['TYPO3_CONF_VARS']['SYS']['displayErrors'] .'</h1>';
?>

t3-8.7: Important actions - Database update failed - Error: Data truncated for column 'image', 'media' at row

Database analyzer Change fields

-- fehler meldungen weil zellen mit null voll sind 
ALTER TABLE `tt_content` CHANGE `image` `image` INT UNSIGNED DEFAULT 0 NOT NULL
-- ERROR 1265 (01000): Data truncated for column 'image' at row 57
ALTER TABLE `tt_content` CHANGE `media` `media` INT UNSIGNED DEFAULT 0 NOT NULL
-- ERROR 1265 (01000): Data truncated for column 'media' at row 49

--
select count(uid) from  tt_content where image is null;
update tt_content set image='0' where image is null;

--
select count(uid) from  tt_content where media is null;
update tt_content set media='0' where media is null;

danach gehts

t3-8.7: MySQL database character set check failed | Checking database character set failed, got key "latin1" instead of "utf8" or "utf8mb4"

mysql> ALTER DATABASE databasename CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;



typo3 6.2 nach 7.6

  • alter Server
    • PHP 5.6
    • mysql 5.5
  • neuer Server
    • PHP 7.3
    • mysql 5.7


Probleme

t3-7.6 TYPO3 Fatal Error: Extension key "cms" is NOT loaded

  • speziell nach einem downgrade von 7.6 auf 6.2 ... auch wenn es nur so aussieht
    • backup zurück spielen .... vor allem die dateien

t3-7.6: It looks like the character set utf8 is not used for this connection even though it is configured as connection charset. This TYPO3 installation is using the $GLOBALS['TYPO3_CONF_VARS']['SYS']['setDBinit'] property with the following value: "utf8". Please make sure that this command does not overwrite the configured charset. Please note that for the TYPO3 database everything other than utf8 is unsupported since version 4.7.

  • typo3_src/typo3/sysext/core/Classes/Database/DatabaseConnection.php
                }
            }
//            $this->checkConnectionCharset();
        } else {
            // @todo This should raise an exception. Would be useful especially to work during installation.


t3-7.6: PHP Fatal error: Class 't3lib_error_ErrorHandler' not found in GeneralUtility.php

  • typo3_src-9.5.31/typo3/sysext/core/Classes/Utility/GeneralUtility.php:3692
  • typo3_src-8.7.32/typo3/sysext/core/Classes/Utility/GeneralUtility.php:3975
  • typo3_src-7.6.32/typo3/sysext/core/Classes/Utility/GeneralUtility.php on line 4569
  • typo3/sysext/core/Classes/Utility/GeneralUtility.php anpassen
    protected static function instantiateClass($className, $arguments)
    {
// @nc workarround ErrorHandler BOF        
        if($className == 't3lib_error_ErrorHandler') {
                $className = 'TYPO3\CMS\Core\Error\ErrorHandler';
        }
// @nc workarround ErrorHandler EOF       
        switch (count($arguments)) {

The package "yag_theme_perfectlightbox" depends on "perfectlightbox" which is not present in the system.

  • yag_theme_perfectlightbox
    • cat yag_theme_perfectlightbox/ext_emconf.php
                'depends' => 
                array (
                        // 'typo3' => '4.5.0-6.2.99',
                        'typo3' => '4.5.0',
                        // .... 
                ),

Core: Error handler (FE): PHP Catchable Fatal Error: Argument 2 passed to tx_simulatestatic::hookCheckAlternativeIDMethods() must be an instance of tslib_fe, instance of TYPO3\CMS\Frontend\Controller\TypoScriptFrontendController class.tx_simulatestatic.php line 193

install https://extensions.typo3.org/extension/compatibility6

typo3 4.6 nach 6.2

install backend

Komisch

gibt ne fehlermeldung im error.log .... anzeige zeigt aber positives ergebnis

[error] File does not exist: typo3temp/ExtensionCompatibilityTesterErrors.json, referer: typo3/sysext/install/Start/Install.php?install[action]=importantActions&install[context]=standalone&install[controller]=tool
Check for broken extensions

Incompatible extension found! TYPO3 CMS 6.2.10

  • tt_news
  • tt_address
  • t3blog

inkokmpatibel aber nicht automatisch gefunden

problematische Extensions

ty_seo bzw tq_seo

[error]  PHP Fatal error:  require_once(): Failed opening required 'typo3/interfaces/interface.backend_cacheActionsHook.php' (include_path='typo3/contrib/pear/:.:/usr/share/php:/usr/share/pear') in typo3conf/ext/tq_seo/hooks/sitemap/class.cache_controller_hook.php on line 261
  • ergibt einen FATAL Error ... .sprich nur install seite funzt, backend und frontend nicht ....
    • damit das backend wieder funktioniert muss in typo3conf/ext/tq_seo/hooks/sitemap/class.cache_controller_hook.php Zeile 26 das require_once auskommentiert werden!!


extensions die im nachhinein geupdated werden können

nicht unbedingt getestet!!!

  • static_info_tables (update skript)
  • pagebrowse
  • realurl
  • tq_seo (update skript)
  • news
    • irgendwie fehlen die Kategorien

weiteres

Dateirechte setzen

chmod 2775 ./ 
chmod 2775 ./typo3temp/
chmod 2775 ./typo3temp/_processed_
chmod 2775 ./typo3temp/compressor/
chmod 2775 ./typo3temp/cs         
chmod 2775 ./typo3temp/GB
chmod 2775 ./typo3temp/llxml/
chmod 2775 ./typo3temp/locks/
chmod 2775 ./typo3temp/pics/
chmod 2775 ./typo3temp/sprites/
chmod 2775 ./typo3temp/temp/   
chmod 2775 ./typo3conf/     
chmod 2775 ./typo3conf/ext
chmod 2775 ./typo3conf/l10n/
chmod 2775 ./uploads/       
chmod 2775 ./uploads/media/
chmod 2775 ./uploads/pics/ 
chmod 2775 ./fileadmin/   
chmod 2775 ./fileadmin/_temp_/
chmod 2775 ./fileadmin/user_upload/