Forum Użytkownikow Subiekt GT

InsERT GT => Subiekt GT => Wątek zaczęty przez: bodek_kocio w Kwiecień 25, 2014, 20:26:50

Tytuł: Przeniesienie bazy danych na inny dysk w tym samym komputerze
Wiadomość wysłana przez: bodek_kocio w Kwiecień 25, 2014, 20:26:50
Jak w tytule. Kupiłem nowy dysk SSH i przekopiowałem do niego cały folder SQL. Podłączenie  bazy danych z nowego folderu poprzez program serwisowy daje komunikat "podmiotu nie podłączono". Ze "starego" folderu działa podłączenie innych podmiotów. Archiwizacja również nie przynosi spodziewanego efektu, Kopiowanie  tak samo. Zmiana ścieżek dostępu w SQL Server Conf. Manager  powoduje zatrzymanie  serwera SQL (może nie wszystko zrobiłem jak należy ?). Przekopałem pół internetu i tego forum i nie znalazłem odpowiedzi. Jak zrobić przeniesienie bazy reinstalacji  programu?
Korzystam z Inserta 1.34 SP3 (Subiekt i Gestor).
Tytuł: Odp: Przeniesienie bazy danych na inny dysk w tym samym komputerze
Wiadomość wysłana przez: birds22 w Kwiecień 25, 2014, 20:31:10
1. Program serwisowy - odłącz podmiot
2. Przeniesienie plików bazy
3. Program serwisowy - podłącz podmiot
Tytuł: Odp: Przeniesienie bazy danych na inny dysk w tym samym komputerze
Wiadomość wysłana przez: bodek_kocio w Kwiecień 25, 2014, 20:34:39
Gdyby to było takie proste  to nie pisałbym.  Napisałem że nie można podłączyć  bazy na innym dysku niż w moim przypadku "D" , a nowy dysk to "H"
Tytuł: Odp: Przeniesienie bazy danych na inny dysk w tym samym komputerze
Wiadomość wysłana przez: birds22 w Kwiecień 25, 2014, 20:55:25
Uprawnienia ?

Spróbuj podłączyć za pomocą SSMS i zobacz jaki jest błąd.
Tytuł: Odp: Przeniesienie bazy danych na inny dysk w tym samym komputerze
Wiadomość wysłana przez: bodek_kocio w Kwiecień 26, 2014, 11:05:55
Jakąś podpowiedź? Słaby jestem w SQL...
Tytuł: Odp: Przeniesienie bazy danych na inny dysk w tym samym komputerze
Wiadomość wysłana przez: Aldo w Kwiecień 26, 2014, 11:46:12
Wydaje mi się, że błąd leży gdzie indziej. Pytającyna pisał, że przekopiował cały SQL na nowy dysk - przekopiował, a nie zainstalował na nowym dysku. W zwiazku z tym ten serwer jest nieaktywny i tyle. Serwer SQL trzeba na tym dysku zainstalować i dopiero przekopiować pliki baz danych. Wtedy bedzie aktywny i dadzą się podłaczyć.
Chyba, że serwer SQL ma pozostać na dysku c tak jak był. a same pliki baz danych przenieść na na nowy. Wtedy przy podłączaniu trzeba podać ścieżkę do plików na nowym dysku.
Tytuł: Odp: Przeniesienie bazy danych na inny dysk w tym samym komputerze
Wiadomość wysłana przez: birds22 w Kwiecień 26, 2014, 11:57:21
Jakby nie działał SQL Server to nie uruchomiłby programu serwisowego.


Mam nadzieję, że nie chcesz podłączyć bazy z innej lokalizacji wybierając nadając nazwę jak baza już podłączona?

SSMS to SQL Server Management Studio, tam możesz podłączyć bazę. Proponuję jednak przenieść pliki bazy do folderu np H:\Bazy\ , i ustawić uprawnienie takie jak na tych plikach pierwotnych.
Tytuł: Odp: Przeniesienie bazy danych na inny dysk w tym samym komputerze
Wiadomość wysłana przez: bodek_kocio w Kwiecień 26, 2014, 12:02:41
Czy nie da się korzystać z serwera który jest zainstalowany np. na dysku D: a baza danych na dysku H:? Jak zmienić ścieżki dostępu w serwerze SQL aby wskazywały na nową lokalizację  pliku (plików)? Czy Jednak jak przedmówca napisał wszystko musi być w jednej lokalizacji? Jak w takim razie "sklonować"  taki serwer na inny dysk?
Tytuł: Odp: Przeniesienie bazy danych na inny dysk w tym samym komputerze
Wiadomość wysłana przez: birds22 w Kwiecień 26, 2014, 12:05:21
Serwer śmiało może zostać na dysku D.

