Elektroda.pl
Elektroda.pl
X
Servizza
Proszę, dodaj wyjątek www.elektroda.pl do Adblock.
Dzięki temu, że oglądasz reklamy, wspierasz portal i użytkowników.

Postgresql - Przeniesienie bazy na serwer online

Pawel1924 11 Kwi 2015 09:39 717 3
  • #1 11 Kwi 2015 09:39
    Pawel1924
    Poziom 20  

    Witam, mam na laptopie w pgadminie zrobioną bazę danych. Wszystko działa a baza jest wypełniona danymi.

    Założyłem konto na jednym z darmowych hostingów z obsługą postgresa, ja u siebie mam wersję 9.xxx a na serwerze jest 8.xxx jeżeli ma znaczenie dokładna wersja to podam.

    Zrobiłem kopię bazy danych przez pgadmina i gdy próbuję wgrać na serwer online to cały czas mam jakieś błędy typu:

    Kod: sql
    Zaloguj się, aby zobaczyć kod


    Jeżeli przywracam bazę na swoim komputerze to działa.


    Czy da się jakoś wyciągnąć inserty z bazy????

    Bo samą bazę to mogę pojedynczo tabelami wstawić, ale co z danymi które są w bazie...[/code]

    0 3
  • Servizza
  • #2 11 Kwi 2015 11:50
    marcinj12
    Poziom 40  

    Wydaje mi się, że pomiędzy wersją 8 i 9 miałem jakieś problemy przy kopiowaniu bazy, ale już nie pamiętam... :)

    W każdym razie spróbuj tak, jak ja zawsze robię:
    W bazie źródłowej:
    - klikasz prawym bazę->Tworzenie kopii zapasowej.
    - wybierasz jakiś plik do zapisu i KONIECZNIE wybierasz format Użytkownika. W wersji 9 już chyba jest OK, ale w wersji 8 to pole domyślnie było puste i był problem z zaimportowaniem takiej bazy. Wyeksportuj dane. Procedura powinna zakończyć się kodem 0. Jak masz inny, tzn. że wystąpił błąd.

    Na serwerze:
    - utwórz ręcznie bazę o takiej samej nawie i kodowaniu, jak baza źródłowa.
    - w "Zarejestrowanych rolach" odtwórz takich samych użytkowników (i hasła), jak wykorzystujesz w źródłowej bazie.
    - klikasz bazę prawym->Przywróć
    - wskazujesz ścieżkę do pliku z kopią i klikasz Przywróć. Ponownie powinieneś uzyskać kod wyjściowy 0. Jeśli jest inny - przeanalizuj komunikaty, popraw błąd, na wszelki wypadek skasuj bazę i powtórz procedurę od nowa.

    To jest wersja prosta. O ile dobrze pamiętam, to raz mi to nie zadziałało - być może właśnie przy próbie kopiowania z 9 na 8 i rzeźbiłem ręcznie. Ale sprawdź najpierw tą normalną procedurę i pochwal się wynikiem :)

    0
  • Servizza
  • #3 11 Kwi 2015 14:27
    Pawel1924
    Poziom 20  

    Bazę mam na heliohost.org

    Nie mogę utworzyć bazy o takiej samej nazwie jak na komputerze, ponieważ tam baza i użytkownik muszą mieć przedrostek np.

    szkola_'jakas nazwa' = nazwa bazy
    szkola_'jakas nazwa1' = nazwa uzytkownika

    Nie mogę sobie założyć bazy o nazwie z jednego słowa np. szkola.

    Druga rzecz to mam dostęp do phppgAdmina ale tylko przez www nie ma nigdzie opcji przywróć bazę danych. Więc wchodzę w opcję SQL i przy zapytaniu opcja wczytania zapytania z pliku i tak wczytuję kopie mojej bazy.

    Może dlatego nie chce to działać, a ja potrzebuję wygenerować jakoś kod bazy i danych do niej wrzuconych.

    0
  • #4 11 Kwi 2015 15:25
    marcinj12
    Poziom 40  

    Z tą nazwą bazy to w sumie nie przeszkadza, możesz przywrócić kopię pod dowolną nazwą. Z użytkownikiem już niekoniecznie, to pewne utrudnienie...
    W każdym razie spróbuj podłączyć się pgAdminem do serwera. Wg informacji z ich strony:

    Cytat:
    Use a tool like pgAdmin III to manage your postgres databases. To connect to your account with a PC program, use stevie.heliohost.org as the host, and your cpanel username and password for the credentials.

    Jeżeli się uda, zrób tak, jak opisałem.

    Jak potrzebujesz samego kodu SQL, wyeksportuj bazę w formacie Zwykły, a w Opcje Dump #2 zaznacz "Użyj poleceń wstawiania", jak chcesz to też "Zawrzeć instrukcję create database". W pliku będziesz miał wtedy zwykłe polecenia SQL.

    0