Witam, dzisiaj przedstawię krótki poradnik przeznaczony głównie dla programistów i administratorów baz danych wykorzystujących bazę PostgreSQL pod Windows.
Czasami zachodzi potrzeba przeniesienia bazy danych w tym systemie DB do innej lokalizacji . Przyczyn może być wiele, a to kończące się miejsce na dysku, a to na przykład chęć przeniesienia naszej bazy na bardziej wydajny podsystem pamięci.
Aby wykonać przenosin bazy danych Postgresa na nowy dysk bezwzględnie trzeba zacząć od zatrzymania usługi serwera bazy danych . Operację tą wykonasz w Narzędziach administracyjnych->Usługi.
W tym momencie możemy przenieść całą lokalizację bazy danych na nowy dysk . W systemie Windows baza trzymana jest w folderze:
C:\Program Files\PostgreSQL\numer bazy\data\
W systemach 64 bitowych będzie to folder Program Files (x86).
Dopiero wtedy możemy wskazać na nową lokalizację. Dokonujemy tego w rejestrze systemu. A zatem klawisze Windows+R a następnie wpisujemy komendę regedit.
Należy odszukać klucz:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\pgsql-8.3
W nim znajdziesz wartość ImagePath, należy kliknąć na niej podwójnie aby dokonać zmiany drugiego członu na nową lokalizację
W moim przypadku zmieniłem dysk D na katalog zwykły dysku H
"D:\Program Files (x86)\PostgreSQL\8.3\bin\pg_ctl.exe" runservice -w -N "pgsql-8.3" -D "D:\Program Files (x86)\PostgreSQL\8.3\data\"
"D:\Program Files (x86)\PostgreSQL\8.3\bin\pg_ctl.exe" runservice -w -N "pgsql-8.3" -D "H:\PostgreSQL\8.3\data\"
Teraz wystarczy zmienić prawa dostępu do nowej lokalizacji, a zatem kliknij prawym przyciskiem na nowym folderze i wybierz Właściwości. Przejdź do zakładki Zabezpieczenia i kliknij pole SYSTEM, a następnie przycisk Edycja.
Znajdź Administratora i nadaj wszystkie prawa dostępu (Pełne)
Po wszystkim pozamykaj okna przyciskiem OK i zresetuj komputer co na nowo przeładuje rejestr i uruchomi usługę bazy danych.
Jeśli teraz wykonasz operację na bazie danych i sprawdzisz, że baza chodzi a pliki w nowej lokalizacji mają najnowszą datę modyfikacji to możesz być pewny, że baza działa prawidłowo, a stare pliki można skasować.
UWAGA!!! Operacje tutaj przedstawione wykonujesz na własną odpowiedzialność, nie ponosimy odpowiedzialności za wynikłe szkody. Zawsze wykonuj najpierw kopię swojej bazy aby uniknąć problemów.
Wszelkie prawa zastrzeżone!