Architektura SQL Server: 2000, 2005, 2008

Wielkość: px
Rozpocząć pokaz od strony:

Download "Architektura SQL Server: 2000, 2005, 2008"

Transkrypt

1 Architektura SQL Serer: 2000, 2005, Architektura serwera Struktura SQL Serera 2. Bazy danych i pliki baz danych 3. Dziennik transakcyjny i odtwarzanie 4. Tabele 5. Indeksy 6. Blokady i współbieżność 1. Kalen Delaney, Inside MS SQL Serer 2005 The Storage Engine i MS SQL Serer 2008 Internals 2. MS SQL Serer 2005, 2008 Books Online 3. Paweł Lenkiewicz, Administrowanie bazami danych na przykładzie Microsoft SQL Serer 2005 Wykłady i ćwiczenia, Wydawnictwo PJWSTK, /173

2 Architektura serwera MS SQL Serer 1. Protokoły do komunikacji przez sieć 2. Procesor zapytań (Query Processor, Relational Engine) 3. Moduł składowania danych (Storage Engine) 4. SQLOS ( system operacyjny SQL Serera) zarządzanie: wątkami, synchronizacją, pamięcią w tym pulami buforów. 2/173

3 Protokoły komunikacyjne Warstwa protokołów tłumaczy: zlecenie użytkownika na postać wewnętrzną, wyniki i komunikaty na postać zrozumiałą dla użytkownika, komunikacja użytkownika z serwerem w formacie pakietu TDS (Tabular Data Stream) specyficznym dla SQL Serera wkładanym w standardowe pakiety protokołów sieciowych: Shared Memory połączenie wewnętrzne z tego samego komputera, Named Pipes dla sieci LAN, TCP/IP dla sieci WAN, Virtual Interface Adapter (VIA) wymagający specjalnego hardware u VIA. 3/173

4 Procesor zapytań Parser poleceń (Command Parser): tworzy drzewa zapytań (query trees) dla wszystkich zapytań we wsadzie. Optymalizator zapytań (Query Optimizer): instrukcje nie optymalizowalne (jak DDL, przepływ sterowania) są z miejsca kompilowane; optymalizowalne (SELECT, INSERT, UPDATE, DELETE) są analizowane i kompilowane w plan wykonania (execution plan, query plan); optymalizacja kosztowa - oparta na liczeniu przybliżonego kosztu użycia zasobów takich jak pamięć, czas CPU, czas operacji wejściawyjścia. 4/173

5 Procesor zapytań c.d. Menedżer SQL: zarządza składowanymi procedurami (stored procedures) i ich planami, determinuje, kiedy plan wykonania ma być rekompilowany, niektóre zapytania zamienia na sparametryzowane procedury składowane. Menedżer bazy danych realizuje dostęp do metadanych w czasie kompilacji i optymalizacji. Egzekutor zapytań realizuje plany wykonania. 5/173

6 Moduł składowania danych (Storage Engine) Zarządza dostępem i metodami dostępu do danych, przekazuje dane w postaci zbioru wierszy OLE DB do procesora zapytań, kontaktuje się z menedżerem buforów, przekazuje mu żądaną stronę, jeśli jej nie ma w buforze, sprowadzając ją z dysku; wykonuje operacje alokacji stron; wykonuje operacje na wersjach; zajmuje się obsługą transakcji (w tym zakładaniem/zdejmowaniem blokad); wykonuje ładowanie zbiorcze danych (bulk load), polecenia DBCC; wykonuje backup i odtwarzanie, zarządzanie sortowaniem, plikami i urządzeniami do backupowania na dysku. 6/173

7 SQLOS Wszystkie usługi serwera, które wymagają użycia systemu operacyjnego. Zarządza Wejściem/Wyjściem (IO), wątkami, synchronizacją, pulą buforów, zapobiega zakleszczeniom. Dla każdego zlecenia w postaci pojedynczego wsadu przyporządkowuje proces jego obsługi (wątek) nazywany worker do jego wykonania. Zajmuje się obsługą buforów: danych (danych i indeksów), planów (wykonania zapytań i procedur), rekordów dziennika transakcji. 7/173

8 SQLOS obsługa buforów danych 1. lista wolnych buforów gotowych do wpisania do nich stron z dysku, SQL Serer nie stosuje wymuszania przebywania strony na stałe w buforze tj. nie wpisywania jej bufora na listę wolnych miejsc (pinning of pages); 2. tablica haszowana odwzorowująca klucze będące układami wartości: dbid, fileno, pageno na adresy buforów zawierającyh używane dane, bufory z tą samą wartością funkcji haszującej znajdują się na tej samej liście. Algorytm LRU-k (k=2) :: odnotowywane są w nagłówku strony w buforze k- (=2) ostatnie czasy dostępu do strony w buforze i decydują o tym czy bufor zostaje usunięty ze struktury haszowanej i przeniesiony na listę wolnych miejsc (jeśli został zmodyfikowany, jego zawartość zostaje zapisana na dysk). Po przeniesieniu, bufor traci połączenie z dotychczasową stroną na dysku. 8/173

9 SQLOS procesy obsługi buforów danych Zasada WAL, write-ahead-logging: najpierw informacja o zmianie zostaje zapisana do pliku dziennika transakcji, potem dane na dysk. Proces obsługi zlecenia klienta:: po zainicjowaniu odczytu strony, czekając na zakończenie odczytu, jeśli lista wolnych miejsc jest za mała, sprawdza 64 bufory, zapisując zmodyfikowane strony na dysk i wstawiając na listę wolnych buforów - te wskazane przez LR(2). Oprócz tego są dwa procesy przeglądające bufory co pewien czas: lazywriter - gdy lista wolnych miejsc jest za mała, przegląda wszystkie bufory zapisując zmodyfikowane strony na dysk i zwalnia je wstawiając na listę wolnych buforów (wskazane przez LR(2)), sprawdza też ilość wolnej pamięci w SO jeśli jest poniżej 5MB, udostępnia zwalniane miejsca buforów SO; jeśli jest powyżej, tworzy bufory i wstawia je na listę wolnych buforów. checkpoint - tylko przepisuje zmienione (dirty) strony na dysk; nie przenosi buforów na listę wolnych buforów. 9/173

10 SQLOS proces kontrolny CHECKPOINT Ręcznie przez polecenie CHECKPOINT dla bazy danych. Gdy zawartość dziennika transakcji (logu) w pamięci przekracza 70% wielkości bufora dziennika. Gdy szacowany czas odtworzenia bazy danych staje się zbyt duży. Przy operacji SHUTDOWN bez opcji NOWAIT. Stara się przy jednym zapisie dokonywać zapisu więcej niż jednej strony, sprawdzając czy sąsiednie strony też są w buforach (metoda gather-write). 10/173

11 SQLOS inne bufory Cache store do przechowywania planów wykonywania. User store do przechowywania stron z metadanymi. Używany jest algorytm LRU połączony z cyklicznym odwiedzaniem buforów. Gdy bufor jest używany, jest mu przypisywany początkowy koszt, następnie przy każdym przejściu dzieli się koszt przez 2. Gdy koszt związany z buforem dojdzie do zera, zawartość bufora może zostać zwolniona dla zapisu nowej strony lub do zwrócenia do SO. Ten sposób w SQLSerer 2000 był używany również dla buforów z danymi. 11/173

12 SQLOS Memory Broker - Kontroluje użycie pamięci przez różne komponenty SQL Serera. Dostosowuje przydział pamięci do indywidualnych typów obciążenia. Strategia Read-Ahead jest używana przy metodach realizacji zapytań Table Scan i Index Scan. Do puli buforów za jednym razem jest wczytywane do 32 ekstentów (każdy ekstent składa się z 8 sąsiednich stron). Resource Goernor (w wersji 2008) administrator może określić priorytety dla poszczególnych procesów (aplikacji) w dostępie do zasobów np. wyższy priorytet OLTP w stosunku do OLAP. 12/173

13 Podsumowanie architektura SQL Serer + worker 13/173

14 Bazy danych i pliki baz danych 14/173

15 Baza danych Zawiera zbiór obiektów: tabel, więzów spójności, perspektyw, składowanych procedur itd. Właścicielem obiektu jest użytkownik bazy danych user (nie jego login do instancji serwera). Ma własne konta użytkowników, role, schematy i uprawnienia. Ma własne tabele systemowe i perspektywy w schemacie sys. Więzy spójności referencyjnej dotyczą zawsze tylko tabel jednej bazy danych. Stanowi podstawową jednostkę odtwarzania po awarii. 15/173

16 Baza danych Opisana w sys.databases Ma własny dziennik transakcyjny i zarządza swoimi własnymi transakcjami. Może obejmować kilka plików i kilka dysków. Jej rozmiar może rosnąć lub maleć automatycznie lub explicite poleceniem. W instrukcji SQL jej obiekty mogą być zestawiane z obiektami innych baz danych w tej samej instancji lub w połączonych serwerach. Można włączać/wyłączać opcje jak READ ONLY czy źródło publikowanych danych w replikacji. 16/173

17 Systemowa baza danych: master Zawiera katalog systemowy z informacjami jak: miejsce na dysku, alokacja i użycie plików dyskowych, ustawienia konfiguracyjne instancji, loginy, bazy danych, połączone serwery. Krytyczna dla działania całej instancji powinna być często backupowana. 17/173

18 Systemowa baza danych: model Wzorzec nowej bazy danych: przy tworzeniu nowej bazy danych system po prostu ją kopiuje. Można utworzyć wcześniej wymagane obiekty i uprawnienia. Można ustalić własności tworzonych baz danych przy użyciu polecenia ALTER DATABASE. 18/173

19 Systemowa baza danych: tempdb Obszar roboczy dla pozostałych baz danych w instancji. Przy restarcie systemu, jako jedyna jest tworzona od nowa a nie odtwarzana. Przechowuje tabele tymczasowe użytkowników, tabele robocze używane przez system przy wykonywaniu zapytań i sortowaniu, wersje wierszy w trybie migawkowym. 19/173

20 Systemowa baza danych: mssqlsystemresource Ukryta baza zasobów instancji. Zawiera wykonywalne obiekty systemowe takie jak systemowe procedury składowane. Jest tworzona przy instalacji instancji a następnie aktualizowana (upgrade owana) przez usunięcie i utworzenie jej od nowa. 20/173

