Wydział Elektrotechniki, Informatyki i Telekomunikacji Instytut Informatyki i Elektroniki Instrukcja do zajęć laboratoryjnych
|
|
- Katarzyna Stefaniak
- 9 lat temu
- Przeglądów:
Transkrypt
1 Wydział Elektrotechniki, Informatyki i Telekomunikacji Instytut Informatyki i Elektroniki Instrukcja do zajęć laboratoryjnych Nr ćwiczenia: 11 Praca z bazą danych MySQL wersja 2.0 Temat: Cel ćwiczenia: Wymagane przygotowanie teoretyczne: Sposób zaliczenia: Prowadzący zajęcia: System przywilejów oraz zarządzanie użytkownikami Celem ćwiczenia jest poznanie podstawowych zagadnień związanych z zaimplementowanym w serwerze MySQL systemie przywilejów oraz zasadami autoryzacji użytkowników. Znajomość tych zagadnień jest podstawą bezpiecznego używania MySQL-a. Samodzielne uzupełnienie brakującej do wykonania ćwiczenia wiedzy. Najlepiej korzystając z [3]. Pozytywna ocena ćwiczenia przez prowadzącego pod koniec zajęć. dr inż. Artur Gramacki, dr inż. Jarosław Gramacki 1. Uwagi wstępne Większość informacji podanych w tym rozdziale pochodzi z książki [3] oraz [2]. Ta druga pozycja jest dość wiernym tłumaczeniem dużych fragmentów pierwszej. Poniżej podano tylko część wiadomości niezbędnych do świadomego wykonania zamieszczonych w następnym rozdziale poleceń. Resztę musisz samodzielnie doczytać w dostępnej literaturze. W szczególności chodzi tutaj o składnię poleceń GRANT, REVOKE oraz SET PASSWORD Ogólna zasada działania systemu przywilejów System przywilejów w MySQL (jak i w każdym innym systemie zarządzania bazami danych) gwarantuje, że każdy użytkownik może wykonywać tylko te operacje, na które mu zezwolił administrator. W MySQL przyjęto zasadę, że tożsamość każdego użytkownika łączącego się do serwera jest ustalana wg: komputera, z którego nawiązano połączenie, podanej nazwy użytkownika. Postąpiono tak, gdyż serwer MySQL od początku projektowany był do pracy w środowisku internetowym. Uwzględnianie nazwy komputera jest więc konieczne, gdyż trudno zakładać, że dana nazwa użytkownika będzie unikalna w całym internecie. Przykładowo użytkownik artur pracujący na komputerze mykonos.iie.uz.zgora.pl nie musi być tą samą osobą, co użytkownik artur pracujący na komputerze Kontrola dostępu w MySQL składa się z dwóch etapów: Etap 1: serwer MySQL sprawdza, czy użytkownikowi w ogóle wolno się połączyć, Etap 2: jeżeli użytkownik może się połączyć, serwer kontroluje każde wydane przez niego plecenie, aby sprawdzić, czy użytkownik ma wystarczające przywileje, aby je wykonać. Serwer przechowuje przywileje w tzw. tabelach przywilejów (ang. grant tables) w bazie mysql. Do tej bazy danych dostęp ma zwykle tylko administrator i w związku z tym tylko on może nadawać i odbierać uprawnienia. Serwer wczytuje zawartość tych tabel do pamięci, kiedy Przygotowali: dr inż. Artur Gramacki, dr inż. Jarosław Gramacki 1
2 się uruchamia, i potem korzysta z ich zawartości do podejmowania decyzji o zezwoleniu lub zabronieniu wykonywania określonych czynności. Tabele przywilejów to: user, db, host (w praktyce dość rzadko wykorzystywana), tables priv, columns priv. Zawartością tabel przywilejów można manipulować bezpośrednio. Są to normalne tabele, do których mamy dostęp za pomocą poleceń takich jak SELECT czy też UPDATE. Jednak wygodniej i bezpieczniej robić to za pomocą poleceń GRANT oraz REVOKE. Strukturę tabel przywilejów łatwo jest poznać wydając polecenie DESC. Tabela user wygląda następująco: Field Type Null Key Default Extra Host char(60) NO PRI User char(16) NO PRI Password char(41) NO Select_priv enum( N, Y ) NO N Insert_priv enum( N, Y ) NO N Update_priv enum( N, Y ) NO N Delete_priv enum( N, Y ) NO N Create_priv enum( N, Y ) NO N Drop_priv enum( N, Y ) NO N Reload_priv enum( N, Y ) NO N Shutdown_priv enum( N, Y ) NO N Process_priv enum( N, Y ) NO N File_priv enum( N, Y ) NO N Grant_priv enum( N, Y ) NO N References_priv enum( N, Y ) NO N Index_priv enum( N, Y ) NO N Alter_priv enum( N, Y ) NO N Show_db_priv enum( N, Y ) NO N Super_priv enum( N, Y ) NO N Create_tmp_table_priv enum( N, Y ) NO N Lock_tables_priv enum( N, Y ) NO N Execute_priv enum( N, Y ) NO N Repl_slave_priv enum( N, Y ) NO N Repl_client_priv enum( N, Y ) NO N Create_view_priv enum( N, Y ) NO N Show_view_priv enum( N, Y ) NO N Create_routine_priv enum( N, Y ) NO N Alter_routine_priv enum( N, Y ) NO N Create_user_priv enum( N, Y ) NO N ssl_type enum(, ANY, X509, SPECIFIED ) NO ssl_cipher blob NO x509_issuer blob NO x509_subject blob NO max_questions int(11) unsigned NO 0 max_updates int(11) unsigned NO 0 max_connections int(11) unsigned NO 0 max_user_connections int(11) unsigned NO rows in set (0.02 sec) Kolumny Host, User oraz Password noszą nazwę kolumn zasięgu a pozostałe kolumn przywilejów. Kolumny zasięgu, jak sama nazwa wskazuje, określają zasięg każdego wpisu. Na przykład wpis w tabeli user z wartościami Host oraz User równymi artur oraz mykonos.iie.uz.zgora.pl będzie używany do uwierzytelnienia połączeń nawiązywanych z komputera o podanej nazwie oraz przez klienta o nazwie artur. Przygotowali: dr inż. Artur Gramacki, dr inż. Jarosław Gramacki 2
3 Kolumny przywilejów określają przywileje przyznane przez dany wpis, to znaczy dozwolone operacje, które może wykonywać klient (np. prawo do kasowania zawartości określonej tabeli) Weryfikacja połączenia W pierwszym etapie, gdy następuje weryfikacja połączenia, sprawdzane są wpisy w tabeli user (kolumny Host, User oraz Password). Serwer akceptuje połączenie tylko wtedy, gdy kolumny Host oraz User w którymś z rekordów w tabeli user pasują do nazwy komputera i nazwy użytkownika a klient poda hasło określone w tym rekordzie. Wartości w kolumnach zasięgu tabeli user mogą przybierać następujące wartości: w kolumnie Host można podać dokładną nazwę lub numer IP komputera (np. mykonos.iie.uz.zgora.pl lub ) lub też użyć symboli wieloznacznych (np. %.iie.uz.- zgora.pl. Czy wiesz, co będzie oznaczał ten wpis?). Nazwa localhost wskazuje na komputer lokalny, w kolumnie User symbole wieloznaczne są niedozwolone, ale można podać wartość pustą, która pasuje do każdej nazwy. Jeżeli wpis w tabeli user dopasowany do przychodzącego połączenia zawiera pustą nazwę użytkownika, użytkownika uznaje się za anonimowego, pozbawionego nazwy, a nie za użytkownika o nazwie podanej przez klienta. Oznacza to, że do dalszej kontroli dostępu przez cały czas trwania połączenia używa się pustej nazwy użytkownika, kolumna Password też może być pusta. Oznacza to, że klient może połączyć się bez podawania hasła (oczywiście w praktyce należy unikać takich otwartych furtek ). Z powyższego wynika, że w tabeli user może istnieć wiele wpisów, które pasują do danego klienta (bo można wpisywać symbole wieloznaczne). Serwer MySQL musi więc za każdym razem ustalić, którego z nich powinien użyć. Robi to w następujący sposób: kiedy serwer wczytuje tabelę user do pamięci sortuje wpisy, kiedy klient próbuje nawiązać połączenie, serwer przegląda wpisy w posortowanej kolejności, serwer używa pierwszego wpisu, który pasuje do nazwy komputera i nazwy użytkownika. Przykładowo niech tabela user wygląda tak: +-++ host user +-++ % root % ulab localhost root localhost +-++ Kiedy serwer wczytuje tą tabelę porządkuje wpisy w taki sposób, że najbardziej specyficzne wartości kolumny Host trafiają na początek listy. Najbardziej specyficzne są dosłowne nazwy komputerów i adresy IP a najmniej specyficzny wpis to %, który oznacza dowolny komputer. Następnie wpisy z taką samą wartością Host są porządkowane wg. najbardziej specyficznej wartości w kolumnie User (pusta wartość User oznacza dowolnego użytkownika i jest najmniej specyficzna). Gdy więc klient próbuje się połączyć, serwer przegląda posortowaną listę i używa pierwszego pasującego wpisu. Powyższa tabela po posortowaniu wygląda więc następująco: Przygotowali: dr inż. Artur Gramacki, dr inż. Jarosław Gramacki 3
4 +-++ host user +-++ localhost root localhost % root % ulab +-++ Zauważmy, że powyższy mechanizm autoryzacji może być dla początkującego użytkownika nieco mylący. Parę samodzielnie wykonanych ćwiczeń (patrz dalej) powinno wyjaśnić istotę zagadnienia. Pozostałe kolumny w tabeli user (tzw. kolumny przywilejów) określają przywileje przyznane przez dany wpis (np. prawo do kasowania tabel) Weryfikacja żądań Tabela user Po nawiązaniu połączenia serwer przechodzi do drugiego etapu kontroli dostępu. Sprawdza wpisy w pozostałych kolumnach w tabeli user, gdzie określone są przywileje na poziomie globalnym (obowiązujące dla każdej używanej bazy danych). Przykładowo, gdy w tabeli user jakiś użytkownik ma przyznane uprawnienie Delete priv, może on usuwać rekordy z każdej tabeli w każdej bazie danych! Generalna zasada jest więc taka, aby przywileje w tej tabeli nadawać wyłącznie administratorom i nikomu innemu! Zwykli użytkownicy powinni mieć w tabeli user wszystkie wpisy ustawione na N. Fragment tabeli user pokazano niżej: Host User Select_priv Insert_priv Update_priv Delete_priv Create_priv Drop_priv localhost root Y Y Y Y Y Y... % root Y Y Y Y Y Y... localhost ulab N N N N N N... % ulab N N N N N N Tabela db Budowa tabeli db jest następująca: Field Type Null Key Default Extra Host char(60) NO PRI Db char(64) NO PRI User char(16) NO PRI Select_priv enum( N, Y ) NO N Insert_priv enum( N, Y ) NO N Update_priv enum( N, Y ) NO N Delete_priv enum( N, Y ) NO N Create_priv enum( N, Y ) NO N Drop_priv enum( N, Y ) NO N Grant_priv enum( N, Y ) NO N References_priv enum( N, Y ) NO N Index_priv enum( N, Y ) NO N Alter_priv enum( N, Y ) NO N Create_tmp_table_priv enum( N, Y ) NO N Lock_tables_priv enum( N, Y ) NO N Create_view_priv enum( N, Y ) NO N Przygotowali: dr inż. Artur Gramacki, dr inż. Jarosław Gramacki 4
5 Show_view_priv enum( N, Y ) NO N Create_routine_priv enum( N, Y ) NO N Alter_routine_priv enum( N, Y ) NO N Execute_priv enum( N, Y ) NO N rows in set (0.02 sec) W tabeli db wpisane są przywileje specyficzne dla bazy danych. Zasada działania tej tabeli (dopuszczalne wpisy, sortowanie) jest analogiczna jak dla tabeli user. Oprócz kolumn Host oraz User pojawia się tutaj dodatkowo kolumna Db. Brak jest natomiast kolumny Password. Kolumny Host, User oraz Db noszą nazwę kolumn zasięgu a pozostałe kolumn przywilejów (podobnie jak w tabeli user). Wartości w kolumnach zasięgu tabeli db mogą przybierać następujące wartości: w kolumnie Host można podać dokładną nazwę lub numer IP komputera lub też użyć symboli wieloznacznych. Nazwa localhost wskazuje na komputer lokalny. Wartość % lub wartość pusta oznacza dowolny komputer, w kolumnie Db też można używać symboli wieloznacznych. Wartość % lub wartość pusta oznacza dowolna baza danych, wartość pusta w kolumnie User oznacza użytkownika anonimowego. Serwer wczytuje i sortuje tabelę db w tym samym czasie co tabelę user. Sortowanie odbywa się podług kolumn Host, Db oraz User. Najbardziej specyficzne wartości trafiają na początek listy. Kiedy serwer szuka pasujących wpisów, używa pierwszego znalezionego wpisu Tabele tables priv oraz columns priv Budowa tabel tables priv oraz columns priv jest następująca: Field Type Null Key Default Extra Host char(60) NO PRI Db char(64) NO PRI User char(16) NO PRI Table_name char(64) NO PRI Grantor char(77) NO MUL Timestamp timestamp YES CURRENT_TIMESTAMP Table_priv set( Select, Insert, Update, Delete, Create, Drop, Grant, References, Index, Alter, Create View, Show view ) NO Column_priv set( Select, Insert, Update, References ) NO rows in set (0.01 sec) oraz Field Type Null Key Default Extra Host char(60) NO PRI Db char(64) NO PRI User char(16) NO PRI Table_name char(64) NO PRI Column_name char(64) NO PRI Timestamp timestamp YES CURRENT_TIMESTAMP Column_priv set( Select, Insert, Update, References ) NO rows in set (0.02 sec) Przygotowali: dr inż. Artur Gramacki, dr inż. Jarosław Gramacki 5
6 Tabele tables priv oraz columns priv zawierają przywileje specyficzne dla tabel i kolumn. W tych dwóch tabelach tylko w kolumnie Host mogą pojawić się symbole wieloznaczne. Sortowanie odbywa się podług kolumn Host, Db oraz User. Przypomina to sortowanie tabel user oraz db ale jest prostsze, bo tylko kolumna Host może zawiwrać symbole wieloznaczne. Wartości w kolumnach zasięgu tabel tables priv oraz columns priv mogą przybierać następujące wartości: w kolumnie Host obu tabel można podać dokładną nazwę lub numer IP komputera lub też użyć symboli wieloznacznych. Nazwa localhost wskazuje na komputer lokalny. Wartość % lub wartość pusta oznacza dowolny komputer, w kolumnach Db, Table name oraz Column name nie mogą pojawić się symbole wieloznaczne ani wartośći puste Procedura określania przywilejów użytkownika w przypadku żądań wymagających przywilejów administracyjnych (np. SHUTDOWN) sprawdzane są wpisy w tabeli user, w przypadku żądań związanych z konkretną bazą danych (np. INSERT, UPDATE) sprawdzane są najpierw przywileje globalne w tabeli user. Jeżeli odpowiedni wpis zezwala na żądaną operację, serwer przyznaje dostęp. Jeżeli przywileje w tabeli user są niewystarczające, serwer sprawdza wpisy w tabeli db (a czasami też w tabeli host jest ona jednak rzadko używana w praktyce, więc nie omawiamy jej), serwer szuka w tabeli db pasujących wartości kolumn Host, Db oraz User. Kolumny Host oraz User są dopasowywane do komputera i podanej nazwy użytkownika. Kolumna Db jest dopasowywana do bazy danych, z której chce skorzystać użytkownik. Gdy brak jest wpisu z pasującymi wartościami w kolumnach Host oraz User, serwer odmawia dostępu, po ustaleniu przywilejów specyficznych dla bazy danych, określonych w tabeli db (i ew. też host), serwer dodaje je do globalnych przywilejów określonych w tabeli user. Jeżeli wynik pozwala na wykonanie żądanej operacji, serwer przyznaje dostęp. W przeciwnym wypadku serwer kolejno sprawdza przywileje użytkowników specyficzne dla tabel oraz dla kolumn w tabelach tables priv oraz columns priv, dodaje je do przywilejów użytkownika i na podstawie wyniku przyznaje dostęp lub odmawia dostępu Kiedy uwzględniane są zmiany przywilejów Kiedy serwer MySQL uruchamia się, cała zawartość tabel przywilejów zostaje wczytana do pamięci i od tego momentu jest używana do kontroli dostępu. Kiedy zmieni się zawartość tabel przywilejów rezydujących w pamięci, przywileje już połączonych klientów zmieniają się w następujący sposób: zmiany przywilejów dotyczących tabel i kolumn są uwzględniane przy następnym żądaniu klienta, zmiany przywilejów dotyczących baz danych są uwzględniane przy następnym użyciu instrukcji USE, zmiany przywilejów globalnych i haseł są uwzględniane przy następnym połączeniu klienta. Jeżeli tabele przywilejów zostaną zmodyfikowane za pomocą instrukcji GRANT, REVOKE oraz SET PASSWORD, serwer zostanie poinformowany o zmianach natychmiast i automatycznie uaktualni zawartość tabel przywilejów znajdujących się w pamięci. Przygotowali: dr inż. Artur Gramacki, dr inż. Jarosław Gramacki 6
7 Jeżeli tabele przywilejów zostaną zmodyfikowane za pomocą instrukcji INSERT, UPDATE lub DELETE zmiany nie będą miały wpływu na sprawdzanie przywilejów, dopóki użytkownik nie uruchomi ponownie serwera albo nie nakaże mu ponownie wczytać tabele przywilejów poprzez wydanie polecenia FLUSH PRIVILEGES lub mysqladmin flush-privileges lub mysqladmin reload Oglądanie aktualnie przyznanych przywilejów Oglądanie przyznanych przywilejów poprzez bezpośrednie zaglądanie do tabel systemowych jest dość niewygodne i na dodatek łatwo o pomyłkę. Dużo wygodniejsze jest posługiwanie się poleceniem SHOW GRANTS, które w przejrzysty sposób pokazuje aktualnie przyznane przywileje dla wybranego użytkownika, przykładowo: mysql> SHOW GRANTS FOR % ; ++ Grants for user1@% ++ GRANT USAGE ON *.* TO % IDENTIFIED BY PASSWORD *7921A9FC688328BEEE B19965A735EB590 GRANT ALL PRIVILEGES ON db1.* TO % GRANT SELECT (kol_2b) ON db2. tab_2b TO % GRANT SELECT, INSERT, UPDATE, DELETE ON db2. tab_2a TO % ++ 4 rows in set (0.00 sec) 2. Polecenia do wykonania Rozwiązania wszystkich poniższych zadań należy umieścić w skrypcie (pliku tekstowym). Aby skrypt można uruchamiać wielokrotnie pamiętaj o tym, że na początku skryptu muszą znaleźć się polecenia kasujące odpowiednie wpisy w tabelach przywilejów! W przeciwnym wypadku będą pojawiać się błędy naruszania kluczy głównych (patrz budowa tabel przywilejów). Zakładamy, że ćwiczenia rozpoczynamy wykonywać, gdy w systemie istnieje tylko konto root. (jeden lub dwa wpisy w tabeli user. Czy potrafisz wyjaśnić dlaczego mówimy o jednym lub dwóch wpisach?). W tabelach db, tables priv oraz columns priv nie ma żadnych wpisów. Ćwiczenie 1 Załóżmy, że w tabeli user mamy następujące wpisy: +-++ host user +-++ % lab komp.com +-++ Jaki użytkownik zostanie faktycznie uwierzytelniony, gdy połączenie zostanie nawiązywane przez użytkownika lab z komputera komp.com? Jak sprawdzić, jakiego konta użył serwer do uwierzytelnienia użytkownika? Wyciągnij praktyczne wnioski. Ćwiczenie 2 Sprawdzić, czy w lokalnej instalacji MySQL są jakieś konta, które pozwalają połączyć się do serwera bez podawania hasła lub też istnieją konta anonimowe. Ćwiczenie 3 Przygotowali: dr inż. Artur Gramacki, dr inż. Jarosław Gramacki 7
8 Utworzyć 4 konta użytkowników o nazwach user1, user2, user3, root2. Użytkownicy user1 oraz user2 nie powinni mieć nadanych żadnych uprawnień natomiast użytkownik user3 powinien mieć nadane pełne prawa do bazy db3 (baza o tej nazwie nie musi w tym momencie fizycznie istnieć). Ostatnie konto (root2) ma mieć uprawnienia administratora (takie same jakie posiada użytkownik root). Użyć poleceń CREATE USER..., GRANT USAGE... oraz GRANT ALL PRIVILEGES... Ćwiczenie 4 Utworzyć dwie nowe bazy danych o nazwach db1 oraz db2. Ćwiczenie 5 Nadać pełne prawa do bazy db1 dla użytkownika user1 oraz pełne prawa do bazy db2 dla użytkownika user2. Ćwiczenie 6 Zmienić hasła użytkownikom user1 oraz user2 na dowolne inne. Użyć raz polecenia SET PASSWORD a raz polecenia GRANT USAGE. Ćwiczenie 7 Odebrać użytkownikowi user3 wszystkie uprawnienia do bazy db3. Ćwiczenie 8 Utworzyć 4 tabele (struktura tabel może być zupełnie dowolna). Dwie w bazie db1 oraz dwie w bazie db2. Użytkownikowi user1 nadać prawa SELECT, INSERT, UPDATE, DELETE do pierwszej tabeli użytkownika user2 oraz prawo SELECT do jednej wybranej kolumny w drugiej tabeli użytkownika user2. Użytkownikowi user2 nadać pełne prawa do wszystkich obiektów w bazie db1. Ćwiczenie 9 Za pomocą polecenia SHOW GRANTS wyświetlić uprawnienia wszystkich użytkowników. Ćwiczenie 10 Zapoznać się z aktualną zawartością tabel przywilejów (user, db, tables priv, columns priv). Postarać się dokładnie zrozumieć poszczególne wpisy. Skonfrontować zawartość tych tabel z wynikami zwracanymi przez polecenie SHOW GRANTS. 3. Rozwiązania Poniżej zamieszczono rozwiązania do ćwiczeń z poprzedniego punktu. Celowo drukujemy je bardzo małą czcionką i w mało czytelnym kolorze, abyś miał trudności z ich odczytaniem :-). Postaraj się najpierw samodzielnie rozwiązać zadania, a gdy już naprawdę nic nie będzie Ci wychodziło posłuż się poniższą ściągawką. Przygotowali: dr inż. Artur Gramacki, dr inż. Jarosław Gramacki 8
9 Skrypt demonstracyjny. (C) by Artur Gramacki Aby uruchomić skrypt musisz posiadać uprawnienia root-a. Skrypt tworzy: - dwie przykładowe bazy: db1, db2 - czterech użytkowników : user1, user2, user3, root2 - cztery tabele: db1.tab_1a, db1.tab_1b, db2.tab_2a, db2.tab_2b - nadaje różne uprawnienia Przełączamy się na bazę systemową USE mysql; KASOWANIE WSZYSTKIEGO OPRÓCZ ROOT-a (tak na wszelki wypadek) DROP DATABASE db1; DROP DATABASE db2; DROP USER % ; DROP USER % ; DROP USER % ; DROP USER % ; Sprawdzamy SELECT * FROM user; SELECT * FROM db; SELECT * FROM tables_priv; SELECT * FROM columns_priv; TWORZENIE UŻYTKOWNIKÓW Tworzenie konta użytkownika. Metoda 1. Metoda zalecana. CREATE USER % IDENTIFIED BY pass1 ; Tworzenie konta użytkownika. Metoda 2. USAGE to synonim do nie przyznawaj żadnych uprawnień. GRANT USAGE ON *.* TO % IDENTIFIED BY pass2 ; Tworzenie konta użytkownika. Metoda 3. Jednoczesne utworzenie użytkownika oraz nadanie mu uprawnień do bazy danych (baza o tej nazwie nie musi w tym momencie fizycznie istnieć). Powstaje rekord w tabeli db. GRANT ALL PRIVILEGES ON db3.* TO % IDENTIFIED BY pass3 ; Tworzenie konta o uprawnieniach root-a. GRANT ALL PRIVILEGES ON *.* TO % IDENTIFIED BY passroot2 ; TWORZENIE BAZ DANYCH Utworzenie dwóch nowych baz danych. CREATE DATABASE db1; CREATE DATABASE db2; NADAWANIE UPRAWNIEŃ DO BAZ DANYCH Przypisanie dla użytkowników user1 oraz user2 pełnych praw do baz db1 oraz db2. GRANT ALL PRIVILEGES ON db1.* TO % ; GRANT ALL PRIVILEGES ON db2.* TO % ; ZMIANA HASEŁ UŻYTKOWNIKOM Ustawienie nowych haseł dla użytkowników. Przygotowali: dr inż. Artur Gramacki, dr inż. Jarosław Gramacki 9
10 Oglądamy zawartość tabeli przed zmianą. SELECT Host, User, Password FROM user WHERE User IN ( user1, user2 ); Dokonujemy zmiany haseł. Użycie funkcji PASSWORD jest obowiązkowe. SET PASSWORD FOR % = PASSWORD( pass1new ); Tutaj nie używamy funkcji PASSWORD. GRANT USAGE ON *.* TO % IDENTIFIED BY pass2new ; Oglądamy zawartość tabeli po zmianie. SELECT Host, User, Password FROM user WHERE User IN ( user1, user2 ); ODBIERANIE UPRAWNIEŃ Odebranie użytkownikowi user3 wszystkich uprawnień do bazy db3. REVOKE ALL PRIVILEGES ON db3.* FROM user3; TWORZENIE TABEL I NADAWANIE DO NICH UPRAWNIEŃ Utworzenie dwóch prostych tabelek. Zwróćmy uwagę na to, że tworzymy tabele w innych niż bieżąca bazach (bo na samym początku wydaliśmy polecenie USE mysql; ). CREATE TABLE db1.tab_1a (id_1a INT PRIMARY KEY, kol_1a VARCHAR(10)); CREATE TABLE db1.tab_1b (id_1b INT PRIMARY KEY, kol_1b VARCHAR(10)); CREATE TABLE db2.tab_2a (id_2a INT PRIMARY KEY, kol_2a VARCHAR(10)); CREATE TABLE db2.tab_2b (id_2b INT PRIMARY KEY, kol_2b VARCHAR(10)); Nadajemy użytkownikowi user1 prawa do tabel użytkownika user2 ; GRANT SELECT, INSERT, UPDATE, DELETE ON db2.tab_2a TO % ; GRANT SELECT(kol_2b) ON db2.tab_2b TO % ; Nadajemy użytkownikowi user2 pełne pełne prawa do wszystkich obiektów w bazie db1. GRANT ALL PRIVILEGES ON db1.* TO % ; SPRAWDZANIE UPRAWNIEŃ Sprawdzenie uprawnień poszczególnych uzytkowników. SHOW GRANTS; bieżący użytkownik. Można też: SHOW GRANTS FOR CURRENT_USER(); SHOW GRANTS FOR root2; SHOW GRANTS FOR user1; SHOW GRANTS FOR user2; SHOW GRANTS FOR user3; OGLĄDAMY ZAWARTOŚĆ TABEL PRZYWILEJÓW SELECT * FROM user; SELECT * FROM db; SELECT * FROM tables_priv; SELECT * FROM columns_priv; SHOW TABLES FROM db1; SHOW TABLES FROM db2; Literatura [1] Lech Banachowski (tłum.). SQL. Język relacyjnych baz danych. WNT Warszawa, [2] Paul Dubios. MySQL. Podręcznik administratora. Wydawnictwo HELION, [3] MySQL 5.0 Reference Manual, (jest to najbardziej aktualne opracowanie na temat bazy MySQL stworzone i na bieżąco aktualizowane przez jej twórców. Książka dostępna w wersji elektronicznej pod adresem ). [4] Richard Stones and Neil Matthew. Od podstaw. Bazy danych i MySQL. Wydawnictwo HELION, Przygotowali: dr inż. Artur Gramacki, dr inż. Jarosław Gramacki 10
11 [5] Luke Welling and Laura Thomson. MySQL. Podstawy. Wydawnictwo HELION, Przygotowali: dr inż. Artur Gramacki, dr inż. Jarosław Gramacki 11
Bazy Danych. Ćwiczenie 16: System przywilejów oraz zarządzanie użytkownikami
Instytut Sterowania i Systemów Informatycznych Uniwersytet Zielonogórski Bazy Danych Ćwiczenie 16: System przywilejów oraz zarządzanie użytkownikami opracował: dr inż. Artur Gramacki (a.gramacki@issi.uz.zgora.pl)
CREATE USER
Temat: Administrowanie użytkownikami bazy danych. Po instalacji serwera MYSQL dostępne jest konto o nazwie root. Domyślnie nie ma ono przypisanego hasła, aczkolwiek podczas procesu konfiguracji jest możliwość
Zaawansowane bazy danych i hurtownie danych studia zaoczne II stopnia, sem. I
Wydział Informatyki Politechnika Białostocka Plan wykładu Zaawansowane bazy danych i hurtownie danych studia zaoczne II stopnia, sem. I 1. MySQL 2. Powtórzenie SQL WYKŁAD 2: MySQL: podstawowe obiekty Powtórzenie
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
Po instalacji serwera MYSQL dostępne jest konto o nazwie root. Domyślnie nie ma ono przypisanego hasła, aczkolwiek podczas procesu konfiguracji jest
Autor: J. Karwowska Po instalacji serwera MYSQL dostępne jest konto o nazwie root. Domyślnie nie ma ono przypisanego hasła, aczkolwiek podczas procesu konfiguracji jest możliwość nadania go. Użytkownik
Wydział Elektrotechniki, Informatyki i Telekomunikacji Instytut Informatyki i Elektroniki Instrukcja do zajęć laboratoryjnych
Wydział Elektrotechniki, Informatyki i Telekomunikacji Instytut Informatyki i Elektroniki Instrukcja do zajęć laboratoryjnych Nr ćwiczenia: 9 Praca z bazą danych MySQL wersja 2.0 Temat: Cel ćwiczenia:
mysql> UPDATE user SET Password=PASSWORD('pass') WHERE user='root'; Query OK, 2 rows affected (0.05 sec) Rows matched: 2 Changed: 2 Warnings: 0
Uprawnienia dla uż ytkowników MANIPULACJA UPRAWNIENIAMI Przechodzimy do cześci nadawania oraz odbierania uprawnie ń. Wszelkie zmiany dotyczące tabel w bazie mysql można przeprowadza ć za pomoc ą znanych
Administrowanie serwerami baz danych ZADANIA ADMINISTRATORA BAZ DANYCH
Administrowanie serwerami baz danych ZADANIA ADMINISTRATORA BAZ DANYCH Konfigurowanie serwera Domyślnym folderem instalacyjnym serwera MySQL jest XAMPP\MySQL\... Istotne z punktu widzenia administratora
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
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
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
Ć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
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
Projektowanie systemów baz danych
Projektowanie systemów baz danych Seweryn Dobrzelewski 4. Projektowanie DBMS 1 SQL SQL (ang. Structured Query Language) Język SQL jest strukturalnym językiem zapewniającym możliwość wydawania poleceń do
Wprowadzenie do BD Operacje na bazie i tabelach Co poza zapytaniami? Algebra relacji. Bazy Danych i Systemy informacyjne Wykład 2.
Bazy Danych i Systemy informacyjne Wykład 2 Piotr Syga 16.10.2017 Dodawanie, usuwanie i zmienianie rekordów Wstawianie rekordu wstawianie do tabeli INSERT INTO A VALUES ( fioletowy, okrągły, słodko-kwaśny
Bazy Danych. Ćwiczenie 1: Przygotowanie środowiska pracy dla bazy MySQL z wykorzystaniem XAMPP Portable Lite oraz MySQL-Front
Instytut Sterowania i Systemów Informatycznych Uniwersytet Zielonogórski Bazy Danych Ćwiczenie 1: Przygotowanie środowiska pracy dla bazy MySQL z wykorzystaniem XAMPP Portable Lite oraz MySQL-Front opracował:
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)
Programowanie MSQL. show databases; - pokazanie jakie bazy danych są dostępne na koncie
Programowanie MSQL show databases; - pokazanie jakie bazy danych są dostępne na koncie show databases; - wyświetlenie wszystkich baz danych na serwerze create database nazwa; - za nazwa wstawiamy wybraną
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
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
MySQL. Æwiczenia praktyczne
IDZ DO PRZYK ADOWY ROZDZIA SPIS TRE CI KATALOG KSI EK KATALOG ONLINE ZAMÓW DRUKOWANY KATALOG MySQL. Æwiczenia praktyczne Autor: Marek Nowakowski ISBN: 83-7197-884-7 Format: B5, stron: 114 TWÓJ KOSZYK DODAJ
Przygotowanie środowiska pracy dla bazy MySQL z wykorzystaniem XAMPP Portable Lite oraz MySQL-Front
Przygotowanie środowiska pracy dla bazy MySQL z wykorzystaniem XAMPP Portable Lite oraz MySQL-Front opracował: dr inż. Artur Gramacki (a.gramacki@iie.uz.zgora.pl) KAŻDY student wykonuje SAMODZIELNIE na
Bazy danych 7. SQL podstawy
Bazy danych 7. SQL podstawy P. F. Góra http://th-www.if.uj.edu.pl/zfs/gora/ semestr letni 2005/06 Structured Query Language Używane standardy: SQL92 SQL99 SQL:2003 Żaden dostawca nie jest w pełni zgodny
Bazy danych 10. SQL Widoki
Bazy danych 10. SQL Widoki P. F. Góra http://th-www.if.uj.edu.pl/zfs/gora/ semestr letni 2005/06 Widoki, AKA Perspektywy W SQL tabela, która utworzono za pomoca zapytania CREATE TABLE, nazywa się tabela
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
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
Administracja bazami danych. dr inż. Grzegorz Michalski
Administracja bazami danych dr inż. Grzegorz Michalski Dlaczego MySQL? szybkość programiści twierdzą, że jest najszybszą bazą danych, łatwość użycia MySQL jest względnie prostym systemem w instalacji,
Połączenie z bazą danych : mysql h u root -p Enter password: *******
Połączenie z bazą danych : mysql h 127.0.0.1 -u root -p Enter password: ******* wyświetlenie istniejących baz danych: show databases; Database mysql test Uwaga ważny średnik na końcu każdej linii. Tworzenie
Literatura: SQL Ćwiczenia praktyczne Autor: Marcin Lis Wydawnictwo: Helion. Autor: Joanna Karwowska
Literatura: SQL Ćwiczenia praktyczne Autor: Marcin Lis Wydawnictwo: Helion Autor: Joanna Karwowska SQL zapewnia obsługę: zapytań - wyszukiwanie danych w bazie, operowania danymi - wstawianie, modyfikowanie
Wydział Elektrotechniki, Informatyki i Telekomunikacji Instytut Informatyki i Elektroniki Instrukcja do zajęć laboratoryjnych
Wydział Elektrotechniki, Informatyki i Telekomunikacji Instytut Informatyki i Elektroniki Instrukcja do zajęć laboratoryjnych Nr ćwiczenia: 1 Praca z bazą danych MySQL wersja 2.0 Temat: Cel ćwiczenia:
Przykłady najlepiej wykonywać od razu na bazie i eksperymentować z nimi.
Marek Robak Wprowadzenie do języka SQL na przykładzie baz SQLite Przykłady najlepiej wykonywać od razu na bazie i eksperymentować z nimi. Tworzenie tabeli Pierwsza tabela W relacyjnych bazach danych jedna
Instytut Mechaniki i Inżynierii Obliczeniowej Wydział Mechaniczny Technologiczny Politechnika Śląska
Instytut Mechaniki i Inżynierii Obliczeniowej www.imio.polsl.pl fb.com/imiopolsl @imiopolsl Wydział Mechaniczny Technologiczny Politechnika Śląska Laboratorium 1 Wprowadzenie, podstawowe informacje o obsłudze
SQL> startup pfile=./admin/pfile/initdbx.ora. SQL> create spfile from pfile='$home/admin/pfile/initdbx.ora' create user bolek identified by bolek;
Administrowanie użytkownikami Ćwiczenia laboratoryjne (2) Przygotowanie środowiska 1. Przy pomocy programu Putty, połącz się z serwerem miner.cs.put.poznan.pl. Dla wygody otwórz dwie sesje w dwóch różnych
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ść
Zarządzanie systemami informatycznymi. Zarządzanie internetową bazą danych MySQL
Zarządzanie systemami informatycznymi Zarządzanie internetową bazą danych MySQL Bazy danych Koncepcja bazy danych Relacyjna baza danych Projektowanie internetowej bazy danych Koncepcja bazy danych Bazą
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ść
Trigger jest obiektem związanym z tablicą, który aktywuje się gdy do tablicy następuje odpowiednie zapytanie.
Temat: Wyzwalacze (triggery). Trigger jest obiektem związanym z tablicą, który aktywuje się gdy do tablicy następuje odpowiednie zapytanie. W poniższym przykładzie definiujemy tablicę a następnie trigger
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
Wdrożenie modułu płatności eservice. dla systemu Gekosale 1.4
Wdrożenie modułu płatności eservice dla systemu Gekosale 1.4 - dokumentacja techniczna Wer. 01 Warszawa, styczeń 2014 1 Spis treści: 1 Wstęp... 3 1.1 Przeznaczenie dokumentu... 3 1.2 Przygotowanie do integracji...
SQL 4 Structured Query Lenguage
Wykład 5 SQL 4 Structured Query Lenguage Instrukcje sterowania danymi Bazy Danych - A. Dawid 2011 1 CREATE USER Tworzy nowego użytkownika Składnia CREATE USER specyfikacja użytkownika [, specyfikacja użytkownika]...
Plan ćwiczenia. Rozdział 16 Uwierzytelnianie i autoryzacja w bazie danych. UŜytkownicy i schematy (2) UŜytkownicy i schematy (1) baza danych: ZESP99
Plan ćwiczenia Rozdział 16 Uwierzytelnianie i autoryzacja w bazie danych UŜytkownicy i schematy bazy danych. Uwierzytelnianie i autoryzacja. Przywileje systemowe i obiektowe. Role. Synonimy. Uprawnienia,
Składowane procedury i funkcje
Składowane procedury i funkcje Procedury i funkcje są zestawem poleceń SQL, które są przechowywane na serwerze (tak jak dane w tablicach). Istnieją sytuacje, kiedy procedury i funkcje są szczególnie przydatne.
Autor: Joanna Karwowska
Autor: Joanna Karwowska Wygodniejszym i wydajniejszym sposobem przechowywania i korzystania z dużej ilości danych zapisanych na serwerze jest współpraca z relacyjną bazą danych. 2 1. Utworzyć bazę danych.
Plan ćwiczenia. Rozdział 16 Uwierzytelnianie i autoryzacja w bazie danych. Użytkownicy i schematy (1) Użytkownicy i schematy (2) baza danych: ZESP99
Plan ćwiczenia Rozdział 16 Uwierzytelnianie i autoryzacja w bazie danych Użytkownicy i schematy bazy danych. Uwierzytelnianie i autoryzacja. Przywileje systemowe i obiektowe. Role. Synonimy. Uprawnienia,
PHP: bazy danych, SQL, AJAX i JSON
1 PHP: bazy danych, SQL, AJAX i JSON SYSTEMY SIECIOWE Michał Simiński 2 Bazy danych Co to jest MySQL? Jak się połączyć z bazą danych MySQL? Podstawowe operacje na bazie danych Kilka dodatkowych operacji
PRZESTRZENNE BAZY DANYCH WYKŁAD 2
PRZESTRZENNE BAZY DANYCH WYKŁAD 2 Baza danych to zbiór plików, które fizycznie przechowują dane oraz system, który nimi zarządza (DBMS, ang. Database Management System). Zadaniem DBMS jest prawidłowe przechowywanie
Wykład 5: PHP: praca z bazą danych MySQL
Wykład 5: PHP: praca z bazą danych MySQL Architektura WWW Podstawowa: dwuwarstwowa - klient (przeglądarka) i serwer WWW Rozszerzona: trzywarstwowa - klient (przeglądarka), serwer WWW, serwer bazy danych
Aby uruchomić program klienta i połączyć się z serwerem, należy komendę:
Bazy danych. Komunikacja z serwerem Aby połączyć się z serwerem i móc wykonywać czynności związane z obsługą baz, potrzebny jest program klienta. Razem z serwerem MySQL dostępny jest działający w wierszu
Wydział Elektrotechniki, Informatyki i Telekomunikacji Instytut Informatyki i Elektroniki
Wydział Elektrotechniki, Informatyki i Telekomunikacji Instytut Informatyki i Elektroniki Instrukcja do zajęć laboratoryjnych Przetwarzanie i organizowanie danych : bazy danych Nr ćwiczenia 10 Temat Aplikacje
Odnawialne Źródła Energii I rok. Tutorial PostgreSQL
Tutorial PostgreSQL 1. Instalacja na własnym komputerze: a. Zainstaluj program ze strony: https://www.postgresql.org/download/ Wersja odpowiednia dla systemu operacyjnego Linux, Mac, Windows Przy pierwszym
CREATE DATABASE ksiegarnia_internetowa DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci;
Zestaw ćwiczeń1 Dzięki DDL (Data Definition Language) można operować na strukturach, w których dane są przechowywane czyli np. dodawać, zmieniać i kasować tabele lub bazy. Najważniejsze polecenia tej grupy
Podstawy technologii WWW
Podstawy technologii WWW Ćwiczenie 11 PHP, MySQL: więcej, więcej!, więcej!!. tabel i funkcjonalności. Na dzisiejszych zajęciach zdefiniujemy w naszej bazie kilka tabel powiązanych kluczem obcym i zobaczymy,
Wydział Elektrotechniki, Informatyki i Telekomunikacji Instytut Informatyki i Elektroniki Instrukcja do zajęć laboratoryjnych
Wydział Elektrotechniki, Informatyki i Telekomunikacji Instytut Informatyki i Elektroniki Instrukcja do zajęć laboratoryjnych Nr ćwiczenia: 12 Praca z bazą danych MySQL wersja 2.0 Temat: Cel ćwiczenia:
Bazy danych 9. SQL Klucze obce Transakcje
Bazy danych 9. SQL Klucze obce Transakcje P. F. Góra http://th-www.if.uj.edu.pl/zfs/gora/ semestr letni 2005/06 Klucze obce Klucze obce powiazanie indeksowanej kolumny jakiejś tabeli z indeksowana kolumna
Wykład 8. SQL praca z tabelami 5
Wykład 8 SQL praca z tabelami 5 Podzapytania to mechanizm pozwalający wykorzystywać wyniki jednego zapytania w innym zapytaniu. Nazywane często zapytaniami zagnieżdżonymi. Są stosowane z zapytaniami typu
Kurs. Podstawy MySQL
Kurs Podstawy MySQL Krótkie info. Autorem kursu jest Piotr Jędrusik. Kurs jest własnością serwisu MySQL FAQ www.mysqlfaq.prv.pl, email: mysqlfaq@twister.pl. 1. Tworzymy bazę. Stworzymy pierwszą bazę o
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ł
1. Tworzenie tabeli. 2. Umieszczanie danych w tabeli
1. Tworzenie tabeli Aby stworzyć tabele w SQL-u należy użyć polecenia CREATE TABLE nazwa_tabeli (nazwa_pola1 właściwości_pola1, nazwa_pola2 właściwości_pola2, itd.) Nazwa_tabeli to wybrana przez nas nazwa
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
Komunikacja z bazą danych psql
PostgreSQL jest systemem zarządzania relacyjnymi bazami danych rozprowadzanym na zasadach open source. Twórcą i właścicielem praw autorskich jest Uniwersytet Berkeley w Stanach Zjednoczonych. Ze wszystkich
Bazy danych 5. Samozłaczenie SQL podstawy
Bazy danych 5. Samozłaczenie SQL podstawy P. F. Góra http://th-www.if.uj.edu.pl/zfs/gora/ semestr letni 2007/08 Przykład kolejowy Tworzymy bazę danych zawierajac a (uproszczony) rozkład jazdy pociagów
Internetowe bazy danych
Wyższa Szkoła Technologii Teleinformatycznych w Świdnicy Internetowe bazy danych wykład 1 dr inż. Jacek Mazurkiewicz e-mail: Jacek.Mazurkiewicz@pwr.wroc.pl Cel Kursu przedstawienie zasad projektowania
Struktura drzewa w MySQL. Michał Tyszczenko
Struktura drzewa w MySQL Michał Tyszczenko W informatyce drzewa są strukturami danych reprezentującymi drzewa matematyczne. W naturalny sposób reprezentują hierarchię danych toteż głównie do tego celu
Wydział Elektrotechniki, Informatyki i Telekomunikacji Instytut Informatyki i Elektroniki Instrukcja do zajęć laboratoryjnych
Wydział Elektrotechniki, Informatyki i Telekomunikacji Instytut Informatyki i Elektroniki Instrukcja do zajęć laboratoryjnych Nr ćwiczenia: 2 Praca z bazą danych MySQL wersja 2.0 Temat: Cel ćwiczenia:
System. Instalacja bazy danych MySQL. Autor : Piotr Zielonka tel Piotrków Tryb., sierpień 2018r.
System FOKUS Instalacja bazy danych MySQL Autor : Piotr Zielonka tel. 601 99-73-79 pomoc@zielonka.info.pl Piotrków Tryb., sierpień 2018r. W wersji 2018.7.0 systemu FoKus wprowadzono funkcje umożliwiające
Bazy Danych - Instrukcja do Ćwiczenia laboratoryjnego nr 8
Bazy Danych - Instrukcja do Ćwiczenia laboratoryjnego nr 8 Bazowy skrypt PHP do ćwiczeń z bazą MySQL: Utwórz skrypt o nazwie cw7.php zawierający następującą treść (uzupełniając go o właściwą nazwę uŝytkownika
Po prawidłowym podłączeniu do serwera MySQL należy wybrać bazę, na której będziesz pracować:
Język SQL (Structured Query Language} służy do manipulowania danymi umieszczonymi w relacyjnych bazach danych. Jest językiem uniwersalnym, dzięki czemu praca na różnych systemach baz danych sprowadza się
SIECI KOMPUTEROWE I BAZY DANYCH
KATEDRA MECHANIKI I ROBOTYKI STOSOWANEJ WYDZIAŁ BUDOWY MASZYN I LOTNICTWA, POLITECHNIKA RZESZOWSKA SIECI KOMPUTEROWE I BAZY DANYCH Laboratorium DB2: TEMAT: Relacyjne bazy danych Cz. I, II Cel laboratorium
Wyzwalacze (triggery) Przykład
Wyzwalacze (triggery) Trigger jest obiektem związanym z tablicą, który aktywuje się gdy do tablicy następuje odpowiednie zapytanie. W poniższym przykładzie definiujemy tablicę, a następnie trigger związany
Wprowadzenie do projektowania i wykorzystania baz danych Relacje
Wprowadzenie do projektowania i wykorzystania baz danych Relacje Katarzyna Klessa Dygresja nt. operatorów SELECT 2^2 SELECT 2^30 SELECT 50^50 2 Dygresja nt. operatorów SELECT 2^30 --Bitwise exclusive OR
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
1. Sprawdzenie ustawień konfiguracyjnych. Uruchomienie wiersza poleceń:..\ścieżka\bin>mysqladmin variables
MYSQL 1 1. Sprawdzenie ustawień konfiguracyjnych Uruchomienie wiersza poleceń:..\ścieżka\bin>mysqladmin variables 2 2. Wstępna konfiguracja Po zainstalowaniu aplikacji należy przed uruchomieniem wykonać
Wdrożenie modułu płatności eservice. dla systemu Magento 1.4 1.9
Wdrożenie modułu płatności eservice dla systemu Magento 1.4 1.9 - dokumentacja techniczna Wer. 01 Warszawa, styczeń 2014 1 Spis treści: 1 Wstęp... 3 1.1 Przeznaczenie dokumentu... 3 1.2 Przygotowanie do
Wykład 05 Bazy danych
Wykład 05 Bazy danych Tabela składa się z: Kolumn Wierszy Wartości Nazwa Wartości Opis INT [UNSIGNED] -2^31..2^31-1 lub 0..2^32-1 Zwykłe liczby całkowite VARCHAR(n) n = długość [1-255] Łańcuch znaków o
Bazy danych 4. SQL podstawy. P. F. Góra
Bazy danych 4. SQL podstawy P. F. Góra http://th-www.if.uj.edu.pl/zfs/gora/ 2012 Structured Query Language Używane standardy: SQL92 SQL99 SQL:2003 SQL:2006 (dialekt) SQL:2008 (dialekt) SQL:2011 (dialekt)
INFORMATYKA MÓJ SPOSÓB NA POZNANIE I OPISANIE ŚWIATA PROGRAM NAUCZANIA INFORMATYKI Z ELEMENTAMI PRZEDMIOTÓW MATEMATYCZNO-PRZYRODNICZYCH
INFORMATYKA MÓJ SPOSÓB NA POZNANIE I OPISANIE ŚWIATA PROGRAM NAUCZANIA INFORMATYKI Z ELEMENTAMI PRZEDMIOTÓW MATEMATYCZNO-PRZYRODNICZYCH Informatyka poziom rozszerzony Serwis WWW w projekcie edukacyjnym
Autor: Joanna Karwowska
Autor: Joanna Karwowska Klucz podstawowy PRIMARY KEY Klucz kandydujący UNIQUE Klucz alternatywny - klucze kandydujące, które nie zostały wybrane na klucz podstawowy Klucz obcy - REFERENCES Tworząc tabelę,
Kopie bezpieczeństwa NAPRAWA BAZ DANYCH
Kopie bezpieczeństwa NAPRAWA BAZ DANYCH Sprawdzanie spójności bazy danych Jednym z podstawowych działań administratora jest zapewnienie bezpieczeństwa danych przez tworzenie ich kopii. Przed wykonaniem
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
WPROWADZENIE DO BAZ DANYCH
WPROWADZENIE DO BAZ DANYCH Pojęcie danych i baz danych Dane to wszystkie informacje jakie przechowujemy, aby w każdej chwili mieć do nich dostęp. Baza danych (data base) to uporządkowany zbiór danych z
koledzy, Jan, Nowak, ul. Niecała 8/23, , Wrocław, , ,
Celem ćwiczeń jest zaprojektowanie oraz utworzenie na serwerze bazy danych przechowującej informacje na temat danych kontaktowych. Celem jest również zapoznanie z podstawowymi zapytaniami języka SQL służącymi
Kowalski Marcin 156439 Wrocław, dn. 3.06.2009 Jaśkiewicz Kamil 148592. Bazy Danych 1 Podstawy Projekt Temat: Baza danych do zarządzania projektami
Kowalski Marcin 156439 Wrocław, dn. 3.06.2009 Jaśkiewicz Kamil 148592 Bazy Danych 1 Podstawy Projekt Temat: Baza danych do zarządzania projektami Spis treści Założenia Projektowe...1 Schemat Bazy Danych...1
Założenia do ćwiczeń: SQL Server UWM Express Edition: 213.184.8.192\SQLEXPRESS. Zapoznaj się ze sposobami użycia narzędzia T SQL z wiersza poleceń.
Cel: polecenia T-SQL Założenia do ćwiczeń: SQL Server UWM Express Edition: 213.184.8.192\SQLEXPRESS Authentication: SQL Server Authentication Username: student01,, student21 Password: student01,., student21
Przykładowa baza danych BIBLIOTEKA
Przykładowa baza danych BIBLIOTEKA 1. Opis problemu W ramach zajęć zostanie przedstawiony przykład prezentujący prosty system biblioteczny. System zawiera informację o czytelnikach oraz książkach dostępnych
Blaski i cienie wyzwalaczy w relacyjnych bazach danych. Mgr inż. Andrzej Ptasznik
Blaski i cienie wyzwalaczy w relacyjnych bazach danych. Mgr inż. Andrzej Ptasznik Technologia Przykłady praktycznych zastosowań wyzwalaczy będą omawiane na bazie systemu MS SQL Server 2005 Wprowadzenie
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
Bazy danych. Polecenia SQL
Bazy danych Baza danych, to miejsce przechowywania danych. Dane w bazie danych są podzielone na tabele. Tabele składają się ze ściśle określonych pól i rekordów. Każde pole w rekordzie ma ściśle ustalony
Tworzenie tabel. Bazy danych - laboratorium, Hanna Kleban 1
Tworzenie tabel Tabela podstawowa struktura, na której zbudowana jest relacyjna baza danych. Jest to zbiór kolumn (atrybutów) o ustalonych właściwościach, w których przechowuje się dane. Dane te są reprezentowane
Bazy danych Ćwiczenia projektowe
Bazy danych Ćwiczenia projektowe Przygotował: Piotr Hajder Katedra Informatyki Stosowanej i Modelowania Wydział Inżynierii Metali i Informatyki Przemysłowej, AGH Agenda 01. Powtórka 02. Interfejs CRUD
Dokumentacja SQL API 1
Dokumentacja SQL API 1 Wprowadzenie... 2 Kody błędów... 3 Tworzenie konfiguracji... 4 Konfiguracja po stronie Klienta... 6 Konfiguracja po stronie SerwerSMS... 8 Archiwizacja danych... 9 2 Wprowadzenie
Data modyfikacji: 2013-08-14
Data modyfikacji: 2013-08-14 Co zawiera ten dokument: Ten dokument przedstawia, w jaki sposób zainstalować program Kancelaris PLUS 4 za pomocą standardowego instalatora na serwerze MySQL w wersji 5.0 i
Tworzenie tabeli przez select CREATE TABLE PRAC2 AS SELECT P.NAZWISKO, Z.NAZWA FROM PRAC P NATURAL JOIN ZESP Z
Tworzenie tabeli Np. create table nazwa_tab( \\stworzenie tabeli Id numer(4) constraint PRAC_PK primary key, \\ustawiamy klucz podst. Nazwisko varchar2(30), \\typ tekstowy 30 znaków Kwota number(10,2)
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,
1. Połączenie z bazą danych. W wybranym edytorze tworzymy plik sqltest.py i umieszczamy w nim poniższy kod. #!/usr/bin/python3 import sqlite3
cur.executescript(""" DROP TABLE IF EXISTS uczen; CREATE TABLE IF NOT EXISTS uczen ( Uniwersytet Technologiczno-Przyrodniczy im. J.J. Śniadeckich w Bydgoszczy Instrukcja do ćwiczeń laboratoryjnych Przedmiot
Język SQL. Rozdział 9. Język definiowania danych DDL, część 2.
Język SQL. Rozdział 9. Język definiowania danych DDL, część 2. Ograniczenia integralnościowe, modyfikowanie struktury relacji, zarządzanie ograniczeniami. 1 Ograniczenia integralnościowe Służą do weryfikacji
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
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
Projektowanie bazy danych. Jarosław Kuchta Projektowanie Aplikacji Internetowych
Projektowanie bazy danych Jarosław Kuchta Projektowanie Aplikacji Internetowych Możliwości projektowe Relacyjna baza danych Obiektowa baza danych Relacyjno-obiektowa baza danych Inne rozwiązanie (np. XML)