Udostępnij za pośrednictwem


Moving a Database (Analysis Services)

Często istnieje sytuacji, gdy Analysis Services administrator bazy danych (dba) chce, aby przenieść bazę danych do innej lokalizacji. Takie sytuacje często są prowadzone przez potrzeb biznesowych, takich jak przenoszenie bazy danych na innym dysku, aby zapewnić lepszą wydajność, uzyskanie miejsca na wzrost bazy danych lub uaktualnienie produktu.

Bazy danych mogą być przenoszone na wiele sposobów.Dokument ten omówiono w następujących typowych scenariuszach:

  • Interakcyjnie, za pomocą SSMS

  • Programowo przy użyciu AMO

  • Przez skrypt przy użyciu XMLA

Wszystkie scenariusze wymagają od użytkowników dostępu do folderu bazy danych oraz do korzystania z metoda do przenoszenia plików do żądanego obiekt docelowy.

Uwaga

Odłączanie bazy danych bez przypisywania hasła do niego pozostawia bazy danych w stanie niezabezpieczony.Zalecane jest przypisywanie hasła do bazy danych w celu ochrony poufnych informacji.Również należy stosować odpowiednie zabezpieczenia dostępu do folderu bazy danych, podfoldery i pliki, aby uniemożliwić nieautoryzowany dostęp do nich.

Procedury

Przenoszenie bazy danych interaktywnie przy użyciu SSMS

  1. Zlokalizuj bazę danych, które mają być przeniesione w okienku SSMS w lewo lub w prawo.

  2. Kliknij prawym przyciskiem myszy bazę danych i wybierz opcję Detach…

  3. Przypisz hasło do bazy danych jest odłączony, a następnie kliknij przycisk OK wykonać polecenia odłączenia.

  4. Użyj mechanizmu systemu operacyjnego lub standardową metoda do przenoszenia plików, aby przenieść folder bazy danych do nowej lokalizacji.

  5. Zlokalizuj Bazy danych folder w okienku SSMS w lewo lub w prawo.

  6. Kliknij prawym przyciskiem myszy Bazy danych folder i wybierz opcję Attach…

  7. W folder tekstu wpisz lokalizację nowego folderu bazy danych.Alternatywnie można użyć (przycisk przeglądania**…**) Aby zlokalizować folder bazy danych.

  8. Wybierz ReadWrite trybu dla bazy danych.

  9. Wpisz hasło używane w kroku 3, a następnie kliknij przycisk OK do wykonać polecenia Dołącz.

Przenoszenie bazy danych programowo przy użyciu AMO

  • W języku C# aplikacji dostosowanie następujący przykładowy kod i wykonywanie określonych zadań.

private void MoveDb(Server server, string dbName,

string dbInitialLocation, string dbFinalLocation,

string dbPassword, ReadWriteMode dbReadWriteMode)

{

//Verify dbInitialLocation exists before continuing

if (server.Databases.ContainsName(dbName))

{

Database db;

//Save current cursor and change cursor to Cursors.WaitCursor

db = server.Databases[dbName];

db.Detach(dbPassword);

//Add your own code to copy the database files to the destination where you intend to attach the database

//Verify dbFinalLocation exists before continuing

server.Attach(dbFinalLocation, dbReadWriteMode, dbPassword);

//Restore cursor to its original

}

}

  1. W języku C# aplikacji wywoływanie MoveDb() z wymaganych parametrów.

  2. Skompiluj, a na wykonać kodu, aby przenieść bazę danych.

Przenoszenie bazy danych przez skrypt przy użyciu XMLA

  1. Otwarcie nowej karty XMLA SSMS.

  2. Skopiuj następujący szablon skryptu dla XMLA

<Detach xmlns="https://schemas.microsoft.com/analysisservices/2003/engine">

<Object>

<DatabaseID>%dbName%</DatabaseID>

<Password>%password%</Password>

</Object>

</Detach>

  1. Zamień %dbName% Nazwa bazy danych i %password% przy użyciu hasła. % Znaków są częścią szablonu i należy je usunąć.

  2. wykonać polecenia XMLA.

  3. Użyj mechanizmu systemu operacyjnego lub standardową metoda do przenoszenia plików, aby przenieść folder bazy danych do nowej lokalizacji.

  4. Skopiuj następujący szablon skryptu dla XMLA na nowej karcie XMLA

<Attach xmlns="https://schemas.microsoft.com/analysisservices/2003/engine">

<Folder>%dbFolder%</Folder>

<ReadWriteMode xmlns="https://schemas.microsoft.com/analysisservices/2008/engine/100">%ReadOnlyMode%</ReadWriteMode>

</Attach>

  1. Zamień %dbFolder% z pełną ścieżka UNC folderu bazy danych %ReadOnlyMode% z odpowiednią wartością ReadOnly lub ReadWrite, a %password% przy użyciu hasła. % Znaków są częścią szablonu i należy je usunąć.

  2. wykonać polecenia XMLA.