Skocz do zawartości
kane

Jak Wgrać Kopie Bazy Danych Przez Ssh

Polecane posty

Witam,

 

Od razu mówie że jestem laikiem jesli chodzi o ssh lecz podstawy znam chodzi mi o to jak mozna wgrać kopie bazy danych przez ssh a nie phpMyAdmina.

 

Z góry dziekuje za odpowiedz

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

bellerofont, a da się ustawić kodowanie znaków wgrywając przez ssh bazę;)? Mam na mysli wgrywanie takie aby nie było krzaków ;)

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

Nie wiem chyba cos źl robie weszłem przez ssh do katalogu public_html gdzie mam plik z bazą i wpisałem jak poniżej

 

nazwabazydanych -u użytkownikbazydanych -p haslodobazy < nazwaplikuzbazą.sql

 

Enter i nic komunikat command not found

 

Proszę o pomoc

Udostępnij ten post


Link to postu
Udostępnij na innych stronach
mysql -u użytkownik -p hasło baza < dump.sql ;)
Nie wiem chyba cos źl robie weszłem przez ssh do katalogu public_html gdzie mam plik z bazą i wpisałem jak poniżej

 

nazwabazydanych -u użytkownikbazydanych -p haslodobazy < nazwaplikuzbazą.sql

 

Enter i nic komunikat command not found

 

Proszę o pomoc

Nie wiem jak trudne moze byc przepisanie jednej linijki?

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

kane, wpisz tak:

 

mysql -u nazwa_uzytkownika -D nazwa_bazy -p < nazwa_kopi.sql

 

U mnie działa ;)

 

Dokumentacja prawdę ci powie. Jest pełno przykładów. Zresztą w google też.

na google szukałem i w sumie nie znalazłem nic konkretnego dotyczącego kodowania podczas wgrywania bazy przez ssh ;)

Udostępnij ten post


Link to postu
Udostępnij na innych stronach
bellerofont, a da się ustawić kodowanie znaków wgrywając przez ssh bazę;)?

szczerze? raczej nic Ci to nie da...

zobacz, że jakiekolwiek switche z linii komend informują jedynie silnik bazodanowy

w jakim formacie podajesz dane, ew. w jakim formacie chcesz je wyeksportować...

tak jest w mySQL 4.1... czy w linii 5.0/5.1/5.2 się to jakoś zmieniło, tego nie wiem...

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

Osobiście robię to w ten sposób:

- otwieram bazę danych (nawet która ma kilkaset MB) w edytorze tekstu (linux), automatycznie podmieniam wszystkie krzaki na polskie znaki, zapisuje bazę jako nowy plik, wgrywam na serwer i wszystko gra.

 

Zawsze takowa operacja kończyła się sukcesem.

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

@Adrian - tzn. Jak "automatycznie podmieniasz na PL znaki" ?

 

 

Wyczytałem (ale nie sprawdzałem) o takim dodawaniu bazy danych:

 

łączysz sie przez konsolkę do mysql

use your_database_name;

source db/baza.sql;

Udostępnij ten post


Link to postu
Udostępnij na innych stronach
@Adrian - tzn. Jak "automatycznie podmieniasz na PL znaki" ?

Własne skrypty.

Zastanawiam się nad wprowadzeniem takiego bajeru do naszego autorskiego panelu administracyjnego, choć nie wiem czy to jest dobry pomysł lub dostępna będzie dopiero po opłaceniu serwera.

Udostępnij ten post


Link to postu
Udostępnij na innych stronach
@Adrian - tzn. Jak "automatycznie podmieniasz na PL znaki" ?
man 1 sed

Udostępnij ten post


Link to postu
Udostępnij na innych stronach
bellerofont, a da się ustawić kodowanie znaków wgrywając przez ssh bazę :) ? Mam na mysli wgrywanie takie aby nie było krzaków ;)
Jeśli by zajrzeć do dumpa bazy danych MySQL znajdziesz taką oto linijkę:
/*!40101 SET NAMES utf8 */;
Jest to deklaracja w jakim kodowaniu jest zapisany ten konkretny plik i podczas ładowania bazy ta informacja jest interpretowana przez klienta mysql.

 

Inna sytuacja to taka, kiedy aplikacja pisała po bazie krzaczkami (zamiast "oficjalnie" wysyłać utf-8), wtedy rzeczywiście odpowiedni skrypt sed musi być użyty do korekty znaczków PL.

Udostępnij ten post


Link to postu
Udostępnij na innych stronach
- otwieram bazę danych (nawet która ma kilkaset MB) w edytorze tekstu (linux), automatycznie podmieniam wszystkie krzaki na polskie znaki, zapisuje bazę jako nowy plik, wgrywam na serwer i wszystko gra.

Zawsze takowa operacja kończyła się sukcesem.

Jest jeden warunek, jeżeli jakieś dane w bazie są serializowane to musi być zgodność kodowania pomiędzy oryginalnymi danymi a tymi, które podmieniasz. Dokładnie chodzi to o kodowanie UTF-8 gdzie PL znaczki są kodowane dwubajtowo a ISO gdzie wszystko kodowane są jednobajtowo. Jeżeli serializowane dane pierwotnie były UTF, a Ty podmienisz na ISO, to potem się poprawnie nie unserializują.

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

Bądź aktywny! Zaloguj się lub utwórz konto

Tylko zarejestrowani użytkownicy mogą komentować zawartość tej strony

Utwórz konto

Zarejestruj nowe konto, to proste!

Zarejestruj nowe konto

Zaloguj się

Posiadasz własne konto? Użyj go!

Zaloguj się


×