Witam !
mam dwie bazy lms i dwa serwery(www.lmsd itd) to obsługujące. Chciałbym zlikwidować jeden z nich(likwidacja sprzętu) i całość przenieść do jednej bazy
Czy któryś z Panów próbował ? Może kto opracował jakiś skrypt transferu danych z jednej bazy do drugiej z automagicznym poprawieniem wszystkich id(sprzętu, komputerów, klientów, taryf, faktur itp) Wiadomo, że mnóstwo rzeczy się pokrywa i im więcej o tym myślę, tym to bardziej na robotę saperską wygląda.
Oczywiście pierwsza sprawa, to przygotowanie strony sieciowej(adresy ip itp)
Czy któryś z Panów próbował ? Może kto opracował jakiś skrypt transferu danych z jednej bazy do
Ja kilkukrotnie cos takiego robiłem. Nie przenosiłem co prawda 100% danych ale spora wiekszosc. Rozwiazanie jest dosc banalne. Robisz zrzut bazy do sql'a a do indeksów(kluczy) dodajesz wartość id największego rekordu z bazy docelowej. I tak z kazda tablela dbajac o to aby wszystkie klucze odpowiednio powiekszyc. Po zaimportowaniu nic ci sie nie bedzie nakladac.
W dniu 2012-10-01 16:05, Jarosław Czarniak pisze:
Czy któryś z Panów próbował ? Może kto opracował jakiś skrypt transferu danych z jednej bazy do
Ja kilkukrotnie cos takiego robiłem. Nie przenosiłem co prawda 100% danych ale spora wiekszosc. Rozwiazanie jest dosc banalne. Robisz zrzut bazy do sql'a a do indeksów(kluczy) dodajesz wartość id największego rekordu z bazy docelowej. I tak z kazda tablela dbajac o to aby wszystkie klucze odpowiednio powiekszyc. Po zaimportowaniu nic ci sie nie bedzie nakladac.
Ja mam inne rozwiązanie (hipotetyczne). Dodać liczbowy prefix do pol id i nazw komputerow (one tez maja być unikalne). Zabawy jest dużo to na pewno :/
Dnia 2012-10-02, wto o godzinie 08:24 +0200, Waldemar Dymkiewicz pisze:
W dniu 2012-10-01 16:05, Jarosław Czarniak pisze:
Czy któryś z Panów próbował ? Może kto opracował jakiś skrypt transferu danych z jednej bazy do
Ja kilkukrotnie cos takiego robiłem. Nie przenosiłem co prawda 100% danych ale spora wiekszosc. Rozwiazanie jest dosc banalne. Robisz zrzut bazy do sql'a a do indeksów(kluczy) dodajesz wartość id największego rekordu z bazy docelowej. I tak z kazda tablela dbajac o to aby wszystkie klucze odpowiednio powiekszyc. Po zaimportowaniu nic ci sie nie bedzie nakladac.
Ja mam inne rozwiązanie (hipotetyczne). Dodać liczbowy prefix do pol id i nazw komputerow (one tez maja być unikalne). Zabawy jest dużo to na pewno :/
1 - musisz znaleźć relacje między tabelami, to jest bardzo ważne żebyś wiedział co i jak masz robić
2 - ważna jest też kolejność scalania tabel, nie może być to sobie jak leci bo będziesz miał cyrk
3 - ważne też jest aby struktura, obie bazy muszą mieć taką samą (będzie potem łatwiej), no chyba że nie będziesz przenosił wszystkich danych i lubisz pisać długie zapytania SQL
4 - skrypt np. w php (dla shell) który to ładnie połączy, tabela po tabeli pamiętając o relacjach, pilnuj Nowych id żeby tam gdzie trzeba były prawidłowo powstawiane.
miłej zabawy , dzbanka kawy, i dużo cierpliwości :D
W dniu 1 października 2012 16:05 użytkownik Jarosław Czarniak jaroslaw@czarniak.org napisał:
Czy któryś z Panów próbował ? Może kto opracował jakiś skrypt transferu danych z jednej bazy do
Ja kilkukrotnie cos takiego robiłem. Nie przenosiłem co prawda 100% danych ale spora wiekszosc. Rozwiazanie jest dosc banalne. Robisz zrzut bazy do sql'a a do indeksów(kluczy) dodajesz wartość id największego rekordu z bazy docelowej. I tak z kazda tablela dbajac o to aby wszystkie klucze odpowiednio powiekszyc. Po zaimportowaniu nic ci sie nie bedzie nakladac.
Ja też coś takiego robiłem, ważne by obie bazy były w tej samej wersji. Przeniosłem wszystko łącznie z urządzeniami sieciowymi - klientom i nodom powiększyłem ID o 1000, a urządzeniem chyba o 100, tak by się nic nie nakładało. Błędów nie unikniesz, dlatego scaloną bazę rób jako nową.
pozdrawiam Grzegorz Cichowski
czy podpowie ktos co trzeba zmienic zebym mogl edytowac faktury rozliczone, wersja lms`a git
W dniu 02.10.2012 21:54, JOYNET pisze:
czy podpowie ktos co trzeba zmienic zebym mogl edytowac faktury rozliczone, wersja lms`a git
Kurde w tym wątku - NIE
pozdrawiam Paweł Rohde
PS. napisz o swoim problemie może ktoś się zainteresuje - JAKO NOWY WĄTEK, cholera co to jest dziecko neostrady jako administrator?
W dniu 02.10.2012 21:54, JOYNET pisze: czy podpowie ktos co trzeba zmienic zebym mogl edytowac faktury rozliczone, wersja lms`a git
Kurde w tym wątku - NIE
pozdrawiam Paweł Rohde
PS. napisz o swoim problemie może ktoś się zainteresuje - JAKO NOWY WĄTEK, cholera co to jest dziecko neostrady jako administrator?
lms mailing list lms@lists.lms.org.pl http://lists.lms.org.pl/mailman/listinfo/lms
sory, z czystego lenistwa zmienilem tylko temat watku oraz wywalilem tresc, nie sadzilem ze ktos bedzie zagladal do naglowka
ps wybacz ojcze administratorze (piszacy pewnie z komercyjnej prywatnej sieci) ze osmielilem sie napisac maila bedac wpiety w neostrade...
W dniu 2012-10-03 09:02, JOYNET pisze:
W dniu 02.10.2012 21:54, JOYNET pisze: czy podpowie ktos co trzeba zmienic zebym mogl edytowac faktury rozliczone, wersja lms`a git
Kurde w tym wątku - NIE
pozdrawiam Paweł Rohde
PS. napisz o swoim problemie może ktoś się zainteresuje - JAKO NOWY WĄTEK, cholera co to jest dziecko neostrady jako administrator?
sory, z czystego lenistwa zmienilem tylko temat watku oraz wywalilem tresc, nie sadzilem ze ktos bedzie zagladal do naglowka
Do nagłówka zaglądają nasze klienty poczty elektronowej i podpinają Twą wiadomość do wątku w którym dałeś odpowiedz, jak sam piszesz: "z czystego lenistwa zmienilem tylko temat watku oraz wywalilem tresc". Nikt tu nie jest mastachem i nie zagląda do nagłówka od tak.
ps wybacz ojcze administratorze (piszacy pewnie z komercyjnej prywatnej sieci) ze osmielilem sie napisac maila bedac wpiety w neostrade...
PS. sygnaturki się wycina w odpowiedziach!
W dniu 2012-10-03 09:02, JOYNET pisze:
W dniu 02.10.2012 21:54, JOYNET pisze: czy podpowie ktos co trzeba zmienic zebym mogl edytowac faktury rozliczone, wersja lms`a git
Kurde w tym wątku - NIE
pozdrawiam Paweł Rohde
PS. napisz o swoim problemie może ktoś się zainteresuje - JAKO NOWY WĄTEK, cholera co to jest dziecko neostrady jako administrator?
sory, z czystego lenistwa zmienilem tylko temat watku oraz wywalilem tresc, nie sadzilem ze ktos bedzie zagladal do naglowka
ps wybacz ojcze administratorze (piszacy pewnie z komercyjnej prywatnej sieci) ze osmielilem sie napisac maila bedac wpiety w neostrade...
Jak już opadnie Twa furia to zwróć proszę uwagę, że co poniektórzy (w tym niżej podpisany) używają czytnika poczty z opcją grupowania wiadomości w wątki...
W dniu 13.08.2012 16:07, Zbigniew Kujawski pisze:
Witam !
mam dwie bazy lms i dwa serwery(www.lmsd itd) to obsługujące. Chciałbym zlikwidować jeden z nich(likwidacja sprzętu) i całość przenieść do jednej bazy
Czy któryś z Panów próbował ? Może kto opracował jakiś skrypt transferu danych z jednej bazy do drugiej z automagicznym poprawieniem wszystkich id(sprzętu, komputerów, klientów, taryf, faktur itp) Wiadomo, że mnóstwo rzeczy się pokrywa i im więcej o tym myślę, tym to bardziej na robotę saperską wygląda.
Oczywiście pierwsza sprawa, to przygotowanie strony sieciowej(adresy ip itp)
Wykonywałem scalanie różnych baz danych z różnymi danymi.
Najfajniejsza praca przy której brałem udział do scalenie 47 baz terenowych Bahlsena (dziś The Lorenz Snack) do centralnej bazy.
Przy każdym scaleniu bazy ważny jest scenariusz prac i określenie zakresu przenoszonych danych oraz wzajemnych relacji.
W przypadku dobrze napisanej bazy można by użyć triggerów i procedur składowanych, które by przygotowały bazę źródłową do przeniesienia rekordów 1-1 - np odpalenia update na klientach, a konkretnie na ID klienta, który to by zrobił kaskadowy update reszty bazy. Następnie można by przepisać dane powiązane do nowej bazy bacząc by w bazie docelowej klucze autoincrement pozostawić sobie.
potem trzeba napisać "grzebaczkę", która krok po kroku przepisze klientów i powiązane dane do bazy docelowej.
W 2007 roku robiłem migrację danych z MMS (KLON TFU...TFU LMS) do LMS'a niestety MySQL był wtedy w stadium zmiany pieluchy i trzeba było w PHP wszystko wyprogramować. Jednak nawet pomijając ograniczenia bazy da się, zależy to tylko od ciebie i scenariusza przenoszenia danych - czyli: 1. co chcesz przenieść 2. jak zapewnić unikalność kluczy 3. jakie są powiązania między tymi kluczami w bazie źródłowej 4. przenumerować identyfikatory w bazie źródłowej lub zapamiętać dane w tabeli podręcznej 5. przepisać dane z bazy źródłowej do bazy docelowej w oparciu o tabelę renumeracji rekordów
Jednak rozwiązań może być wiele :) wszystko zależy od DOBREGO I PRZEMYŚLANEGO PLANU!!!
pozdrawiam Paweł Rohde
uczestnicy (8)
-
GC
-
Jarosław Czarniak
-
JOYNET
-
Paweł Rohde
-
Sarenka
-
Sylwester Kondracki
-
Waldemar Dymkiewicz
-
Zbigniew Kujawski