Zdalna baza danych

0

Cześć,
pisze z kolegą aplikacje i utworzyliśmy na jednym komputerze na localhost bazę danych mySQL. Chcielibyśmy teraz zarządzać tą bazą z dwóch różnych komputerów. Czy najlepszą (albo jedyną) opcją jest teraz wykupienie konta hostingowego np na smarthost i zarządzanie nią przez cPanel? Jeśli tak to czy jest jakaś możliwość by stworzoną juz lokalnie bazę danych przetransportować do tej zdalnej utworzonej w cPanelu?

1

A nie da sie tam wgrać normalnie baz y z backupa - robisz lokalnie backupa a potem tam wgrywasz z pliku. Nie wiem, czy jakieś narzędzie do mySQLa to wspiera, ale możesz też wygenerować skrypty SQL, z których odtworzysz bazę w miejscu docelowym.

0
Tomek Pycia napisał(a):

A nie da sie tam wgrać normalnie baz y z backupa - robisz lokalnie backupa a potem tam wgrywasz z pliku. Nie wiem, czy jakieś narzędzie do mySQLa to wspiera, ale możesz też wygenerować skrypty SQL, z których odtworzysz bazę w miejscu docelowym.

Tak ale chcieliśmy wspólny projekt rozwijać przez co dana baza będzie jeszcze na pewno nie raz modyfikowana, dodawane będą nowe dane lub zmieniana będzie struktura table. Takie rozwiązanie pozwoli jedynie na czytanie tego co już jest

2

Jeśli chodzi tylko o zarządzanie, to (zakładając, że drugi komputer ma łączność z pierwszym) po prostu podajesz odpowiednie dane dostępowe (adres, port, login, hasło) w ustawieniach managera odpalonego na drugiej maszynie, albo np. w swojej aplikacji zamiast localhost podajesz namiary na drugiego kompa.

Możesz tez postawić na tej pierwszej maszynie coś w stylu https://www.phpmyadmin.net/ i w ten sposób umożliwić zarządzanie bazą z dowolnego innego komputera.

Co do przenoszenia bazy - nieistotne jest to, jak ją stworzyłeś (czy ręcznie, automatycznie przez jakieś narzędzie, czy w ramach swojej aplikacji), jest możliwość przeniesienia. Jest o tym wiele informacji w necie - chociażby http://webmade.org/porady/phpmyadmin-przenoszenie-import-eksport-bazy-danych-mysql.php | https://forum.lvlup.pro/t/jak-przerzucic-cala-baze-mysql-na-inny-vps/801 czy https://www.digitalocean.com/community/tutorials/how-to-migrate-a-mysql-database-between-two-servers. Ważne tylko, żeby wersje MySQL były podobne/takie same, bo w przypadku mocnych rozbieżności mogą się pojawić problemy.

1

No to róbcie wszystko "po bozemy" i róbcie skrypty tak, żeby wszyscy mogli sobie bazę uzgodnić i nie dłubcie struktury kązdy sobie.

0
Tomek Pycia napisał(a):

No to róbcie wszystko "po bozemy" i róbcie skrypty tak, żeby wszyscy mogli sobie bazę uzgodnić i nie dłubcie struktury kązdy sobie.

Jasne, zgodzę się ale i tak Twoje rozwiązanie chyba będzie problemem w momencie w którym dodamy po prostu coś do tej bazy. Dajmy na to kolega doda nowego użytkownika aplikacji, czy wtedy pojawi się to automatycznie też u mnie?

0
cerrato napisał(a):

Jeśli chodzi tylko o zarządzanie, to (zakładając, że drugi komputer ma łączność z pierwszym) po prostu podajesz odpowiednie dane dostępowe (adres, port, login, hasło) w ustawieniach managera odpalonego na drugiej maszynie, albo np. w swojej aplikacji zamiast localhost podajesz namiary na drugiego kompa.

"zakładając, że drugi komputer ma łączność z pierwszym", tzn?

2

"zakładając, że drugi komputer ma łączność z pierwszym", tzn?

To znaczy, że albo są w jednej podsieci, albo jest to jakoś inaczej zrealizowane tak, żeby można było się połączyć z bazą z zewnątrz - czy wystawienie jej na zewnętrzny IP, czy chociażby przekierowanie portów.

3
Tomek Pycia napisał(a):

No to róbcie wszystko "po bozemy" i róbcie skrypty tak, żeby wszyscy mogli sobie bazę uzgodnić i nie dłubcie struktury kązdy sobie.

Dokładnie, skoro piszą aplikację we 2, to zapewne używają jakiegoś systemu kontroli wersji. Jaki problem trzymać skrypty tuż obok kodu źródłowego? Idąc dalej, można sobie napisać małe narzędzie, które automatycznie aktualizuje bazę danych do odpowiedniej wersji po pobraniu nowej wersji źródeł z GIT'a. Podczas uruchomienia aplikacji sprawdzana jest wersja bazy i automatycznie aplikowane brakujące skrypty.

0
cerrato napisał(a):

Możesz tez postawić na tej pierwszej maszynie coś w stylu https://www.phpmyadmin.net/ i w ten sposób umożliwić zarządzanie bazą z dowolnego innego komputera.

Czyli masz tu na mysli xampp i czy ten serwer nie działa tylko lokalnie?

0

Nie mam na myśli niczego konkretnego, ale (praktycznie) każdy serwer SQL czy WWW daje możliwość podpięcia się do niego "z zewnątrz", czyli z innej maszyny.

Rzuć okiem tutaj - https://www.google.com/search?client=firefox-b-d&ei=6Dd2XaCAOaWorgSyub6wCA&q=xampp+remote+access&oq=xampp+remote+access

1 użytkowników online, w tym zalogowanych: 0, gości: 1