Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: 2 bazy 2 serwery kopiowanie tabel pól
Forum PHP.pl > Forum > Bazy danych > MySQL
grzesio
Jak skopiować pole kwota z serwera A do serwera B, ....baza1.tabela1.kwota do baza2.tabela2.kwota, przy czym baza1 znajduje się na serwerze A natomiast baza2 znajduje się na serwerze B.
phpowiec84
export / import do pliku
grzesio
kopiowanie plikow mi nie odpowiada, - czasozabawa . Chodzi mi o to aby za jednym kilknieciem dane z serwera A powinny przepłynac na serwer B
uupah5
Cytat(grzesio)
Jak skopiować pole kwota z serwera A do serwera B, ....baza1.tabela1.kwota do baza2.tabela2.kwota, przy czym baza1 znajduje się na serwerze A natomiast baza2 znajduje się na serwerze B.

napisz więcej do jakich narzędzi chcesz się ograniczyć, bo to co napisałeś można wykonać na pierdyliard sposobów.
- kuriozalny: operator czyta rekord z bazy A i podaje go operatorowi bazy B, a ten wpisuje rekord do bazy
- zewnętrzny program sterujący (php, sh, python, java - cokolwiek) - połączenie z bazą A, odczytanie, połączenie z bazą B, zapisanie
- tylko mechanizmy mysql: będzie trochę zabawy, jeśli całość to replikacja, jeśli wskazany zakres danych to replikacja na pośrednią bazę C na serwerze B i trigery+procedury składowane
Adi32
$db1 - klasa do relacji z bazą danych 1
$db2 - klasa do relacji z bazą danych 2

  1. $db1->query("SELECT cos from cos");
  2. $result = $db->result();
  3.  
  4. $db2->query("INSERT INTO cos SET column='".$result['cos']."'");
grzesio
Cytat(Adi32 @ 1.07.2011, 19:24:47 ) *
$db1 - klasa do relacji z bazą danych 1
$db2 - klasa do relacji z bazą danych 2

  1. $db1->query("SELECT cos from cos");
  2. $result = $db->result();
  3.  
  4. $db2->query("INSERT INTO cos SET column='".$result['cos']."'");


Rozumiem że nalezy wyciągnąć dane i wsadzić je do do drugiej bazy. Czy są może inne sposoby, takie jak triggery, lub relacje, które wykonywałyby sama baza (bazy) automatycznie bez potrzeby zaprzęgania PHP ?
by_ikar
Replikacja, ale wtedy albo sam musisz mieć dostęp do pliku my.ini (plik ustawień mysql'a), albo musisz mieć serwer w firmie która taką możliwość udostępnia. Wtedy możesz sobie kopiować co chcesz, kiedy chcesz bez używania np php.

Oczywiście zawsze można napisać to tak jak kolega wyżej zaproponował, a dany plik podłączyć pod cron'a i niech sprawdza co minutę czy zaszły jakieś zmiany. Opóźnienie będzie, ale to będzie tylko minuta. Jak nie możesz zarówno używać crona, jak i replikacji, to pozostaje ci jedynie sposób o którym kolega wyżej napisał. Tiggery działają tylko dla bazy w której je dodasz.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.