21 Systemowa baza danych: msdb Przechowuje informacje o zadaniach backupowania, replikowania i Serice Broker a kolejkowania i przesyłania komunikatów. 21/173

22 Pliki bazodanowe Główny (primary,.mdf) jeden w bd; informacje o wszystkich innych plikach bazy danych, również dane. Niegłówny 0 lub więcej (secondary,.ndf). Pliki dziennika (log files,.ldf) informacje potrzebne do odtworzenia bazy danych. Co najmniej jeden plik. Ponadto, pliki do przechowywania dużych obiektów LOB: pełnotekstowe full-text, binarne filestream. Każdy plik ma: id, nazwę logiczną, nazwę fizyczną, początkowy rozmiar, maksymalny rozmiar, przyrost. Informacje o plikach w perspektywie systemowej sys.database_files. Urządzenia backupowe odwzorowywane na pliki lub zewnętrzne urządzenia jak sterowniki taśm. 22/173

23 Pliki, ekstenty, strony 23/173

24 Grupy plików bazodanowych Aby przyśpieszyć działanie bazy danych, należy korzystać z różnych dysków aby umożliwić równoległe wykonywanie instrukcji We-Wy. Aby łatwiej zarządzać dużą liczbą plików, wprowadza się podział plików bazodanowych na grupy plików (odpowiednik przestrzeni tabel w Oracle). Jedna grupa plików zawierająca plik główny jest główną grupą plików. Jest to grupa domyślna, w której zapisywane są obiekty, dla których nie zostanie określona grupa plików. Można zmienić grupę domyślną na inną. Alokacja miejsca dla obiektów jest proporcjonalna według rozmiaru plików w grupie plików. 24/173

25 Wskazówki W celu poprawienia wydajności warto umieścić na oddzielnych dyskach: 1. pliki z wierszami tabel, 2. pliki z rekordami indeksów, 3. pliki z dziennikiem transakcji, 4. pliki systemu operacyjnego. W celu ułatwienia administracji danymi: można wydzielić tabele na częściej oraz rzadziej aktualizowane (np. tabele słownikowe) na oddzielne dyski; będziemy rzadziej wykonywać kopie zapasowe - danych słownikowych, częściej - danych regularnie modyfikowanych. Bazę danych można utworzyć w Management Studio albo używając instrukcji CREATE DATABASE. 25/173

26 Przykład CREATE DATABASE Utwórz bazę danych z domyślną grupą plików danych i z plikiem dziennika. Określ przyrost rozmiaru i maksymalny rozmiar dla głównego pliku danych. CREATE DATABASE MyDB ON PRIMARY ( NAME='MyDB_Primary', FILE NAME='MyDB_Prm.mdf', SIZE=4MB, MAXSIZE=10, FILEGROWTH=1), FILEGROUP MyDB_FG1 ( NAME = 'MyDB_FG1_Dat1', FILE NAME ='MyDB_FG1_1.ndf', SIZE = 1MB, MAXSIZE=10, FILEGROWTH=1), ( NAME = 'MyDB_FG1_Dat2', FILE NAME ='MyDB_FG1_2.ndf', SIZE = 1MB, MAXSIZE=10, FILEGROWTH=1) LOG ON ( NAME='MyDB_log', FILE NAME ='MyDB.ldf', SIZE=1, MAXSIZE=10, FILEGROWTH=1) 26/173

27 Przykład c.d. Zmiana domyślnej grupy plików ALTER DATABASE MyDB MODIFY FILEGROUP MyDB_FG1 DEFAULT Utworzenie tabeli w podanej grupie plików CREATE TABLE MyTable( cola int PRIMARY KEY, colb char(8) ) ON MyDB_FG1 27/173

28 Wyświetlanie informacji na temat bazy danych sp_helpdb nazwa_bazy wyświetla informacje na temat bazy danych. sp_spaceused wyświetla rozmiar bieżącej bazy danych. sp_spaceused obiekt wyświetla ilość miejsca zajmowanego przez obiekt (np. tabelę, indeksowaną perspektywę). Parametry bazy danych możemy modyfikować poleceniem ALTER DATABASE. 28/173

29 Numeracja stron w pliku bazodanowym Plik jest podzielony na strony rozmiaru 8kB. Strony w pliku są numerowane kolejnymi liczbami od 0 do x-1, gdzie x jest rozmiarem pliku. Identyfikator strony bazodanowej PageID jest trójką wartości: DBID, ID pliku, numer strony w pliku. Przy rozszerzaniu pliku, dodaje się kolejne numery do istniejących. Przy skracaniu pliku, usuwane są strony z największymi numerami, tak, że numery stron zawsze są od 0 do x-1, gdzie x jest rozmiarem pliku. 29/173

30 Nagłówek strony pageid identyfikator strony, nextpage identyfikator następnej strony w pliku, jeśli strona ta jest w łańcuchu stron (zgodnie z logicznym porządkiem), prepage identyfikator poprzedniej strony w pliku, jeśli strona ta jest w łańcuchu stron (zgodnie z logicznym porządkiem), objid - identyfikator obiektu, do którego należy strona, LSN - numer rekordu dziennika (ang. log sequence number) opisującego ostatnie zmiany na tej stronie, slotcnt - całkowita liczba wierszy zapisanych na tej stronie, leel - poziom strony w indeksie (zawsze 0 dla liści). 30/173

31 Alokacja miejsca dla obiektów Dotyczy tabel i indeksów. Jednostką alokacji jest ekstent 8 sąsiednich stron. Są dwa rodzaje ekstentów: jednolity przeznaczony dla jednego obiektu, mieszany współużywany przez różne obiekty. Pierwsze osiem stron dla każdego obiektu jest alokowane w ekstentach mieszanych, następne już w ekstentach jednolitych. W rezultacie, dla małych tabel nie są alokowane ekstenty jednolite. 31/173

32 Mapy alokacji ekstentów w pliku Alokacja miejsca dla obiektu (w ekstencie jednolitym lub mieszanym) odbywa się w oparciu o następującą strukturę danych zapisaną na stronach w pliku: Strona GAM (Global Allocation Map) opisuje ekstenty dla części 4GB pliku: 0 oznacza, że ekstent jest w użyciu, a 1, że jest wolny. u Jest trzecią stroną w pliku (nr = 2) dla fragmentu 4GB. Strona SGAM (Shared Global Allocation Map) opisuje ekstenty dla części 4GB pliku: 1 oznacza, że ekstent jest mieszany i co najmniej jedna z jego stron jest wolna, 0 wpp. u Jest czwartą stroną w pliku (nr = 3) dla fragmentu 4GB. 32/173

33 Zestawienie GAM i SGAM Stopień zajętości ekstentu Ustawienie bitu w GAM Ustawienie bitu w SGAM Cały wolny 1 0 Ekstent mieszany zajęty w całości lub ekstent jednolity 0 0 Ekstent mieszany z wolnymi stronami 0 1 W celu zaalokowania jednolitego ekstentu, system przeszukuje strony GAM szukając pierwszego bitu 1 - ustawia go na 0. W celu zaalokowania mieszanego ekstentu, system przeszukuje strony GAM szukając pierwszego bitu 1 - ustawia go na 0 a następnie ustawia odpowiadający temu ekstentowi bit na stronach SGAM na 1. Przy zwalnianiu ekstentu serwer ustawia bit GAM na 1, SGAM na 0. 33/173

34 Początkowe strony w pliku PFS (Page Free Space) czy strona w pliku została alokowana i jeśli tak opisuje ilość wolnego miejsca na stronie: pusta, zajęta: 1 do 50%, 51 do 80%, 81 do 95%, 96 do 100%. (Opisuje 8088 stron.) DCM które ekstenty w pliku zostały zmodyfikowane od czasu ostatniego pełnego backup-u bazy danych. BCM - które ekstenty zostały zmienione od czasu ostatniej operacji backupowania dziennika przez operacje zbiorcze (bulk) jak np. BULK INSERT do wstawiania do tabeli dużej liczby wierszy. 34/173

35 Dla każdego obiektu: strony IAM (Index Allocation Map) Odwzorowanie bitowe wskazujące ekstenty alokowane dla danego obiektu dla sekcji 4GB pliku bazodanowego. Osobno: dla każdej partycji, zwykłe wiersze, wartości LOB, wiersze z nadmiarowymi danymi. Strona IAM składa się z wektora 8 wskaźników do stron obiektu w ekstentach mieszanych (tylko pierwsza strona IAM obiektu) oraz z wektora 0-1 wskazującego poprzez bit 1 ekstenty jednolite, w których znajdują się elementy danego obiektu. W nagłówku jest też adres pierwszego ekstentu, którego dotyczy IAM (może być w innym pliku). Wszystkie strony IAM tego samego obiektu są połączone w listę. Przy użyciu listy stron IAM system dokonuje sekwencyjnego przejścia tabeli. 35/173

36 Struktura listowa stron IAM danego obiektu W SQL Serer 2005 pierwsza strona IAM znajduje się na pozycji first_iam_page w perspektywie sys.system_internals_allocation_units. (W SQL Serer 2000 było to sys.indexes.) 36/173

37 Migawki bazodanowe Tworzenie raportów w określonym stanie bazy danych: używając produkcyjnej bazy danych u z zablokowaniem do odczytu wymaganych tabel, albo u na poziomie izolacji SERIALIZABLE, używając migawki bazodanowej, używając bazy danych w trybie standby. Ochrona przed błędami użytkowników i administratorów można korzystać z niej tak jak z kopii backupowej. 37/173

38 Tworzenie migawki bazodanowej Tylko w SQL: CREATE DATABASE MyDB_snapshot ON <powtórzenie specyfikacji plików danych z tą samą nazwą logiczną i nowym plikiem fizycznym; plików dziennika nie specyfikuje się> AS SNAPSHOT OF MyDB Migawka jest bazą danych READ ONLY. Uprawnienia użytkowników są kopiowane ze źródłowej bazy danych i nie mogą zostać zmienione. Migawki nie są ani backupowane ani odtwarzane. 38/173

