Migracja Płatnika z bazy Access mdb do bazy MS SQL
Migracja Patnika z bazy Access mdb do bazy MS SQL.
Czy migracja się opłaca tak przy bazie której wielkość przekracza 100 MB baza Płatnika .mdb zaczyna pracować wolno pokazują się błędy, w bazie może pracować tylko jedna osoba. Po migracji program przyspiesza, ponownie zaczyna działać wielodostęp.
Proces dość prosty aczkolwiek pojawia się kilka problemów które trzeba rozwiązać.
Migracja Płatnika z bazy mdb do MSSQL musi zostać wykonana na systemie 32 bitowym oraz na MS SQL w wersji 2005. Jeżeli nie posiadasz odpowiedniego środowiska zacznij od jego wykreowania.
Najlepiej by na serwerze była zainstalowana baza MSSQL oraz Płatnik ułatwi to migrację.
Błędy jednym z błędów jest brak uprawnień do bazy MDB przez serwer SQL podczas migracji należy wybrać autoryzację przez system Windows
OLE DB provider "Microsoft.Jet.OLEDB.4.0" for linked server "(null)" returned massage "Bd dysku lub sieci"
OLE DB provider 'Microsoft.Jet.OLEDB.4.0' cannot be used for distibuted queries because the provider is configured to run in single-threaded apartment mode
Error2
SQL Server blocked access to STATEMENT OpenRowset/OpenDatasource of component Ad Hoc Distributed Queries because this component is turned off as part of the security configuration for this server. A system administrator can enable the use of Ad Hoc Distributed Queries by using sp_configure. For more information about enabling Ad Hoc Distributed Queries, see Surface Area Configuration in SQL Server Books Online.
Rozwiązanie
Problem polega na tym, że do konwersji potrzebne są usługi które są wyłączone w domyślnej instalacji MS SQL a Płatnik potrzebuje tych usług do wykonania migracji.
Jak włączyć tą usługę?
Aby uruchomić usługę SQL “adhoc Queries” korzystamy z programu konfiguracyjnego SQL server 2005 tj. “surface Area Configuration”. Link do programu jest w poniższej ścieżce:
Start ->Programs ->Microsoft SQL Server 2005 -> Configuration tools
2. Po uruchomieniu konfiguratora wybieramy “Surface area configuration for features”.
UWAGA! Jeżeli posiadasz więcej instancji na danym serwerze sprawdź czy wybrałeś odpowiednią.
3. Wybieramy właściwą instancję serwera SQL, jeżeli jest jedna program sam wybierze odpowiednią, a następnie wybierz usługę tj. “Ad Hoc Remote Queries”.
4. Usługa ta odpowiada za wykonywanie zapytań “OPENROWSET/OPENQUERY”, wyłączona powoduje pojawienie się błędu.
Włączamy usługę poprzez zaznaczenie i zapisanie opcji “Enable OPENROWSET and OPENDATASOURCE".
5. Wykonujemy konwersję bazy ponownie
Etap końcowy. Jeżeli migracji dokonywaliśmy na serwerze SQL tymczasowym (2005) a docelowym ma być serwer SQL w wersji wyższej należy wykonać backup bazy danych a następnie odtworzyć go na nowym serwerze.
1. Wybierz TASKS -> BACK UP i dokonaj backupu bazy którą wykreowałeś w tym przypadku bazy Płatnik. Back up utworzy plik o rozszerzeniu .bak który należy przegrać na serwer docelowy.
2. Odnajdź plik z backupem .bak przenieś go na serwer docelowy i wykonaj odtworzenie bazy - narzędzie do zarządzania serwerem sql (SQL Server Management)
TASKS -> RESTORE -> DATABASE wybieramy utworzoną bazę i odtwarzamy ją na serwerze MS SQL
3. Uruchom płatnika i wybierz opcję podłącz bazę MSSQL.