Tytuł: Odp: Przeniesienie bazy danych na inny dysk w tym samym komputerze
Wiadomość wysłana przez: bodek_kocio w Kwiecień 26, 2014, 12:12:37
Widzę że  "zielony jestem jak trawa na wiosnę". Birds o jakich uprawnieniach mówisz? Zmieniałem nazwy baz  i to w pierwotnych lokalizacjach jak i w nowej. Chyba że sama zmiana nazwy podczas podłączania nie ma większego znaczenia i trzeba zmienić nazwy plików? Próbowałem również na kilku bazach nie tylko tej  "głównej" ale na bazie testowej "nowy".  Na dysku d:/... /data/ podłącza się i odłącza każda baza, natomiast jak wskazuję te same pliki z dysku h:/.../data/... to otrzymuję komunikat jak na obrazku "baza nie została podłączona".  Serwer SQL działa jednak  wskazuje tylko na pliki w swoim katalogu D:/.../data/... .
Tytuł: Odp: Przeniesienie bazy danych na inny dysk w tym samym komputerze
Wiadomość wysłana przez: birds22 w Kwiecień 26, 2014, 12:19:54
Może lepiej poprosić jakiegoś informatyka?

Mówiąc o uprawnieniach, mam na myśli uprawnienia dostępu do plików bazy danych (właściwości pliku).

Nie chodzi mi o zmianę nazw plików bazy danych. W programie serwisowym podłączając bazy wskazujesz plik mdf i wpisujesz nazwę podmiotu (alias). I własnie ta nazwa nie może być taka jak już używana.
Tytuł: Odp: Przeniesienie bazy danych na inny dysk w tym samym komputerze
Wiadomość wysłana przez: Aldo w Kwiecień 26, 2014, 12:23:21
Przy starszych SQL taką operację dawało się wykonać bez problemu. Teraz próbuję na SQL 2008R2 i niestety żadnej bazy położonej w innej lokalizacji poza folderem serwera SQL nie daje się podłączyć. Nawet położonej w innym folderze na dysku C. Chyba jednak trzeba będzie zainstalować SQL na dysku H.
Tytuł: Odp: Przeniesienie bazy danych na inny dysk w tym samym komputerze
Wiadomość wysłana przez: birds22 w Kwiecień 26, 2014, 12:28:09
Ja własnie podłączyłem.
Tytuł: Odp: Przeniesienie bazy danych na inny dysk w tym samym komputerze
Wiadomość wysłana przez: bodek_kocio w Kwiecień 26, 2014, 12:30:15
O informatyku pomyślałem już. :) Ale  wymiękł ..., gdyż akurat całą sprawa zaczęła się od padniętego zasilacza w tym komputerze i jego wymianie w sklepie, gdzie zaproponowali mi dodatkowy dysk SSD. Chyba tylko serwisant Inserta  poradzi sobie z tym.  Aliasy zmieniałem i nie pomagało. O uprawnieniach plików też myślałem (pomyślałem teraz że  piszesz o jakiś innych o których nie wiem). Chociaż sprawdzę je jeszcze raz.  Widzę że najprostszym rozwiązaniem będzie odinstalowanie  całego Inserta i  ponowna jego instalacja  w nowej lokalizacji. Gdybym to od razu zrobił to po godzinie wszystko by "śmigało".  Widać nie jest to takie proste jakby mogło się wydawać.
Birds napisz jak to zrobiłes... Łopatologicznie proszę... :) Może z jakimis obrazkami?

