background image

Ćwiczenie 3

Podstawy zarządzania bazami 

danych MS SQL Server 2005. 

Podstawowe czynności 

administracyjne

background image

Systemowe bazy danych

Otworzyć narzędzie SSMS

Połączyć się z lokalnym serwerem

Zapoznać się z systemowymi bazami 
danych mastermodelmsdbtemp

danych mastermodelmsdbtemp

background image

Utworzenie nowej bazy danych

Za pomocą SSMS utworzyć nową pustą bazę 
danych o nazwie TEST i domyślnych parametrach

Wygenerować skrypt zakładający bazę i zapoznać 
się z opcjonalnymi parametrami

Zmienić skrypt tak by baza była zakładana w 

Zmienić skrypt tak by baza była zakładana w 
wybranym katalogu

Zdefiniować w skrypcie rozmiar minimalny pliku 
danych bazy

ZałoŜyć nową bazę danych o zmodyfikowanych 
parametrach i sprawdzić czy wszystkie ustawione 
opcje działają poprawnie

background image

Grupy plików

Otworzyć okno tworzenia nowej bazy 
SSMS

Wprowadzić nazwę bazy danych TEST

Przejść na zakładkę [Filegroups]

Przejść na zakładkę [Filegroups]

Dodać nową grupę plików SECO

Wrócić na zakładkę [General]

Za pomocą przycisku [Add] dodać nowy 
plik danych o nazwie logicznej TEST_seco

Zakończyć proces zakładania bazy po OK

background image

Grupy plików (c.d.)

Rozwinąć zakładkę [Tables] bazy TEST

Dodać nową tabelę PRIM o dowolnej 
strukturze

W opcjach tabeli wybieramy grupę plików 
PRIMARY

PRIMARY

Dodać nową tabelę SECOND o dowolnej 
strukturze 

W opcjach tabeli wybieramy grupę plików SECO

Wywołać okno wykonania kopii zapasowej i 
zapoznać się z moŜliwościami kopiowania 
poszczególnych grup plików bazy danych

background image

Zmiana nazwy bazy

Zmienić nazwę bazy danych TEST na 
dowolną wybraną za pomocą:

SSMS

T-SQL

T-SQL

Sprawdzić jak zmiana nazwy bazy danych 
wpływa na nazwy jej plików na dysku

background image

Przeniesienie bazy danych

Przenieść bazę danych wskazaną przez 
wykładowcę do innej lokalizacji metodą:

Attach / detach

Z uŜyciem procedur oraz T-SQL

Z uŜyciem procedur oraz T-SQL

Backup / Restore

Do tej samej bazy

Do innej bazy 

Kreator ‘Copy Database’

Kreator ‘Export Data’

background image

Zarządzanie trybem 

funkcjonowania bazy danych

Tryb pracy online / offline / emergency

Przeprowadzić bazę danych do w/w trybów  
za pomocą poleceń

ALTER DATABASE [NAME] SET ONLINE

ALTER DATABASE [NAME] SET ONLINE

ALTER DATABASE [NAME] SET OFFLINE

ALTER DATABASE [NAME] SET 
EMERGENCY

W kaŜdym z tych trybów:

Nawiązać połączenie z bazą danych

Skopiować pliki danych *.mdf

Zmodyfikować zawartość bazy danych

background image

Zarządzanie trybem 

funkcjonowania bazy danych

Tryb pracy read-only / read-write

Przeprowadzić bazę danych do w/w trybów  za 
pomocą poleceń

ALTER DATABASE [NAME] SET READ_ONLY

ALTER DATABASE [NAME] SET READ_WRITE

W kaŜdym z tych trybów:

Nawiązać połączenie z bazą danych

Spróbować zmodyfikować zawartość bazy danych

Pytanie: jak się będzie zachowywał dziennik 
transakcji w kaŜdym z tych trybów?

background image

Zarządzanie trybem 

funkcjonowania bazy danych

Tryb pracy multi/single/ restricted user

Przeprowadzić bazę danych do w/w trybów  za pomocą 
poleceń

ALTER DATABASE [NAME] SET MULTI_USER

ALTER DATABASE [NAME] SET SINGLE_USER

ALTER DATABASE [NAME] SET SINGLE_USER

ALTER DATABASE [NAME] SET RESTRICTED_USER

W kaŜdym z tych trybów:

Spróbować nawiązać połączenie z bazą danych

a) z konta administratora

b)  z konta zwykłego uŜytkownika

»

Skrypt zakładający konto wygenerować 
zgodnie z zaleceniami wykładowcy

background image

Zarządzanie trybem 

funkcjonowania bazy danych

Przełączenie trybów pracy bazy danych

Podłączyć się do bazy danych z konta zwykłego 
uŜytkownika za pomocą SQLCMD

Z innego połączenia wykonać po kolei 
polecenia:

polecenia:

ALTER DATABASE [name] SET OFFLINE

a) jw.

b) WITH NO_WAIT

c) WITH ROLLBACK AFTER [sekund]

d) WITH ROLLBACK IMMEDIATE

Jak poszczególne polecenia działają na:

a) zwykłych uŜytkowników

b) administratorów (dbo)

background image

Zmiana właściciela bazy danych

Domyślnym właścicielem bazy danych 
TEST jest uŜytkownik ‘dbo’ skojarzony z 
loginem ‘sa’

Dodajemy nowy login ‘test’

Dodajemy nowy login ‘test’

Wykonujemy polecenie

Exec sp_changedbowner ‘test’

Weryfikujemy we właściwościach bazy 
danych (zakładka [Files]) nowego 
właściciela bazy

background image

Usuwanie bazy danych

Odłączyć wszystkich uŜytkowników od bazy 
danych TEST

Wykonać polecenie 

DROP DATABASE TEST

Jeśli usuwanie nie powiodło się, przeanalizować 

Jeśli usuwanie nie powiodło się, przeanalizować 
komunikat o błędzie i spróbować przeprowadzić 
bazę do trybu z którego ją moŜna będzie bez 
problemów usunąć

Czy usunięcie bazy danych usuwa równieŜ pliki z 
dysku? Kopie zapasowe bazy? Historię wykonania 
kopii zapasowych?

background image

Generowanie skryptów bazy 

danych

Wybrać niepustą bazę danych

Wygenerować skrypt zakładający bazę danych

Context Menu | Script Database As ... | Create new Query 
Window ...

Zapoznać się z domyślną składnią polecenia CREATE 
DATABASE

DATABASE

Jakie elementy zapytania mogą zostać usunięte bez większego 
wpływu na wynik działania skryptu?

Wygenerować skrypt zakładający strukturę bazy 
danych

Context Menu | Tasks | Generate Scripts ....

Zapisać wygenerowany skrypt do nowego okna

Zastosować skrypt na innej niŜ źródłowa bazie i porównać 
wyniki