Z problemem przenosin serwisów z hostingu na hosting osobiście spotykam się co roku. Gdy wygasa mi jeden hosting szybko szukam czegoś w promocji i tam przenoszę swoje serwisy (po co przepłacać?).
Nieprzyjemnie robi się jeżeli posiadamy serwisy, których waga bazy danych znacznie przekracza limit uploadu ustawiony przez nowego dostawce usługi (zakładam, że nie mamy dostępu do pliku php.ini). Wtedy mamy 2 możliwości:

  1. Podzielić plik .sql na kilka części i uploadować je w partach,
  2. Użyć SSH,

Opcja pierwsza jest o tyle niewygodna, że przy bazie danych wielkości 6 GB i limicie uploadu 2 MB, troszkę musielibyśmy się napracować by to wszystko podzielić na części i przy okazji się nie pogubić.

Z pomocą przychodzi SSH …
Nie każdy wie, ale możliwość obsługi ssh w dzisiejszych czasach udostępnia większość hostingów.

UWAGA! Ten wpis ma już kilka lat. Tempo zmian w IT jest gigantyczne, dlatego treści w nim zawarte mogą być nieaktualne. Potraktuj ten przekaz jako dane archiwalne.

Jak zauploadować dużą bazę danych przy użyciu SSH ?
(przykład na przykładzie hostingu wykupionego w nazwa.pl)

  1. Pobieramy Putty,

Konfiguracja Putty SSH

2. Uzupełniamy kolejno:
a) Host name – W nazwa.pl jest to adres naszego serwera,
b) Port – W moim przypadku 22 (numer portu dla swojego hostingu znajdziesz w dokumentacji serwera),
c) Connection type – Wybieramy SSH

3. Klikamy Open,

4. Zostaniemy poproszeni o login i hasło – wypełniamy je,

5. Jeżeli wypełniliśmy wszystko poprawnie naszym oczom powinna się pojawić powłoka basha,

Powłoka bash-a

6. Za pomocą dowolnego klienta FTP (filezilla/total commander/inne) wgrywamy plik sql do katalogu głównego naszej witryny.

7. Wracamy do Putty
Za pomocą komend:
cd nazwakatalogu – przechodzimy do poszczególnych katalogów,
cd .. – przechodzimy katalog wyżej,
ls -l – listujemy wszystkie pliki

8. Przechodzimy do właściwej procedury wgrywania bazy do phpMyAdmin-a
Składnia:

mysql -u nazwauserabazydanych -p nazwabazydanych < nazwaplikubazy.sql

Znaczek „<” oznacza import, „>” oznacza export.

Po wywołaniu powyższej komendy zostaniemy jeszcze poproszeni o wprowadzenie hasła do bazy danych.

Wgrywanie bazy przez SSH - komendy

Czas wczytywania bazy zależy od ustawień hostingu.

UWAGA ! Po skończonej procedurze, nie zapomnij usunąć pliku .sql z serwera !


bashbaza danychDirectAdminputtysshfilezillatotal commandersqlupload