Tytuł: Odp: Przeniesienie bazy danych na inny dysk w tym samym komputerze
Wiadomość wysłana przez: Aldo w Kwiecień 26, 2014, 12:33:52
Odinstalowanie Inserta nic Ci nie da, taką operację trzeba ew, zrobić na SQL.
Tytuł: Odp: Przeniesienie bazy danych na inny dysk w tym samym komputerze
Wiadomość wysłana przez: Aldo w Kwiecień 26, 2014, 12:34:36
Ja własnie podłączyłem.
Możesz podać szczegóły, bo ja ni cholery nie mogę.
Tytuł: Odp: Przeniesienie bazy danych na inny dysk w tym samym komputerze
Wiadomość wysłana przez: Biniew w Kwiecień 26, 2014, 12:36:09
nie myl oprogramowania Insert z Microsoft SQL Serverem
zobacz czy mozesz podlaczyc baze z innej lokalizacji z poziomu SQL Server Management Studio
Tytuł: Odp: Przeniesienie bazy danych na inny dysk w tym samym komputerze
Wiadomość wysłana przez: birds22 w Kwiecień 26, 2014, 12:45:16
W okolicy tylko jeden informatyk?

1. Odłączyłem plik podmiotu w programie serwisowym
2. Przeniosłem pliki podmiotu (podmiot.mdf, podmiot_log.ldf) do nowej lokalizacji (u mnie E:\Bazy\)
3. W każdym z plików zmieniłem uprawnienia dla Użytkownicy na pełny dostęp
4. Podłączyłem pliki w programie serwisowym.

Do tego chyba obrazków nie trzeba?


Środowisko:
SQL Server 2008R2 Express
Win8
Tytuł: Odp: Przeniesienie bazy danych na inny dysk w tym samym komputerze
Wiadomość wysłana przez: Aldo w Kwiecień 26, 2014, 12:52:10
Ja własnie podłączyłem.
Możesz podać szczegóły, bo ja ni cholery nie mogę.

Już wiem - wybrałem pliki podmiotu z archiwum i nie dość, że to stara baza, to jeszcze uszkodzona. Dlatego nie chciał podłaczyć.
Inne prawidłowe dają się bez problemu z dowolnej lokalizacji - ale lokalnej.
Tytuł: Odp: Przeniesienie bazy danych na inny dysk w tym samym komputerze
Wiadomość wysłana przez: bodek_kocio w Kwiecień 26, 2014, 13:10:25
bird jesteś wielki.
Wiem gdzie błąd zrobiłem. Uprawnienia sprawdzałem na folderze nie na plikach. Teraz zrobiłem na plikach i działa. Dziekuję bardzo wszystkim aktywnym...
Tytuł: Odp: Przeniesienie bazy danych na inny dysk w tym samym komputerze
Wiadomość wysłana przez: browarnicy w Czerwiec 02, 2020, 15:57:21
Pozwolę sobie odświeżyć temat...

Przeniosłem swoją bazę danych na inny dysk (brak miejsca na systemowym) i wszystko śmiga OK. Jednak przy aktualizacji oprogramowania, gdy robi aktualizację bazy to zaktualizowana jest w nowej lokalizacji, a kopia starej bazy tworzy się w starej lokalizacji na dysku systemowym. Nigdzie nie mogę znaleźć, gdzie podmienić lokalizacje kopii starej bazy by tworzyła się także w aktualnej nowej lokalizacji. Niby mały problem, ale jak baza ma 23GB to po paru aktualizacjach robi się brak miejsca na dysku systemowym. Co aktualizacja muszę odpinać i przenosić kopię w inne miejsce.

Może ktoś pomóc?
Tytuł: Odp: Przeniesienie bazy danych na inny dysk w tym samym komputerze
Wiadomość wysłana przez: dkozlowski w Czerwiec 02, 2020, 15:58:58
Problem znany i stary jak GT - należy na nowo zainstalować serwer SQL w oczekiwanej lokalizacji.
Tytuł: Odp: Przeniesienie bazy danych na inny dysk w tym samym komputerze
Wiadomość wysłana przez: Artwi w Czerwiec 03, 2020, 17:02:45
Przeniosłem swoją bazę danych na inny dysk (brak miejsca na systemowym) i wszystko śmiga OK. Jednak przy aktualizacji oprogramowania, gdy robi aktualizację bazy to zaktualizowana jest w nowej lokalizacji, a kopia starej bazy tworzy się w starej lokalizacji na dysku systemowym. Nigdzie nie mogę znaleźć, gdzie podmienić lokalizacje kopii starej bazy by tworzyła się także w aktualnej nowej lokalizacji. Niby mały problem, ale jak baza ma 23GB to po paru aktualizacjach robi się brak miejsca na dysku systemowym. Co aktualizacja muszę odpinać i przenosić kopię w inne miejsce.
Może ktoś pomóc?

