Soooooo....ich habe irgendwie nirgendwo eine Anleitung gefunden, da habe ich doch gleich mal eine selber geschrieben.
Möge Google viele Hilfesuchende hierher schicken
Beide Server laufen mit Confixx 3.1
Auf dem neuen Server den gleichen Account erstellen, wie auf dem alten Server, also web1 oder web34.
Mit Confixx ein Backup der Daten und der Datenbanken machen:
man erhält eine mysql.tar.gz und eine html.tar.gz
Nun kann man per fxp die Dateien auf den neuen Server kopieren.
Funktioniert aus irgendwelchen Gründen FXP nicht, dann hilft hier der midnight-commander: (mc)
In der Shell (idealerweise mit Putty) auf dem neuen Server auf der linken Seite zum alten Server connecten
#ftp:user

asswort@host.de
Dann kann man die Dateien mit F5 rüberkopieren.
Für die Serverlast des alten Servers (der ja noch in Betrieb ist) ist es am Sinnvollsten, die html.tar.gz rüberzuziehen.
Man kann auch alle Dateien einzeln kopieren. Hier nur darauf achten, dass man "preserve attributes" anklickt.
Nun geht es weiter mit dem Entpacken der Daten.
In der Shell
tar xfvzp html.tar.gz
eingeben und die Dateien entpacken. Der Flag -p hilft hier, die Attribute beizubehalten.
Nun zu den Datenbanken:
In Confixx die benötigte Anzahl Datenbanken erstellen.
Die Mysql.tar.gz rüberkopieren und entpacken. Je nachdem, wie viele Datenbanken der User hat, findet man dort dir gleiche Anzahl Dateien.
mysql -uUSER -pPASS -h localhost usr_web1_1 < usr_web1_1
In der Shell eingeben, wobei USER, PASS , der Host (hier localhost) angepasst werden müssen. Die Datenbank ist hier usr_web1_1 und die Datei heißt ebenso (steht ganz rechts)
Von der Shell aus geht der Import verdammt flott, also nichts im Gegensatz zu anderen Tools.
Bei jeder Datenbank anwenden.
Exportieren kann man damit auch, man muss nur die Klammer umdrehen!
Nun müssen wir noch Dateien finden, die eine alte Pfadangabe beinhalten.
find /home/www/web1/html/domain.de -exec grep -s -l SUCHBEGRIFF {} \;
wobei der Suchbegriff der alte Pfad wäre
Diesen ersetzen: (in allen .php-Dateien)
perl -pi -e '~s|alt|neu|' */*/*.php
(Je nach Tiefe der Verzeichnisse)
Weitere praktische Sachen für die Shell:
du -h --max-depth=1 html/directory
(auf einer Ebene den belegten Festplattenplatz von "html/directory" anzeigen)
SQL-Befehl zum Ersetzen:
UPDATE table
SET row = REPLACE(row, 'alter text', 'neuer text')
WHERE row LIKE '%alter text/%'
Mehr fällt mir so spontan nicht ein.
Viel Spaß