Siirry pääsisältöön

Siirtotapa 2: SSH & WP-CLI

Jos olet tottunut työskentelemään SSH-yhteyden ylitse, se on luotettavin tapa sivuston siirtoon.

Päivitetty tänään

Siirtääksesi sivuston WordPress-komentorivityökalun (WP-CLI) avulla tarvitset SSH-yhteyden molempiin koneisiin, minkä lisäksi WP-CLI tulee olla asennettuna kumpaankin ympäristöön. Siirto komentorivin kautta on kaikkein varmatoimisin siirtomenetelmä, sillä siinä pystyt kontrolloimaan kaikkea mitä siirrossa tapahtuu.

Vanhan palvelimen tiedot (esimerkki)

IP-osoite: 123.123.123.123
SSH-portti: 22
käyttäjä: wp-user
WordPressin asennushakemisto: /var/www/htdocs

Seravo.com-palvelupaketin tiedot (esimerkki)

Host: esimerkki.fi-c.seravo.com
SSH-portti: 10350
käyttäjä: esimerkki
WordPressin asennushakemisto: /data/wordpress/htdocs

1. Aloita kirjautumalla vanhalle palvelimelle

2. Tarkista että WP-CLI on asennettu (WP-CLI -työkalun asennusohje)

wp --version 

3. Luo WordPressin tietokannasta vientitiedosto

HUOM! Muista määritellä --path-parametrilla WordPressin asennushakemisto.

wp db export --path=/var/www/htdocs/ ~/wordpress-tietokanta.sql

Mikäli vientitiedostossa on taulumäärittelyjä (esimerkiksi ENGINE=InnoDB tai ENGINE=MyISAM) pitää ne poistaa.

sed -i 's/ENGINE=InnoDB//g' ~/wordpress-tietokanta.sql
sed -i 's/ENGINE=MyISAM//g' ~/wordpress-database.sql

Lisäksi mikäli taulujen prefix on muu kuin wp_, tulee se vaihtaa sekä taulujen nimissä että mm. wp_options-taulun kenttien nimissä (esim. wp_user_roles).

sed -i 's/vanha-prefix/wp_/g' ~/wordpress-tietokanta.sql

4. Kirjaudu SSH-tunnuksilla Seravon WP-palveluun

 ssh [email protected] -p 10350

5. Kopioi WordPressin wp-content-hakemisto vanhalta palvelimelta

Siirto saattaa viedä useita kymmeniä minuutteja riippuen siirrettävien tiedostojen koosta ja määrästä.

rsync -avz --stats [email protected]:~/wordpress-tietokanta.sql /data/db 
rsync -avz --stats [email protected]:/var/www/htdocs/wp-content /data/wordpress/htdocs

Huom! Yllä oleva komento olettaa, että vanhalta sivustolta ei tarvitse siirtää mitään muuta kuin kansion wp-content sisältö. Mikäli vanhalla sivustolla on käytössä Bedrock tai jokin muu erityinen hakemistorakenne, voi sivustolle joutua lisäämään symbolisia linkkejä, jotta se toimisi oikein. Lisätietoja kehittäjille hakemistorakenteesta löytyy täältä.

6. Tuo tietokanta WP-CLI -työkalun avulla

Resetoi ensin tietokanta (yleensä tyhjä), mutta ota varmuuskopio, jos olet tekemässä importtia olemassa olevaan sivustoon.

wp db reset --yes

Aja sen jälkeen tietokantaimportti.

wp db import /data/db/wordpress-kanta.sql

7. Valmis! Tee vielä lopuksi mahdollisesti tarvittavat search-replace tietokantamuutokset

wp search-replace "/var/www/htdocs/wp-content" "/data/wordpress/htdocs/wp-content"

Jos haluat tarkastaa sivuston ennen julkaisua, vaihda tietokantaan kehitysosoite käyttöön.

wp search-replace "//esimerkki.fi" "//esimerkki.fi-c.seravo.com" --all-tables
Vastasiko tämä kysymykseesi?