A zobacz Sobie co masz we właściwościach Files tych baz danych jako ścieżki do plików (np. za pomocą SSMS) - czy są prawidłowe? Bo zwykłe odtwarzanie kopii z innej lokalizacji w nowej lokalizacji bez opcji "relocate all files to folder" czy jakoś tak (a pakiet InsERTa to robi chyba bez tej opcji) zostawia stare ścieżki i może dlatego kopia tworzy Ci się w starej lokalizacji?
Tytuł: Odp: Przeniesienie bazy danych na inny dysk w tym samym komputerze
Wiadomość wysłana przez: dkozlowski w Czerwiec 03, 2020, 17:34:13
Jak napisałem to dobrze znany problem, pakiet Insertu nie odczytuje lokalizacji plików z konfiguracji serwera SQL tylko tworzy je na podstawie folderu instalacyjnego.
Tytuł: Odp: Przeniesienie bazy danych na inny dysk w tym samym komputerze
Wiadomość wysłana przez: Artwi w Czerwiec 04, 2020, 09:56:32
Jak napisałem to dobrze znany problem, pakiet Insertu nie odczytuje lokalizacji plików z konfiguracji serwera SQL tylko tworzy je na podstawie folderu instalacyjnego.
To dziwne. Gdy przeniosłem (bez reinstalacji pakietu) bazy na serwer linuksowy, to kopie robił w dobrym miejscu. Choć i tak trzeba je było poprawiać, bo InsERT GT psuje w nich przedmiotowe ścieżki (wstawia /\ w miejsce /) i pomija rozszerzenia nazw plików. Ale może dlatego robi w dobrym miejscu, że zostawiłem domyślne ustawienia na serwerze.
Tytuł: Odp: Przeniesienie bazy danych na inny dysk w tym samym komputerze
Wiadomość wysłana przez: dkozlowski w Czerwiec 04, 2020, 11:04:04
Jak napisałem to dobrze znany problem, pakiet Insertu nie odczytuje lokalizacji plików z konfiguracji serwera SQL tylko tworzy je na podstawie folderu instalacyjnego.
To dziwne. Gdy przeniosłem (bez reinstalacji pakietu) bazy na serwer linuksowy, to kopie robił w dobrym miejscu. Choć i tak trzeba je było poprawiać, bo InsERT GT psuje w nich przedmiotowe ścieżki (wstawia /\ w miejsce /) i pomija rozszerzenia nazw plików. Ale może dlatego robi w dobrym miejscu, że zostawiłem domyślne ustawienia na serwerze.

Nie odniosę się do zachowania programu z serwerem SQL na linuksie, gdyż nie mam doświadczeń w tym obszarze.
Tytuł: Odp: Przeniesienie bazy danych na inny dysk w tym samym komputerze
Wiadomość wysłana przez: Artwi w Czerwiec 04, 2020, 11:23:47
Nie odniosę się do zachowania programu z serwerem SQL na linuksie, gdyż nie mam doświadczeń w tym obszarze.

Działa prawie dobrze (to prawie osobom nieobeznanym może robić poważny problem), powiedziałbym wydajniej niż na Windows. Robi tylko następujące numery: przy aktualizacji we właściwościach w kopiach baz psuje ścieżki plików wstawiając /\ zamiast / i nie daje rozszerzeń plików - co dziwne i InsERT i MS SQL z takimi ścieżkami i nazwami plików działają... InsERT dopiero wywala się na tym przy próbie aktualizacji baz z tak skopanymi ścieżkami we właściwościach. Po ręcznym poprawieniu tego jest OK. I do tego trzema mieć SSMS 18.5, bo wcześniejsze też nie radzą sobie z kierunkiem ukośników...

Przy aktualizacji na linuksowym serwerze nie czyści katalogu tymczasowego z kopii baz - też trzeba kasować ręcznie by nie zapchać dysku.

Reszta jest OK: jeśli katalog roboczy do wykonywania backupów narzędziem InsERTa ustawi się jako udział samby tak samo widziany przez Windowsowych klientów i serwer linuksowy. Ale jak ktoś tego nie używa do robienia backupów to nawet nie musi tego ustawiać.