MyBB.de Forum

Normale Version: Frage zur Datenbank-Konvertierung
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Hallo alle zusammen!

Ich betreue gerade ein Extra-Forum welches auf einen anderen Server ziehen musste.
Der alte Server nutzte MySQL 5, der neue nutzt MySQL 4.0.18 - dementsprechend gab es schon Probleme beim Import des Datenbankbackups.
Diese konnte ich lösen in dem ich das Backup auf meiner XAMPP-Umgebung einspielte und diese per MySQL 4 Kompatibilität exportierte und auf dem neuen Server wieder importierte.

Allerdings macht nun die db_mysql.php schwierigkeiten.
Dort habe ich den Code:
PHP-Code:
    function select_db($database)
    {
        global 
$config;
        
        
$success = @mysql_select_db($database$this->link) or $this->dberror();
        if(
$success && $config['db_encoding'])
        {
            
$this->query("SET NAMES '{$config['db_encoding']}'");
        }
        return 
$success;
    } 

Darauf zusammengekürzt:
PHP-Code:
    function select_db($database)
    {
        global 
$config;
        
        
$success = @mysql_select_db($database$this->link) or $this->dberror();
    } 
Da sonst ein MySQL-Fehler angezeit wurde, das der Befehl Set names 'utf-8' unbekannt sei. Liegt wahrscheinlich an der alten Datenbankversion.

Nunja, dass waren bisher die Rahmeninfos, nu zu meiner Frage:

Die Beiträge werden wunderbar dargestellt, die Zeichenkodierung scheint UTF-8 zu sein, und wird entsprechen so in die Datenbank geschrieben und ausgelesen. ... zumindest vermute ich das, weil ein Testbeitrag mit den deutschen Umlauten korrekt dargestellt wurde.
Im Admin-CP gibts ja die Option "UTF-8 Konvertierung" - wenn ich auf diese klicke wird mir die volle Liste angezeigt.
Muß ich die Datenbank - die ja ursprünglich als utf-8 angelegt war - nun noch konvertieren, oder würde das eh nicht funktionieren bei der alten MySQL Version?

LG, GM!
Wenn es keine Probleme gibt solltest du es dabei belassen. Der Query mit SET NAMES setzt die Kodierung der Daten von vorneherein fest, funktioniert aber mit deiner MySQL-Version nicht. Solltest du jetzt eine Konvertierung durchführen, würde das nur neue Probleme verursachen.
Danke dir Michael!

Okay, dass ist super das ich nu ganz genau weiß, wofür der Befehl da war. ... hatte vorher ja nur vermutet, dass es dafür zuständig ist. Dann bin ich ja beruhigt, dass es da nu keine Komplikationen geben kann, wo ich den Befehl ja entfernt hab.

Also so wie ich das beobachtet, und in nem Testbeitrag (mit den Umlauten) getestet habe, wird Text in UTF-8 gespeichert, und so auch wieder ausgelesen. ... müsste eigentlich ja so ohne Probs gehen, oder?!

Dachte ich frag hier einfach mal nach, und verschaff mir Gewissheit!
Danke dir nochmal fürs schnelle Antworten!!!

LG, GM!
Noch ein Hinweis: Wenn du die Angabe zur Kodierung in der Datei inc/config.php weglässt, sind keine Codeänderungen erforderlich.