Drupal svetainės dublikavimas (D7->D7)

2016 11 17 / BenasPerskaityti užtruks: 2 mins

Vienas dalykas yra susikurti svetainę, nesvarbu kokią TVS naudojant, "nuo nulio", o jau visai kitas - perkelti egzistuojančią ir veikiančią sistemą į kitą serverį. Šis veiksmas galėtų būti atliekamas, kuomet ėmė skirtis "production" (darbinės) ir testinės aplinkos ir reikia production išimti, o į jos vietą perkelti testinę (preziumuojant, jog testinė aplinka taip pat yra ant live serverio) - taip kartais atsitinka, kai žmonės "užsižaidžia" ir padaro pakeitimų tiek, kad geriau juos ne atkartoti, o tiesiog perkelti testinę vietoje produkcinės versijos. Paaiškinsiu, kaip šią procedūrą atlikti su Drupal 7 TVS.

Visų pirma, turimoje sistemoje iš anksto turi būti įdiegtas Backup & Migrate modulis, tai vienintelis modulis, kurio realiai reikia, be jo duomenų bazę reikėtų pasiimti tiesiai per phpMyAdmin arba naudojant Drush apie ką dabar nepasakosiu.

  1. Testinėje aplinkoje atliekamas duomenų bazės eksportas (atsisiunčiama į diską)

    linkas: /admin/config/system/backup_migrate
    Backup tab'as > Quick Backup > Default Database > renkamės "to download" using "default settings"
     

  2. Nukopijuojami visi testinės versijos failai į diską (naudojant FTP klientą, Filezill'ą ar pan.)
  3. Sukuriama nauja duomenų bazė darbinėje aplinkoje esančiai naujai svetainei (per cPanel ar pan.)
  4. Į diską nukopijuojami visi darbinės aplinkos failai (vėl FTP klientas).
  5. Darbinės aplinkos duomenys pakeičiami testinės aplinkos duomenimis (FTP klientas).
  6. Darbinės aplinkos segtuve /sites/default esantį failą settings.php pervadiname į default.settings.php (FTP klientas).
  7. Failo default.settings.php viduje duomenų bazės vardas, duomenų bazės vartotojo vardas ir duomenų bazės vartotojo slaptažodis pakeičiami naujais duomenimis, gautais sukūrus naują duomenų bazę (3 punktas).
    
    	$databases = array (
    	  'default' => 
    	  array (
    	    'default' => 
    	    array (
    	      'database' => 'duomenu_bazes_vardas',
    	      'username' => 'duomenu_bazes_vartotojo_vardas',
    	      'password' => 'duomenu_bazes_vartotojo_slaptazodis',
    	      'host' => 'localhost',
    	      'port' => '',
    	      'driver' => 'mysql',
    	      'prefix' => '',
    	    ),
    	  ),
    	);> 
    
    
  8. Aplankoma darbinė svetainė jos tikruoju www adresu, taip aktyvuojant diegimą. Diegiant suvedami naujosios duomenu_bazes_vardas, duomenu_bazes_vartotojo_vardas ir duomenu_bazes_vartotojo_slaptazodis.
  9. Naujoje svetainėje einama į Modulių administravimo sekciją ir suaktyvinamas modulis Backup & Migrate.
  10. Per modulį Backup & Migrate importuojama senoji duomenų bazė ant naujai sukurtos tuščios duomenų bazės.

    linkas: /admin/config/system/backup_migrate/restore
    Restore tab'as > Upload Backup File > pasirenkamas anksčiau atsisiųstas testinės duomenų bazės failas ir spaudžiama "Restore Now"
     

  11. Išvalomi svetainės kešai.
  12. Pakartotinai paleidžiamas update.php failas (http://www.jususvetaine.lt/update.php).

 

Dabar, jei viskas atlikta tiksliai, "testinė" aplinka turėtų būti perkelta į "production" aplinką, kaip identiška kopija.