39 Reprezentacja fizyczna migawki Pliki danych są reprezentowane w postaci rzadkiej. Dla każdej strony pliku jest utrzymywana w RAM informacja czy zawartość strony zmieniła się od czasu utworzenia migawki. Jest rekonstruowana przy każdym uruchomieniu serwera. Przy tworzeniu migawki zbiór jej stron jest pusty; wszystkie bity w RAM ustawione na 0. Przy instrukcji zmieniającej stan strony: jeśli strona źródłowej bazy danych nie była jeszcze zmieniana (bit=0), to stara wartość jest kopiowana do migawki a jej bit jest zmieniany na 1; jeśli strona była już zmieniana (bit=1), nic nie rób. Operacja ta nosi nazwę copy-on-write. 39/173

40 C.d. Przy odczycie danych z migawki nie są stosowane żadne blokady również stron w bazie źródłowej. Przy tworzeniu migawki, system wykonuje odtwarzanie źródłowej bazy danych aby wyznaczyć ostatni zatwierdzony stan plików źródłowej bazy danych (wycofuje efekt działania nie zatwierdzonych transakcji). Dopiero wtedy migawka staje się dostępna. Mając migawkę - można skopiować jej zawartość do źródłowej bazy danych, czyli przywrócić jej poprzedni stan: RESTORE DATABASE MyDB FROM SNAPSHOT = MyDB_snapshot; Powinna być określona tylko jedna migawka dla przywracanej źródłowej bazy danych; inne migawki trzeba wcześniej usunąć za pomocą polecenia DROP DATABASE. 40/173

41 Baza danych tempdb Przy uruchamianiu serwera baza tempdb jest tworzona od nowa (przez skopiowanie bazy danych model), a nie odtwarzana jak inne bazy danych. O obiektach w tempdb są przechowywane informacje potrzebne do wycofania zmian, nie są przechowywane dane potrzebne do odtworzenia. Rodzaje obiektów w tempdb: 1. Obiekty użytkowników. 2. Obiekty wewnętrzne. 3. Magazyn wersji wierszy m.in. do wykonywania instrukcji DML w trybie migawkowym dla transakcji. 41/173

42 Obiekty użytkowników w tempdb Tabele tymczasowe (tj. prefiksowane przez # i ##). Zmienne tabelowe. Tabele wyliczane przez funkcje tabelowe. 42/173

43 Wewnętrzne obiekty w tempdb Tabele robocze pośrednie wyniki przy wykonywaniu zapytania, przy użyciu zmiennych typu XML i archar(max), przy użyciu kursorów. Pliki robocze przy sortowaniu i agregacji metodą haszowania. Obszary sortowania m.in. ORDER BY, GROUP BY, CREATE INDEX, złączanie tabel metodą MERGE JOIN. 43/173

44 Ochrona bazy danych Hierarchiczna kolekcja encji: serwer - baza danych schemat - obiekt Model ochrony oparty na dwóch elementach: Autentykacja walidacja i ustalenie tożsamości osoby, która chce uzyskać dostęp do zasobu. Autoryzacja decyzja systemu, że osoba o danej tożsamości może mieć dostęp do konkretnego zasobu. Nowa terminologia od SQL Serer 2005: Securable (uogólnienie obiektu w wersji 2000) obiekt, do którego są przyznawane uprawnienia jak baza danych, schemat, obiekt schematu. Principal (uogólnienie użytkownika w wersji 2000) obiekt, który uzyskuje uprawnienia jak serwer, login, rola, grupa Windows. 44/173

45 Dwa tryby autentykacji Autentykacja Windows (Windows authentication) z serwerem mogą się łączyć tylko użytkownicy systemu Windows i Actie Directory (jeżeli komputer należy do domeny). Tryb mieszany (Mixed mode) z serwerem mogą się łączyć zarówno użytkownicy systemu Windows, pochodzący z Actie Directory, jak również użytkownicy, których konta zostały zdefiniowane bezpośrednio na serwerze SQL. Są to konta całkowicie niezależne od systemu Windows. 45/173

46 Tworzenie loginu Tworzenie kont użytkowników baz danych w MS SQL Serer jest dwustopniowe. Najpierw musimy utworzyć konto logowania (login) na serwerze SQL. W przypadku użytkownika pochodzącego z systemu Windows (Windows Authentication) nazwa konta logowania ma postać: nazwa_komputera\nazwa_użytkownika lub nazwa_domeny\nazwa_użytkownika, gdzie nazwa użytkownika jest loginem używanym w systemie Windows. W przypadku konta, którego dane są pamiętane na serwerze SQL (SQL Serer Authentication) możemy utworzyć konto logowania podając dowolny login i hasło. 46/173

47 Rozróżnienie: login, user Konto logowania (login) zakładamy na poziomie serwera, a użytkownika (user) na poziomie bazy danych. Konto logowania pozwala połączyć się z serwerem, lecz dopiero użytkownik może mieć nadane prawa w poszczególnych bazach danych. Dane konto logowania może mieć prawo dostępu (czyli stworzonego użytkownika) w jednej bazie, a w innej nie. 47/173

48 Tworzenie loginu Konto logowania możemy utworzyć: 1. używając Management Studio (gałąź Security / Logins) 2. używając SQL: CREATE LOGIN [komp\marek] FROM WINDOWS; [ ] nawiasy w języku a nie w metajęzyku CREATE LOGIN marek WITH PASSWORD = , DEFAULT DATABASE = AdentureWorks; Domyślna baza danych = master. Opisane w perspektywie systemowej sys.serer_principals. 48/173

49 Tworzenie użytkownika Użytkownika tworzy się w konkretnej bazie danych. Instrukcja: CREATE USER marek FOR LOGIN marek WITH DEFAULT SCHEMA = Person; tworzy użytkownika w tej bazie danych powiązanego z kontem systemowym (gdy user = login wtedy można opuścić FOR LOGIN). Gdy brak WITH DEFAULT SCHEMA domyślnym schematem jest dbo Informacja o użytkownikach bazy danych znajduje się w perspektywie systemowej: sys.database_principals 49/173

50 Role Tworzenie roli w bazie danych: CREATE ROLE rola Tworzenie roli aplikacyjnej w bazie danych: CREATE APPLICATION ROLE rola_aplikacyjna WITH PASSWORD = hasło' [, DEFAULT_SCHEMA = schemat] Rola aplikacyjna umożliwia wykonywanie aplikacji z jej własnymi uprawnieniami. Użytkownik uzyskuje dostęp do danych w bazie danych korzystając z aplikacji. Na początku, rola aplikacyjna jest wyłączona i wymaga włączenia przez aplikację. 50/173

51 Połączenie z bazą danych z włączeniem roli aplikacyjnej 1. Użytkownik wykonuje aplikację kliencką. 2. Aplikacja kliencka łączy się z instancją serwera jako użytkownik. 3. Aplikacja wywołuje procedurę składowaną sp_setapprole włączającą rolę aplikacyjną z hasłem znanym tylko aplikacji. 4. Połączenie traci uprawnienia użytkownika a uzyskuje uprawnienia roli aplikacyjnej. 51/173

52 Zmiana właściciela obiektu ALTER AUTHORIZATION ON [ rodzaj_obiektu :: ] nazwa_obiektu TO użytkownik Rodzaj obiektu np. Object, Schema, Database. Pojedynczy schemat może zawierać obiekty różnych właścicieli. Po zmianie właściciela obiektów danego użytkownika (w tym bazy danych) można go usunąć: DROP USER użytkownik W Oracle właściciela obiektu nie można zmienić. Nie można usunąć użytkownika, który ma obiekty. 52/173

53 Przenoszenie obiektów między schematami Przenieść tabelę SalesPeople ze schematu Sales do schematu Sprzedaz: ALTER SCHEMA Sprzedaz TRANSFER Sales.SalesPeople; 53/173

54 Kopiowanie/przenoszenie bazy danych Backup i restore. Detach i attach. EXEC sp_detach_db nazwa_bazy_danych nie może być nie zakończonych transakcji ani zmodyfikowanych stron nie przegranych do bazy danych; informacje o bazie danych znikają z katalogu systemowego. EXEC sp_attach_db nazwa_bazy_danych pliki_bd lub CREATE DATABASE.FOR ATTACH u również do innych instancji 54/173

55 Uprawnienia obiektowe: GRANT Przyznaje użytkownikowi uprawnienia do obiektu. GRANT uprawnienie, ON [ OBJECT :: ][ schemat]. nazwa_obiektu TO użytkownik, [ WITH GRANT OPTION ] Można pominąć OBJECT:: gdy jest podany schemat. Są jeszcze uprawnienia systemowe jak np. na poziomie bazy danych: CREATE TABLE, SELECT, INSERT itd. 55/173

56 DENY Odmawia użytkownikowi uprawnienia. Zapobiega to przyznaniu użytkownikowi uprawnienia przez GRANT lub przez rolę (silniejsze niż GRANT). DENY uprawnienie,... ON [ OBJECT :: ][ schemat]. nazwa_obiektu TO użytkownik,... [ CASCADE ] 56/173

57 REVOKE Usuwa przyznanie lub odmowę uprawnienia. REVOKE uprawnienie, ON [ OBJECT :: ][ schemat]. nazwa_obiektu FROM użytkownik, [ CASCADE ] 57/173

58 Dziennik transakcji i odtwarzanie 58/173

59 Dziennik (transakcji) Zapisywane są w nim wszystkie zmiany zachodzące w bazie danych. Umożliwia odtworzenie bazy danych (RECOVERY) jak i wycofanie transakcji (ROLLBACK). Odtwarzanie synchronizuje dane na dysku z wpisami w dzienniku: Wszystkie zmiany, które w dzienniku są odnotowane jako zatwierdzone, występują w pliku danych. Wszystkie zmiany, które w dzienniku nie są odnotowane jako zatwierdzone, nie występują w pliku danych. 59/173

60 Dziennik Dziennik składa się z jednego lub więcej plików tworzonych w trakcie operacji CREATE i ALTER DATABASE. Rekord dziennika opisujący zmianę danych odnotowuje: numer strony, zmieniane wartości na stronie, informację o transakcji, której częścią jest zmiana danych. Rekordy dziennika odnotowują także wewnętrzne zdarzenia takie jak punkty kontrolne (checkpoint). Każdy rekord ma przypisany kolejny numer LSN log sequence number. Wszystkie rekordy opisujące jedną transakcję są powiązane w listę: Od końca - aby umożliwić jej wycofanie. 60/173

61 Wpisywanie do dziennika Operacje INSERT, DELETE, UPDATE. Alokacje i dealokacje stron. 61/173

62 Write-ahead logging Najpierw rekord o zmianie zostaje zapisany do dziennika na dysku, dopiero potem sama zmiana może zostać zapisana w pliku danych: Przy zmianie strony w buforze danych, w jej nagłówku jest odnotowywany LSN rekordu tej zmiany w dzienniku. System może zapisać zmianę danych na dysk, tylko jeśli LSN strony w buforze jest <= LSN ostatniego rekordu dziennika zapisanego na dysk. 62/173

63 Asynchroniczność zapisów na dysk Zapis z buforów danych na dysk ma charakter asynchroniczny system nie czeka na zakończenie zapisu, tylko realizuje następne operacje. Co istotnie przyśpiesza działanie systemu. Ograniczenie asynchroniczności zapisów na dysk: zasada Writeahead logging Zapis z buforów dziennika na dysk ma też charakter asynchroniczny z wyjątkiem rekordu odnotowującego zatwierdzenie transakcji COMMIT: System czeka na potwierdzenie wykonania zapisu tego rekordu, zanim podejmie następne operacje. 63/173

64 Przy wykonywaniu ROLLBACK (inicjowanego przez użytkownika lub system) informacje o zachodzących zmianach są też odnotowywane w dzienniku. Odtwarzanie baz danych na jednej instancji może być wykonywane równolegle w osobnych wątkach. 64/173

65 Punkt kontrolny (checkpoint) Punkt kontrolny zapisuje wszystkie rekordy danych i dziennika transakcji z buforów na dysk. 65/173

66 Odtwarzanie po awarii lub restartowaniu serwera Wszystkie transakcje, które zakończyły się przed ostatnim punktem kontrolnym, mają prawidłowe odzwierciedlenie w plikach danych i dziennika. Wystarczy rozważyć transakcje, które działały po zakończeniu punktu kontrolnego i albo się zakończyły (COMMIT lub ROLLBACK) albo nie zakończyły się wtedy wymagają wycofania. Odtwarzanie składa się z trzech faz: Faza analizy dziennika trasnakcji Faza REDO wszystkie zmiany zapisane w dzienniku a nie uwzględnione w plikach danych są realizowane powtórnie. Faza UNDO wszystkie zmiany danych w pliku danych dokonane przez nie zatwierdzone transakcje są wycofywane przez przywrócenie poprzednich wartości przed zmianą. 66/173

67 Analiza Punktem wyjścia jest rekord ostatniego punktu kontrolnego w pliku dziennika. Przechodzi się rekordy pliku dziennika znajdując: startlsn numer LSN rekordu dziennika opisującego początek najstarszej transakcji, która rozpoczęła się przed ostatnim punktem kontrolnym, a która trwała po tym punkcie kontrolnym, minlsn numer LSN rekordu dziennika opisującego pierwszą zmianę strony od chwili punktu kontrolnego, tablicę id transakcji, które były nie zatwierdzone w chwili zatrzymania serwera (te transakcje trzeba wycofać). 67/173

68 Redo Transformuje bazę danych do spójnego stanu, w jakim była w chwili zakończenia pracy serwera. Punktem startowym jest startlsn - rozpoczęcie się najstarszej transakcji nie zakończonej przed punktem kontrolnym. System realizuje transakcje nie zakończone do chwili punktu kontrolnego - zakładając wymagane blokady. Właściwe REDO zaczyna się od rekordu o numerze minlsn zostają wprowadzone na dysk nie zapisane zmiany stron danych w buforach. 68/173

69 Redo rozpoznanie czy zmiana stron była zapisana na dysk Każda strona danych ma LSN rekordu dziennika transakcji opisującego ostatnią zmianę dokonaną na tej stronie. Rozpatruje się kolejne rekordy dziennika transakcji rozpoczynając od minlsn znalezionego w Fazie Analizy. Załóżmy, że rekord dziennika dotyczy zmiany na stronie id. Jeśli id.lsn jest mniejszy niż LSN rozpatrywanego rekordu dziennika, wtedy zmiana opisywana przez rekord dziennika jest powtarzana (REDO). 69/173

70 Undo Następuje wycofanie kolejno jedna po drugiej transakcji, które były nie zatwierdzone w chwili zakończenia pracy serwera. 70/173

71 Szybkie odtwarzanie po awarii serwera Zakładanie oryginalnych blokad umożliwia szybkie wycofanie baza danych staje się dostępna od razu po fazie Redo. 71/173

72 Ucinanie dziennika Do odtwarzania są potrzebne rekordy dziennika od chwili startlsn rozpoczęcia się najstarszej nie zakończonej w chwili punktu kontrolnego transakcji. Można więc w chwili punktu kontrolnego odciąć starsze rekordy dziennika (po zbackupowaniu). Po odtworzeniu po awarii lub restartowaniu serwera można obciąć cały stary dziennik (po jego zbackupowaniu). Do odtwarzania po awarii mediów trzeba mieć pełny backup dziennika. 72/173

73 Typy backupów Pełny backup danych skopiowanie wszystkich plików danych na inny nośnik (lokalny lub odległy). Przyrostowy backup danych kopiowane są tylko te ekstenty, które zostały zmienione od czasu ostatniego pełnego backupu. Strony DCM rejestrują, które ekstenty zostały zmienione (0 niezmieniony, 1 zmieniony). Backup (archiwizacja) dziennika kopiowane są rekordy opisujące zmiany od ostatniego pełnego backupu lub od ostatniego backupu dziennika. Backup pliku lub grupy plików. Uwaga: Możliwy jest ciepły backup otwartej (działającej a więc zmieniającej się) bazy danych bez zakładania blokad wtedy są rejestrowane aktualne numery LSN na początku i na końcu backupu. 73/173

Wstęp wprowadzający do laboratorium 2. mgr inż. Rafał Grycuk

Wstęp wprowadzający do laboratorium 2. mgr inż. Rafał Grycuk Wstęp wprowadzający do laboratorium 2 mgr inż. Rafał Grycuk Plan prezentacji 1. Czym jest T-SQL i czym się różni od standardu SQL 2. Typy zapytań 3. Zapytanie typu SELECT 4. Słowo o indeksach T-SQL (1)

Bardziej szczegółowo

Fizyczna struktura bazy danych w SQL Serwerze

Fizyczna struktura bazy danych w SQL Serwerze Sposób przechowywania danych na dysku twardym komputera ma zasadnicze znaczenie dla wydajności całej bazy i jest powodem tworzenia między innymi indeksów. Fizyczna struktura bazy danych w SQL Serwerze

Bardziej szczegółowo

1 Zaznacz poprawne stwierdzenia dotyczące grup plików (filegroup) możemy określić do której grupy plików trafi

1 Zaznacz poprawne stwierdzenia dotyczące grup plików (filegroup) możemy określić do której grupy plików trafi 1 Zaznacz poprawne stwierdzenia dotyczące grup plików (filegroup) Tworząc tabelę nie możemy określić, do którego pliku trafi, lecz możemy określić do której grupy plików trafi Zawsze istnieje grupa zawierająca

Bardziej szczegółowo

Fizyczna organizacja danych w bazie danych

Fizyczna organizacja danych w bazie danych Fizyczna organizacja danych w bazie danych PJWSTK, SZB, Lech Banachowski Spis treści 1. Model fizyczny bazy danych 2. Zarządzanie miejscem na dysku 3. Zarządzanie buforami (w RAM) 4. Organizacja zapisu

Bardziej szczegółowo

Bazy danych. Wykład IV SQL - wprowadzenie. Copyrights by Arkadiusz Rzucidło 1

Bazy danych. Wykład IV SQL - wprowadzenie. Copyrights by Arkadiusz Rzucidło 1 Bazy danych Wykład IV SQL - wprowadzenie Copyrights by Arkadiusz Rzucidło 1 Czym jest SQL Język zapytań deklaratywny dostęp do danych Składnia łatwa i naturalna Standardowe narzędzie dostępu do wielu różnych

Bardziej szczegółowo

1 Instalowanie i uaktualnianie serwera SQL Server 2005... 1

1 Instalowanie i uaktualnianie serwera SQL Server 2005... 1 Spis treści Przedmowa... ix Podziękowania... x Wstęp... xiii Historia serii Inside Microsoft SQL Server... xiii 1 Instalowanie i uaktualnianie serwera SQL Server 2005... 1 Wymagania SQL Server 2005...

Bardziej szczegółowo

Uprawnienia, role, synonimy

Uprawnienia, role, synonimy Uprawnienia, role, synonimy Schemat, użytkownicy, autoryzacja użytkowników, uprawnienia systemowe i obiektowe, nadawanie i odbieranie uprawnień, tworzenie ról, przywileje, synonimy Schematy i użytkownicy

Bardziej szczegółowo

Bazy danych. Plan wykładu. Rozproszona baza danych. Fragmetaryzacja. Cechy bazy rozproszonej. Replikacje (zalety) Wykład 15: Rozproszone bazy danych

Bazy danych. Plan wykładu. Rozproszona baza danych. Fragmetaryzacja. Cechy bazy rozproszonej. Replikacje (zalety) Wykład 15: Rozproszone bazy danych Plan wykładu Bazy danych Cechy rozproszonej bazy danych Implementacja rozproszonej bazy Wykład 15: Rozproszone bazy danych Małgorzata Krętowska, Agnieszka Oniśko Wydział Informatyki PB Bazy danych (studia

Bardziej szczegółowo

Administracja i programowanie pod Microsoft SQL Server 2000

Administracja i programowanie pod Microsoft SQL Server 2000 Administracja i programowanie pod Paweł Rajba pawel@ii.uni.wroc.pl http://www.kursy24.eu/ Zawartość modułu 7 Indeksy Wprowadzenie Rodzaje indeksów Wybór indeksów wybór indeksu zgrupowanego Tworzenie, usuwanie

Bardziej szczegółowo

UPDATE Studenci SET Rok = Rok + 1 WHERE Rodzaj_studiow =' INŻ_ST'; UPDATE Studenci SET Rok = Rok 1 WHERE Nr_albumu IN ( '111345','100678');

UPDATE Studenci SET Rok = Rok + 1 WHERE Rodzaj_studiow =' INŻ_ST'; UPDATE Studenci SET Rok = Rok 1 WHERE Nr_albumu IN ( '111345','100678'); polecenie UPDATE służy do aktualizacji zawartości wierszy tabel lub perspektyw składnia: UPDATE { } SET { { = DEFAULT NULL}, {

Bardziej szczegółowo

Pawel@Kasprowski.pl Bazy danych. Bazy danych. Podstawy języka SQL. Dr inż. Paweł Kasprowski. pawel@kasprowski.pl

Pawel@Kasprowski.pl Bazy danych. Bazy danych. Podstawy języka SQL. Dr inż. Paweł Kasprowski. pawel@kasprowski.pl Bazy danych Podstawy języka SQL Dr inż. Paweł Kasprowski pawel@kasprowski.pl Plan wykładu Relacyjne bazy danych Język SQL Zapytania SQL (polecenie select) Bezpieczeństwo danych Integralność danych Współbieżność

Bardziej szczegółowo

77. Modelowanie bazy danych rodzaje połączeń relacyjnych, pojęcie klucza obcego.

77. Modelowanie bazy danych rodzaje połączeń relacyjnych, pojęcie klucza obcego. 77. Modelowanie bazy danych rodzaje połączeń relacyjnych, pojęcie klucza obcego. Przy modelowaniu bazy danych możemy wyróżnić następujące typy połączeń relacyjnych: jeden do wielu, jeden do jednego, wiele

Bardziej szczegółowo

Ustawienie na poziomie sesji (działa do zmiany lub zakończenia sesji zamknięcia połączenia).

Ustawienie na poziomie sesji (działa do zmiany lub zakończenia sesji zamknięcia połączenia). POZIOMY IZOLACJI TRANSAKCJI 1. Microsoft SQL Server 2012 (od SQL Server 2005) W systemie SQL Server można wybrać sposób sterowania współbieżnością. Podstawowy sposób to stosowanie blokad. Wykorzystywane

Bardziej szczegółowo

Administracja i programowanie pod Microsoft SQL Server 2000

Administracja i programowanie pod Microsoft SQL Server 2000 Administracja i programowanie pod Paweł Rajba pawel@ii.uni.wroc.pl http://www.kursy24.eu/ Zawartość modułu 12 Zarządzanie bazami danych Pliki bazy danych i dzienniki Krótkie wprowadzenie do transakcji

Bardziej szczegółowo

Bazy danych. Plan wykładu. Model logiczny i fizyczny. Operacje na pliku. Dyski. Mechanizmy składowania

Bazy danych. Plan wykładu. Model logiczny i fizyczny. Operacje na pliku. Dyski. Mechanizmy składowania Plan wykładu Bazy danych Wykład 10: Fizyczna organizacja danych w bazie danych Model logiczny i model fizyczny Mechanizmy składowania plików Moduł zarządzania miejscem na dysku i moduł zarządzania buforami

Bardziej szczegółowo

Microsoft SQL Server Podstawy T-SQL

Microsoft SQL Server Podstawy T-SQL Itzik Ben-Gan Microsoft SQL Server Podstawy T-SQL 2012 przełożył Leszek Biolik APN Promise, Warszawa 2012 Spis treści Przedmowa.... xiii Wprowadzenie... xv Podziękowania... xix 1 Podstawy zapytań i programowania

Bardziej szczegółowo

Język SQL, zajęcia nr 1

Język SQL, zajęcia nr 1 Język SQL, zajęcia nr 1 SQL - Structured Query Language Strukturalny język zapytań Login: student Hasło: stmeil14 Baza danych: st https://194.29.155.15/phpmyadmin/index.php Andrzej Grzebielec Najpopularniejsze

Bardziej szczegółowo

startup pfile= '$HOME/admin/pfile/initDBx.ora'; create spfile from pfile= '$HOME/admin/pfile/initDBx.ora';

startup pfile= '$HOME/admin/pfile/initDBx.ora'; create spfile from pfile= '$HOME/admin/pfile/initDBx.ora'; Administrowanie systemami baz danych Ćwiczenia laboratoryjne (1) Podstawy uruchamiania serwera bazy danych 1. Przy pomocy programu Putty, połącz się z serwerem miner.cs.put.poznan.pl. Dla wygody otwórz

Bardziej szczegółowo

Administracja i programowanie pod Microsoft SQL Server 2000

Administracja i programowanie pod Microsoft SQL Server 2000 Administracja i programowanie pod Paweł Rajba pawel@ii.uni.wroc.pl http://www.kursy24.eu/ Zawartość modułu 12 Bezpieczeństwo SQL Servera Tryby uwierzytelniania Zarządzanie kontami Regulacja dostępu do

Bardziej szczegółowo

Pawel@Kasprowski.pl Bazy danych. Bazy danych. Zapytania SELECT. Dr inż. Paweł Kasprowski. pawel@kasprowski.pl

Pawel@Kasprowski.pl Bazy danych. Bazy danych. Zapytania SELECT. Dr inż. Paweł Kasprowski. pawel@kasprowski.pl Bazy danych Zapytania SELECT Dr inż. Paweł Kasprowski pawel@kasprowski.pl Przykład HAVING Podaj liczebność zespołów dla których najstarszy pracownik urodził się po 1940 select idz, count(*) from prac p

Bardziej szczegółowo

Oracle11g: Wprowadzenie do SQL

Oracle11g: Wprowadzenie do SQL Oracle11g: Wprowadzenie do SQL OPIS: Kurs ten oferuje uczestnikom wprowadzenie do technologii bazy Oracle11g, koncepcji bazy relacyjnej i efektywnego języka programowania o nazwie SQL. Kurs dostarczy twórcom

Bardziej szczegółowo

William R. Stanek. Vademecum administratora. Microsoft. SQL Server 2012. Przekład: Krzysztof Szkudlarek

William R. Stanek. Vademecum administratora. Microsoft. SQL Server 2012. Przekład: Krzysztof Szkudlarek William R. Stanek Vademecum administratora Microsoft SQL Server 2012 Przekład: Krzysztof Szkudlarek APN Promise 2012 Spis treści Wprowadzenie................................... xiii Część I Podstawy Microsoft

Bardziej szczegółowo

Oracle PL/SQL. Paweł Rajba. pawel@ii.uni.wroc.pl http://www.kursy24.eu/

Oracle PL/SQL. Paweł Rajba. pawel@ii.uni.wroc.pl http://www.kursy24.eu/ Paweł Rajba pawel@ii.uni.wroc.pl http://www.kursy24.eu/ Zawartość modułu 6 Wprowadzenie Definiowanie wyzwalaczy DML Metadane wyzwalaczy Inne zagadnienia, tabele mutujące Wyzwalacze INSTEAD OF Wyzwalacze

Bardziej szczegółowo

SQL (ang. Structured Query Language)

SQL (ang. Structured Query Language) SQL (ang. Structured Query Language) SELECT pobranie danych z bazy, INSERT umieszczenie danych w bazie, UPDATE zmiana danych, DELETE usunięcie danych z bazy. Rozkaz INSERT Rozkaz insert dodaje nowe wiersze

Bardziej szczegółowo

SQL Server. Odtwarzanie baz danych.

SQL Server. Odtwarzanie baz danych. SQL Server. Odtwarzanie baz danych. Utwórz bazę danych CW. Utwórz w niej tabelę T1(p1 INT PRIMARY KEY, p2 INT) i wpisz wiersz (1,100). Sprawdź ścieżkę dostępu do plików bazy (np. we właściwościach bazy

Bardziej szczegółowo

Programowanie w SQL procedury i funkcje. UWAGA: Proszę nie zapominać o prefiksowaniu nazw obiektów ciągiem [OLIMP\{nr indeksu}] Funkcje użytkownika

Programowanie w SQL procedury i funkcje. UWAGA: Proszę nie zapominać o prefiksowaniu nazw obiektów ciągiem [OLIMP\{nr indeksu}] Funkcje użytkownika Programowanie w SQL procedury i funkcje UWAGA: Proszę nie zapominać o prefiksowaniu nazw obiektów ciągiem [OLIMP\{nr indeksu}] Funkcje użytkownika 1. Funkcje o wartościach skalarnych ang. scalar valued

Bardziej szczegółowo

Administracja Internetowymi systemami baz danych (niestacjonarne) Laboratorium 2

Administracja Internetowymi systemami baz danych (niestacjonarne) Laboratorium 2 Administracja Internetowymi systemami baz danych (niestacjonarne) Laboratorium 2 Instalacja bazy danych AdventureWorks 2012, Zapytania typu SELECT, Indeksy, Plan wykonania zapytań Instrukcja do laboratorium

Bardziej szczegółowo

Systemy GIS Tworzenie zapytań w bazach danych

Systemy GIS Tworzenie zapytań w bazach danych Systemy GIS Tworzenie zapytań w bazach danych Wykład nr 6 Analizy danych w systemach GIS Jak pytać bazę danych, żeby otrzymać sensowną odpowiedź......czyli podstawy języka SQL INSERT, SELECT, DROP, UPDATE

Bardziej szczegółowo

Wyzwalacz - procedura wyzwalana, składowana fizycznie w bazie, uruchamiana automatycznie po nastąpieniu określonego w definicji zdarzenia

Wyzwalacz - procedura wyzwalana, składowana fizycznie w bazie, uruchamiana automatycznie po nastąpieniu określonego w definicji zdarzenia Wyzwalacz - procedura wyzwalana, składowana fizycznie w bazie, uruchamiana automatycznie po nastąpieniu określonego w definicji zdarzenia Składowe wyzwalacza ( ECA ): określenie zdarzenia ( Event ) określenie

Bardziej szczegółowo

Ćwiczenia laboratoryjne nr 11 Bazy danych i SQL.

Ćwiczenia laboratoryjne nr 11 Bazy danych i SQL. Prezentacja Danych i Multimedia II r Socjologia Ćwiczenia laboratoryjne nr 11 Bazy danych i SQL. Celem ćwiczeń jest poznanie zasad tworzenia baz danych i zastosowania komend SQL. Ćwiczenie I. Logowanie

Bardziej szczegółowo

Podstawowe pojęcia dotyczące relacyjnych baz danych. mgr inż. Krzysztof Szałajko

Podstawowe pojęcia dotyczące relacyjnych baz danych. mgr inż. Krzysztof Szałajko Podstawowe pojęcia dotyczące relacyjnych baz danych mgr inż. Krzysztof Szałajko Czym jest baza danych? Co rozumiemy przez dane? Czym jest system zarządzania bazą danych? 2 / 25 Baza danych Baza danych

Bardziej szczegółowo

Administracja i programowanie pod Microsoft SQL Server 2000

Administracja i programowanie pod Microsoft SQL Server 2000 Administracja i programowanie pod Paweł Rajba pawel@ii.uni.wroc.pl http://www.kursy24.eu/ Zawartość modułu 4 Wsady Procedury składowane Procedury składowane tymczasowe, startowe Zmienne tabelowe Funkcje

Bardziej szczegółowo

Plan. Wprowadzenie. Co to jest APEX? Wprowadzenie. Administracja obszarem roboczym

Plan. Wprowadzenie. Co to jest APEX? Wprowadzenie. Administracja obszarem roboczym 1 Wprowadzenie do środowiska Oracle APEX, obszary robocze, użytkownicy Wprowadzenie Plan Administracja obszarem roboczym 2 Wprowadzenie Co to jest APEX? Co to jest APEX? Architektura Środowisko Oracle

Bardziej szczegółowo

Laboratorium nr 4. Temat: SQL część II. Polecenia DML

Laboratorium nr 4. Temat: SQL część II. Polecenia DML Laboratorium nr 4 Temat: SQL część II Polecenia DML DML DML (Data Manipulation Language) słuŝy do wykonywania operacji na danych do ich umieszczania w bazie, kasowania, przeglądania, zmiany. NajwaŜniejsze

Bardziej szczegółowo

Typy tabel serwera MySQL

Typy tabel serwera MySQL Typy tabel serwera MySQL Kopie zapasowe baz danych Zabezpieczanie serwera MySQL Zakładanie konta użytkownika z określonymi uprawnieniami Zarządzanie kontem i bazą danych Kilka kolejnych informacji na temat

Bardziej szczegółowo

3 Przygotowali: mgr inż. Barbara Łukawska, mgr inż. Maciej Lasota

3 Przygotowali: mgr inż. Barbara Łukawska, mgr inż. Maciej Lasota Laboratorium nr 3 1 Bazy Danych Instrukcja laboratoryjna Temat: Wprowadzenie do języka SQL, tworzenie, modyfikacja, wypełnianie tabel 3 Przygotowali: mgr inż. Barbara Łukawska, mgr inż. Maciej Lasota 1)

Bardziej szczegółowo

Ile rekordów będzie zawierała tabela przy założeniu, że na początku była pusta?

Ile rekordów będzie zawierała tabela przy założeniu, że na początku była pusta? Gr Masyla: 1. Zaznacz poprawne stwierdzenia dotyczące opcji recovery model w MS SQL Server a) Ustawienie Simple pozwala zaoszczędzid miejsce na dysku b) Model full jest zalecany dla baz danych, w których

Bardziej szczegółowo

INDEKSY I SORTOWANIE ZEWNĘTRZNE

INDEKSY I SORTOWANIE ZEWNĘTRZNE INDEKSY I SORTOWANIE ZEWNĘTRZNE Przygotował Lech Banachowski na podstawie: 1. Raghu Ramakrishnan, Johannes Gehrke, Database Management Systems, McGrawHill, 2000 (książka i slide y). 2. Lech Banachowski,

Bardziej szczegółowo

Bazy danych 2. Wykład 1

Bazy danych 2. Wykład 1 Bazy danych 2 Wykład 1 Sprawy organizacyjne Materiały i listy zadań zamieszczane będą na stronie www.math.uni.opole.pl/~ajasi E-mail: standardowy ajasi@math.uni.opole.pl Sprawy organizacyjne Program wykładu

Bardziej szczegółowo

SZKOLENIE: Administrator baz danych. Cel szkolenia

SZKOLENIE: Administrator baz danych. Cel szkolenia SZKOLENIE: Administrator baz danych. Cel szkolenia Kurs Administrator baz danych skierowany jest przede wszystkim do osób zamierzających rozwijać umiejętności w zakresie administrowania bazami danych.

Bardziej szczegółowo

Systemowe aspekty baz

Systemowe aspekty baz Systemowe aspekty baz danych Deklaracja zmiennej Zmienne mogą być wejściowe i wyjściowe Zmienne w T-SQL można deklarować za pomocą @: declare @nazwisko varchar(20) Zapytanie z użyciem zmiennej: select

Bardziej szczegółowo

Internetowe bazy danych

Internetowe bazy danych Wyższa Szkoła Technologii Teleinformatycznych w Świdnicy Internetowe bazy danych wykład 3 dr inż. Jacek Mazurkiewicz e-mail: Jacek.Mazurkiewicz@pwr.wroc.pl Typy tabel MySQL domyślny MyISAM inne możliwe:

Bardziej szczegółowo

D D L S Q L. Co to jest DDL SQL i jakie s jego ą podstawowe polecenia?

D D L S Q L. Co to jest DDL SQL i jakie s jego ą podstawowe polecenia? D D L S Q L Co to jest DDL SQL i jakie s jego ą podstawowe polecenia? D D L S Q L - p o d s t a w y DDL SQL (Data Definition Language) Jest to zbiór instrukcji i definicji danych, którym posługujemy się

Bardziej szczegółowo

Podstawy języka SQL. SQL Structured Query Languagestrukturalny

Podstawy języka SQL. SQL Structured Query Languagestrukturalny Podstawy języka SQL SQL Structured Query Languagestrukturalny język zapytań DDL Język definicji danych (np. tworzenie tabel) DML Język manipulacji danych (np. tworzenie zapytań) DCL Język kontroli danych

Bardziej szczegółowo

Administracja i programowanie pod Microsoft SQL Server 2000

Administracja i programowanie pod Microsoft SQL Server 2000 Administracja i programowanie pod Paweł Rajba pawel@ii.uni.wroc.pl http://www.kursy24.eu/ Zawartość modułu 2 Typy danych wbudowane użytkownika Tabele organizacja wiersza przechowywanie dużych danych automatyczne

Bardziej szczegółowo

Bazy danych. Plan wykładu. Diagramy ER. Podstawy modeli relacyjnych. Podstawy modeli relacyjnych. Podstawy modeli relacyjnych

Bazy danych. Plan wykładu. Diagramy ER. Podstawy modeli relacyjnych. Podstawy modeli relacyjnych. Podstawy modeli relacyjnych Plan wykładu Bazy danych Wykład 9: Przechodzenie od diagramów E/R do modelu relacyjnego. Definiowanie perspektyw. Diagramy E/R - powtórzenie Relacyjne bazy danych Od diagramów E/R do relacji SQL - perspektywy

Bardziej szczegółowo

SQL Server Configuration Manager centrum dowodzenia

SQL Server Configuration Manager centrum dowodzenia Instrukcja do przedmiotu Bazy danych laboratorium (zajęcia 1) 1 Celem pierwszych zajęć laboratoryjnych jest poznanie podstaw obsługi MS SQL Server 2005 za pomocą programu SQL Server Management Studio,

Bardziej szczegółowo

Ogólny plan przedmiotu. Strony WWW. Literatura BAZY DANYCH. Materiały do wykładu: http://aragorn.pb.bialystok.pl/~gkret

Ogólny plan przedmiotu. Strony WWW. Literatura BAZY DANYCH. Materiały do wykładu: http://aragorn.pb.bialystok.pl/~gkret Ogólny plan przedmiotu BAZY DANYCH Wykład 1: Wprowadzenie do baz danych Małgorzata Krętowska Politechnika Białostocka Wydział Informatyki Wykład : Wprowadzenie do baz danych Normalizacja Diagramy związków

Bardziej szczegółowo

Ref. 7 - Język SQL - polecenia DDL i DML

Ref. 7 - Język SQL - polecenia DDL i DML Ref. 7 - Język SQL - polecenia DDL i DML Wprowadzenie do języka SQL. Polecenia generujące strukturę bazy danych: CREATE, ALTER i DROP. Polecenia: wprowadzające dane do bazy - INSERT, modyfikujące zawartość

Bardziej szczegółowo

Block Change Tracking

Block Change Tracking Czym jest i czy warto stosować? OPITZ CONSULTING Kraków Przybliżenie technologii i analiza testów Jakub Szepietowski (Młodszy konsultant SE) OPITZ CONSULTING Kraków 2011 Strona 1 Agenda 1. Plik BCT 2.

Bardziej szczegółowo

P o d s t a w y j ę z y k a S Q L

P o d s t a w y j ę z y k a S Q L P o d s t a w y j ę z y k a S Q L Adam Cakudis IFP UAM Użytkownicy System informatyczny Aplikacja Aplikacja Aplikacja System bazy danych System zarządzania baz ą danych Schemat Baza danych K o n c e p

Bardziej szczegółowo

Języki programowania wysokiego poziomu. PHP cz.4. Bazy danych

Języki programowania wysokiego poziomu. PHP cz.4. Bazy danych Języki programowania wysokiego poziomu PHP cz.4. Bazy danych PHP i bazy danych PHP może zostać rozszerzony o mechanizmy dostępu do różnych baz danych: MySQL moduł mysql albo jego nowsza wersja mysqli (moduł

Bardziej szczegółowo

KOMPUTEROWY SYSTEM WSPOMAGANIA OBSŁUGI JEDNOSTEK SŁUŻBY ZDROWIA KS-SOMED

KOMPUTEROWY SYSTEM WSPOMAGANIA OBSŁUGI JEDNOSTEK SŁUŻBY ZDROWIA KS-SOMED KOMPUTEROWY SYSTEM WSPOMAGANIA OBSŁUGI JEDNOSTEK SŁUŻBY ZDROWIA KS-SOMED Podręcznik użytkownika Katowice 2010 Producent programu: KAMSOFT S.A. ul. 1 Maja 133 40-235 Katowice Telefon: (0-32) 209-07-05 Fax:

Bardziej szczegółowo

strukturalny język zapytań używany do tworzenia i modyfikowania baz danych oraz do umieszczania i pobierania danych z baz danych

strukturalny język zapytań używany do tworzenia i modyfikowania baz danych oraz do umieszczania i pobierania danych z baz danych SQL SQL (ang. Structured Query Language): strukturalny język zapytań używany do tworzenia strukturalny język zapytań używany do tworzenia i modyfikowania baz danych oraz do umieszczania i pobierania danych

Bardziej szczegółowo

Część I Tworzenie baz danych SQL Server na potrzeby przechowywania danych

Część I Tworzenie baz danych SQL Server na potrzeby przechowywania danych Spis treści Wprowadzenie... ix Organizacja ksiąŝki... ix Od czego zacząć?... x Konwencje przyjęte w ksiąŝce... x Wymagania systemowe... xi Przykłady kodu... xii Konfiguracja SQL Server 2005 Express Edition...

Bardziej szczegółowo

Przestrzenne bazy danych Podstawy języka SQL

Przestrzenne bazy danych Podstawy języka SQL Przestrzenne bazy danych Podstawy języka SQL Stanisława Porzycka-Strzelczyk porzycka@agh.edu.pl home.agh.edu.pl/~porzycka Konsultacje: wtorek godzina 16-17, p. 350 A (budynek A0) 1 SQL Język SQL (ang.structured

Bardziej szczegółowo

Zarządzanie kontami użytkowników w i uprawnieniami

Zarządzanie kontami użytkowników w i uprawnieniami 106 Plan prezentacji 107 Zarządzanie kontami użytkowników w i uprawnieniami Schematy a użytkownicy Tworzenie użytkowników, uwierzytelnianie Przywileje systemowe i obiektowe, role Profile kontrola wykorzystania

Bardziej szczegółowo

Relacyjne bazy danych. Podstawy SQL

Relacyjne bazy danych. Podstawy SQL Relacyjne bazy danych Podstawy SQL Język SQL SQL (Structured Query Language) język umożliwiający dostęp i przetwarzanie danych w bazie danych na poziomie obiektów modelu relacyjnego tj. tabel i perspektyw.

Bardziej szczegółowo

Zarządzanie obiektami bazy danych Oracle11g

Zarządzanie obiektami bazy danych Oracle11g Zarządzanie obiektami bazy danych Oracle11g Wstęp Obiekty to struktury przechowujące, porządkujące lub operujące na danych takie jak: Tabele Więzy integralności Indeksy Widoki Sekwencje Procedury Linki

Bardziej szczegółowo

Bazy danych - wykład wstępny

Bazy danych - wykład wstępny Bazy danych - wykład wstępny Wykład: baza danych, modele, hierarchiczny, sieciowy, relacyjny, obiektowy, schemat logiczny, tabela, kwerenda, SQL, rekord, krotka, pole, atrybut, klucz podstawowy, relacja,

Bardziej szczegółowo

Sprawdzenie poziomu izolacji transakcji (w aktualnym połączeniu):

Sprawdzenie poziomu izolacji transakcji (w aktualnym połączeniu): Utwórz bazę danych Cw: CREATE DATABASE Cw Sprawdzenie poziomu izolacji transakcji (w aktualnym połączeniu): DBCC USEROPTIONS Przykład z zapisem do tabeli tymczasowej: --Jeśli istnieje tabela tymczasowa

Bardziej szczegółowo

STROJENIE BAZ DANYCH: INDEKSY. Cezary Ołtuszyk coltuszyk.wordpress.com

STROJENIE BAZ DANYCH: INDEKSY. Cezary Ołtuszyk coltuszyk.wordpress.com STROJENIE BAZ DANYCH: INDEKSY Cezary Ołtuszyk coltuszyk.wordpress.com Plan spotkania I. Wprowadzenie do strojenia baz danych II. III. IV. Mierzenie wydajności Jak SQL Server przechowuje i czyta dane? Budowa

Bardziej szczegółowo

Administracja bazami danych

Administracja bazami danych Administracja bazami danych dr inż. Grzegorz Michalski Na podstawie wykładów dra inż. Juliusza Mikody Klient tekstowy mysql Program mysql jest prostym programem uruchamianym w konsoli shell do obsługi

Bardziej szczegółowo

Microsoft SQL Server 2012 Krok po kroku

Microsoft SQL Server 2012 Krok po kroku Patrick LeBlanc Microsoft SQL Server 2012 Krok po kroku Przekład: Natalia Chounlamany APN Promise, Warszawa 2013 Spis treści Wprowadzenie.......................................................... xv Część

Bardziej szczegółowo

Administracja i programowanie pod Microsoft SQL Server 2000

Administracja i programowanie pod Microsoft SQL Server 2000 Administracja i programowanie pod Paweł Rajba pawel@ii.uni.wroc.pl http://www.kursy24.eu/ Zawartość modułu 1 Przegląd zawartości SQL Servera Podstawowe usługi SQL Servera Programy narzędziowe Bazy danych

Bardziej szczegółowo

Kadry Optivum, Płace Optivum. Jak przenieść dane na nowy komputer?

Kadry Optivum, Płace Optivum. Jak przenieść dane na nowy komputer? Kadry Optivum, Płace Optivum Jak przenieść dane na nowy komputer? Aby kontynuować pracę z programem Kadry Optivum lub Płace Optivum (lub z obydwoma programami pracującymi na wspólnej bazie danych) na nowym

Bardziej szczegółowo

Bazy Danych. C. J. Date, Wprowadzenie do systemów baz danych, WNT - W-wa, (seria: Klasyka Informatyki), 2000

Bazy Danych. C. J. Date, Wprowadzenie do systemów baz danych, WNT - W-wa, (seria: Klasyka Informatyki), 2000 Bazy Danych LITERATURA C. J. Date, Wprowadzenie do systemów baz danych, WNT - W-wa, (seria: Klasyka Informatyki), 2000 J. D. Ullman, Systemy baz danych, WNT - W-wa, 1998 J. D. Ullman, J. Widom, Podstawowy

Bardziej szczegółowo

Bazy danych i usługi sieciowe

Bazy danych i usługi sieciowe Bazy danych i usługi sieciowe Wstęp do problematyki baz danych Paweł Daniluk Wydział Fizyki Jesień 2014 P. Daniluk (Wydział Fizyki) BDiUS w. I Jesień 2014 1 / 17 Plan wykładu 1 Bazy danych 1 Motywacja

Bardziej szczegółowo

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 (a) T (b) N (c) N (d) T

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 (a) T (b) N (c) N (d) T PRZYKŁADOWE PYTANIA NA EGZAMIN Z PRZEDMIOTU ADMINISTRACJA BAZAMI DANYCH - 2005/2006-1- A Nazwisko i imię: Kierunek: Rok studiów: Pytanie 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 Punkty 5 5 5

Bardziej szczegółowo

Bazy danych. Dr inż. Paweł Kasprowski

Bazy danych. Dr inż. Paweł Kasprowski Plan wykładu Bazy danych Podstawy relacyjnego modelu danych Dr inż. Paweł Kasprowski pawel@kasprowski.pl Relacyjne bazy danych Język SQL Zapytania SQL (polecenie select) Bezpieczeństwo danych Integralność

Bardziej szczegółowo

Server Oracle - System Zarządzania Bazą Danych - składa się z instancji Oracle i bazy danych Oracle Instancja Oracle - pewne procesy drugoplanowe i

Server Oracle - System Zarządzania Bazą Danych - składa się z instancji Oracle i bazy danych Oracle Instancja Oracle - pewne procesy drugoplanowe i Server Oracle - System Zarządzania Bazą Danych - składa się z instancji Oracle i bazy danych Oracle Instancja Oracle - pewne procesy drugoplanowe i struktury pamięciowe - aby użytkownik mógł uzyskać dostęp

Bardziej szczegółowo

Bazy danych. Dr inż. Paweł Kasprowski

Bazy danych. Dr inż. Paweł Kasprowski Plan wykładu Bazy danych Architektura systemów zarządzania bazami danych Realizacja zapytań algebra relacji Wielodostęp do danych - transakcje Dr inż. Paweł Kasprowski pawel@kasprowski.pl Aplkacja przechowująca

Bardziej szczegółowo

Zadania do wykonania na laboratorium

Zadania do wykonania na laboratorium Lab Oracle Katowice 2013v1 Fizyczna i logiczna struktura bazy danych 1 http://platforma.polsl.pl/rau2/mod/folder/view.php?id=9975 RB_lab2_v04st Przykładowe pomocne strony www: Zadania do wykonania na laboratorium

Bardziej szczegółowo

Program szkoleniowy Efektywni50+ Moduł IV Podstawy relacyjnych baz danych i język SQL

Program szkoleniowy Efektywni50+ Moduł IV Podstawy relacyjnych baz danych i język SQL Program szkoleniowy Efektywni50+ Moduł IV Podstawy relacyjnych baz danych i język SQL 1 Podstawy relacyjnego modelu danych. 3h UWAGA: Temat zajęć jest typowo teoretyczny i stanowi wprowadzenie do zagadnień

Bardziej szczegółowo

Płace Optivum. 1. Zainstalować serwer SQL (Microsoft SQL Server 2008 R2) oraz program Płace Optivum.

Płace Optivum. 1. Zainstalować serwer SQL (Microsoft SQL Server 2008 R2) oraz program Płace Optivum. Płace Optivum Jak przenieść dane programu Płace Optivum na nowy komputer? Aby kontynuować pracę z programem Płace Optivum na nowym komputerze, należy na starym komputerze wykonać kopię zapasową bazy danych

Bardziej szczegółowo

SQL - DDL. 1 Tabele systemowe. 2 Typy danych

SQL - DDL. 1 Tabele systemowe. 2 Typy danych SQL - DDL DDL (ang. data definition language) jest częścią języka zapytań SQL obejmująca tworzenie i zarządzanie (modyfikację, usuwanie i przydzielanie uprawnień) obiektami w bazie danych (tabelami, perspektywami,

Bardziej szczegółowo

Bazy danych i usługi sieciowe

Bazy danych i usługi sieciowe Bazy danych i usługi sieciowe Ćwiczenia I Paweł Daniluk Wydział Fizyki Jesień 2014 P. Daniluk (Wydział Fizyki) BDiUS ćw. I Jesień 2014 1 / 16 Strona wykładu http://bioexploratorium.pl/wiki/ Bazy_danych_i_usługi_sieciowe_-_2014z

Bardziej szczegółowo

Systemowe aspekty baz danych

Systemowe aspekty baz danych Systemowe aspekty baz danych Deklaracja zmiennej Zmienne mogą być wejściowe i wyjściowe Zmienne w T-SQL można deklarować za pomocą @: declare @nazwisko varchar(20) Zapytanie z użyciem zmiennej: select

Bardziej szczegółowo

2010-11-22 PLAN WYKŁADU BAZY DANYCH PODSTAWOWE KWESTIE BEZPIECZEŃSTWA OGRANICZENIA DOSTĘPU DO DANYCH

2010-11-22 PLAN WYKŁADU BAZY DANYCH PODSTAWOWE KWESTIE BEZPIECZEŃSTWA OGRANICZENIA DOSTĘPU DO DANYCH PLAN WYKŁADU Bezpieczeństwo w języku SQL Użytkownicy Uprawnienia Role BAZY DANYCH Wykład 8 dr inż. Agnieszka Bołtuć OGRANICZENIA DOSTĘPU DO DANYCH Ograniczenie danych z tabeli dla określonego użytkownika

Bardziej szczegółowo

SQL w języku PL/SQL. 2) Instrukcje języka definicji danych DDL DROP, CREATE, ALTER, GRANT, REVOKE

SQL w języku PL/SQL. 2) Instrukcje języka definicji danych DDL DROP, CREATE, ALTER, GRANT, REVOKE Instrukcje SQL dzielimy na następujące kategorie: 1) Instrukcje języka manipulowania danymi (DML) SELECT, INSERT, UPDATE, DELETE, SET TRANSACTION, EXPLAIN PLAN 2) Instrukcje języka definicji danych DDL

Bardziej szczegółowo

QUERY język zapytań do tworzenia raportów w AS/400

QUERY język zapytań do tworzenia raportów w AS/400 QUERY język zapytań do tworzenia raportów w AS/400 Dariusz Bober Katedra Informatyki Politechniki Lubelskiej Streszczenie: W artykule przedstawiony został język QUERY, standardowe narzędzie pracy administratora

Bardziej szczegółowo

Wykład 2. SQL 1 Structured Query Lenguage

Wykład 2. SQL 1 Structured Query Lenguage Wykład 2 SQL 1 Structured Query Lenguage SQL (Structured Query Language) Język zapytań do bazy danych. IBM lata osiemdziesiąte. Stosowany w systemach zarządzania bazami danych (DBMS); Oracle, Paradox,Access,

Bardziej szczegółowo

Zarządzanie strukturą bazy danych Oracle11g

Zarządzanie strukturą bazy danych Oracle11g Zarządzanie strukturą bazy danych Oracle11g Wstęp Baza danych Oracle przechowuje dane użytkowników oraz własne dane słownikowe w następujących strukturach logicznych: przestrzenie tabel segmenty extenty

Bardziej szczegółowo

Optymalizacja poleceń SQL

Optymalizacja poleceń SQL Optymalizacja poleceń SQL Przetwarzanie polecenia SQL użytkownik polecenie PARSER słownik REGUŁOWY RBO plan zapytania RODZAJ OPTYMALIZATORA? GENERATOR KROTEK plan wykonania statystyki KOSZTOWY CBO plan

Bardziej szczegółowo

Zbiór pytań nr 5. 2 Które stwierdzenie opisuje najlepiej zbiór uprawnień dostępny po wykonaniu

Zbiór pytań nr 5. 2 Które stwierdzenie opisuje najlepiej zbiór uprawnień dostępny po wykonaniu Zbiór pytań nr 5 1 Które stwierdzenie opisuje najlepiej zbiór uprawnień dostępny po wykonaniu connect athos/musketeer grant select,insert,update,delete on athos.services to porthos with grant option; grant

Bardziej szczegółowo

Administracja i programowanie pod Microsoft SQL Server 2000

Administracja i programowanie pod Microsoft SQL Server 2000 Administracja i programowanie pod Paweł Rajba pawel@ii.uni.wroc.pl http://www.kursy24.eu/ Zawartość modułu 6 Wyzwalacze Wprowadzenie Tworzenie wyzwalacza Wyzwalacze typu,,po'' Wyzwalacze typu,,zamiast''

Bardziej szczegółowo

Materiały do laboratorium MS ACCESS BASIC

Materiały do laboratorium MS ACCESS BASIC Materiały do laboratorium MS ACCESS BASIC Opracowała: Katarzyna Harężlak Access Basic jest językiem programowania wykorzystywanym w celu powiązania obiektów aplikacji w jeden spójny system. PROCEDURY I

Bardziej szczegółowo

Iwona Milczarek, Małgorzata Marcinkiewicz, Tomasz Staszewski. Poznań, 30.09.2015

Iwona Milczarek, Małgorzata Marcinkiewicz, Tomasz Staszewski. Poznań, 30.09.2015 Iwona Milczarek, Małgorzata Marcinkiewicz, Tomasz Staszewski Poznań, 30.09.2015 Plan Geneza Architektura Cechy Instalacja Standard SQL Transakcje i współbieżność Indeksy Administracja Splice Machince vs.

Bardziej szczegółowo

System Oracle podstawowe czynności administracyjne

System Oracle podstawowe czynności administracyjne 6 System Oracle podstawowe czynności administracyjne Stany bazy danych IDLE nieczynna, pliki zamknięte, procesy tła niedziałaja NOMOUNT stan po odczytaniu pfile-a, zainicjowaniu SGA i uruchomieniu procesów

Bardziej szczegółowo

Programowanie obiektów

Programowanie obiektów Programowanie obiektów lokalne tabele tymczasowe, globalne tabele tymczasowe, zmienne lokalne, zmienne globalne przypisane wartości zmiennym 1 T-SQL Transact SQL (T-SQL), tak jak inne języki programoawania

Bardziej szczegółowo

Instalacja MySQL. http://dev.mysql.com/downloads/mysql/5.0.html#downloads

Instalacja MySQL. http://dev.mysql.com/downloads/mysql/5.0.html#downloads Instalacja MySQL Baza MySQL tworzona jest przez Szwedzką firmę MySQL AB strona domowa projektu to: www.mysql.com Wersję bezpłatną (różniącą się od komercyjnej brakiem wsparcia technicznego, nośnika i podręcznika)

Bardziej szczegółowo

Administracja i programowanie pod Microsoft SQL Server 2000

Administracja i programowanie pod Microsoft SQL Server 2000 Administracja i programowanie pod Paweł Rajba pawel@ii.uni.wroc.pl http://www.kursy24.eu/ Zawartość modułu 15 Proces odzyskiwania Przygotowanie do odtwarzania RESTORE HEADERONLY RESTORE FILELISTONLY RESTORE

Bardziej szczegółowo

Bazy Danych i Usługi Sieciowe

Bazy Danych i Usługi Sieciowe Bazy Danych i Usługi Sieciowe Ćwiczenia I Paweł Daniluk Wydział Fizyki Jesień 2011 P. Daniluk (Wydział Fizyki) BDiUS ćw. I Jesień 2011 1 / 15 Strona wykładu http://bioexploratorium.pl/wiki/ Bazy_Danych_i_Usługi_Sieciowe_-_2011z

Bardziej szczegółowo

Wykład 5 funkcje i procedury pamiętane widoki (perspektywy) wyzwalacze

Wykład 5 funkcje i procedury pamiętane widoki (perspektywy) wyzwalacze Wykład 5 funkcje i procedury pamiętane widoki (perspektywy) wyzwalacze 1 Funkcje i procedury pamiętane Następujące polecenie tworzy zestawienie zawierające informację o tym ilu jest na naszej hipotetycznej

Bardziej szczegółowo

Migracja Business Intelligence do wersji 2013.3

Migracja Business Intelligence do wersji 2013.3 Migracja Business Intelligence do wersji 2013.3 Copyright 2013 COMARCH Wszelkie prawa zastrzeżone Nieautoryzowane rozpowszechnianie całości lub fragmentu niniejszej publikacji w jakiejkolwiek postaci jest

Bardziej szczegółowo

1. Pamięć wirtualna. 2. Optymalizacja pliku pamięci wirtualnej

1. Pamięć wirtualna. 2. Optymalizacja pliku pamięci wirtualnej 1. Pamięć wirtualna Jeśli na komputerze brakuje pamięci RAM wymaganej do uruchomienia programu lub wykonania operacji, system Windows korzysta z pamięci wirtualnej, aby zrekompensować ten brak. Aby sprawdzić,

Bardziej szczegółowo

Currenda EPO Instrukcja Konfiguracji. Wersja dokumentu: 1.3

Currenda EPO Instrukcja Konfiguracji. Wersja dokumentu: 1.3 Currenda EPO Instrukcja Konfiguracji Wersja dokumentu: 1.3 Currenda EPO Instrukcja Konfiguracji - wersja dokumentu 1.3-19.08.2014 Spis treści 1 Wstęp... 4 1.1 Cel dokumentu... 4 1.2 Powiązane dokumenty...

Bardziej szczegółowo

I. Język manipulowania danymi - DML (Data Manipulation Language). Polecenia INSERT, UPDATE, DELETE

I. Język manipulowania danymi - DML (Data Manipulation Language). Polecenia INSERT, UPDATE, DELETE Wykład 9 Implementacja języka SQL w systemach baz danych Oracle manipulowanie danymi (DML), tworzenie, modyfikowanie i usuwanie obiektów bazy danych: tabel i perspektyw, więzów integralności, komentarzy

Bardziej szczegółowo

Przygotowanie bazy do wykonywania kopii bezpieczeństwa

Przygotowanie bazy do wykonywania kopii bezpieczeństwa Przygotowanie bazy do wykonywania kopii bezpieczeństwa Wstęp Wykonywanie kopii bezpieczeństwa i odtwarzanie po awarii jest jednym z kluczowych zadań administratora bazy danych. W momencie wystąpienia awarii

Bardziej szczegółowo