Bilgisayar Mühendisliği Bölümü

Slides:



Advertisements
Benzer bir sunumlar
ÖRNEK BİR VERİTABANI TASARIMI VE NORMALİZASYONU
Advertisements

VERİTABANLARI ÜZERİNDEN ÇOK KULLANICILI YAZILIMLAR İLE TİCARİ VE MÜHENDİSLİK VERİLERİNİN ANALİZLERİNİN GETİRDİĞİ FAYDALAR Dr. YILMAZ YÖRÜ Yük.Mak.Müh.
T sql-diğer komutlar Metin Akbulut.
COME 339 JAVA-SQL BAĞLANTISI
VB.net ile SQL SERVER’a bağlanmak
MySQL Veritabanı Sunucusu ve MySQL Veritabanı Kullanımı
SQL Enjeksiyon Saldırı Uygulaması ve Güvenlik Önerileri
VERİ TABANI YÖNETİMİ Ders 10: Oracle Nesneleri
SQL Komutlar 5 Sibel SOMYÜREK.
EkoPC Bilişim Ltd. Eğitim Hizmetleri
ORACLE Oracle, büyük miktarda veriyi çok kullanıcılı ortamda, birçok kullanıcının aynı anda aynı veriye erişmesine izin verecek şekilde idare edebilen.
Veri Tabanı Yönetim Sistemleri
Veritabanı Yönetim Sistemleri Hızlı ve Kısa Giriş
Transaction.
Veri Tabanı Yönetim Sistemleri
VeriTabanı Uygulama. Tabloları yaratmak için MySQL komutları.
BÖLÜM 6 SQL SERVER KOMUTLARI.
SQL (STRUCTURED QUERY LANGUAGE)
Bilgisayar Mühendisliği Bölümü
Veritabanı Temel Kavramlar ve
MYSQL 4. HAFTA. mySQL veri türleri INTTamsayı: 'den kadar değişen diziye "signed" (işaretli), 0'dan 'e kadar değişenine.
VIEW (BAKIŞ) OLUŞTURMA
VIEW lerle çalışmak 11.BÖLÜM.
WİNDOWS XP GRUP İLKESİ.
SQL Dili ve MySQL Komutları
GÖRÜNÜŞLER (VİEWS). Görünüş Temel tablolar üzerinde yeni bir tablo almak için yapılan işlemlerin sonucu Sanal tablo- gerçekten veri tabanında yoktur ve.
Veri Tabanı Yönetim Sistemleri 2 Ders 2 Oracle 12c Kurulumu
Iletisim Icin : Blog : E - Mail :
VeriTabanı Uygulama.
Windows için mysql kurulumu sitesinden mysql veritabanının ilgili sürümü indirilir. Biz.
Sibel SOMYÜREK SQL Görev. SQL – 14a Egitselyazilim veri tabanındaki içerik tablosuna yeni bir kayıt ekleyin,
SQL (Structured Query Language). MySQL de Temel Komutlar : CREATE DATABASE isim; verilen isimde bir veri tabanı oluşturur. SHOW DATABASES; Tüm yaratılan.
SQL Sibel SOMYÜREK.
SQL Komutları (2) Uzm. Murat YAZICI.
VERİTABANI MİMARİSİ Talip Hakan ÖZTÜRK Bank ASYA – ORACLE DBA
Veri Tabanı Yönetim Sistemleri 2 Ders 2 Oracle 11g Kurulumu
GRANT RESOURCE TO ayse; GRANT CONNECT TO ayse;
GROUP POLICY OBJECT(GPO)
Create Directory:  Server’daki bir directory’e alias atamak ve bu alias üzerinden bu directory’e db’deki bir dosyayı yazmak veya dosyayı buradan db’ye.
SQL’ e Giriş Uzm. Murat YAZICI.
Bilgisayar Mühendisliği Bölümü
Bilgisayar Mühendisliği Bölümü
Bölüm 8: SQL’de Yetkilendirmeler (Veri Kontrol Dili – DCL)
SİSTEM VERİTABANLARI. Sistem veritabanlarını tanıma. Kendi Login’imizi oluşturma Neler İşleyeceğiz?
Update UPDATE tablo_ismi SET sutun1=‘deger1’ WHERE sutun=deger.
WİNDOWS SERVER 2003’te KULLANICI VE GRUP HESAPLARI.
İnsan Kaynakları Bilgi Sistemleri
GÜVENL İ K. Sunucu Seviyesinde Güvenlik Master Veritabanı (Kullanıcının gerekli yetkileri var mı?) Authentication Mod ◦ Windows Authentication Mod  Varsayılan.
Yeni Veritabanı Oluşturma
Yapısal Sorgulama Dili SQL VTYS Giriş Hafta 5 Ders Notu.
ÖTÖ 451 Okul Yönetiminde Bilgisayar Uygulamaları R. Orçun Madran.
View View’ler select ifadesi ile tanımlanmış sanal tablolardır. Temel amacı base tabloların içerisinden veri kümesi getirip ortaya çıkan sonucu sanal.
Bilgisayar Mühendisliği Bölümü
Örnekler, Rasgele Değer, Login işlemleri ve Yedekleme
Asp.Net Veritabanı İşlemleri
Öğretim Görevlisi Alper Talha Karadeniz Veri Tabanı 2
Veri Tabanı Yönetimi Dersi 1. Laboratuvarı
ÖRNEK BİR VERİTABANI TASARIMI VE NORMALİZASYONU
VIEW lerle çalışmak 11.BÖLÜM.
Bilgisayar Mühendisliği Bölümü
© Marmara Üniversitesi Uzaktan Eğitim Uygulama ve Araştırma Merkezi
5. HAFTA Öğr. Gör. Yunus KÖKVER
Veri Kontrol Dili (DCL) DCL, bir veri tabanı ile ilişkili kullanıcıları ve rollerin izinlerini değiştirmek için kullanılır. Diğer bir deyişle verilere.
VERİ TABANI SQL (STRUCTURED QUERY LANGUAGE) SAVAŞ TUNÇER.
MS SQL VERİTABANININ HOST HESABINA TAŞINMASI SAVAŞ TUNÇER.
Öğretim Görevlisi Alper Talha Karadeniz Veri Tabanı 1
DML ile veri ekleme, silme ve değiştirme
SQL (STRUCTURED QUERY LANGUAGE)
SQL Server - Stored Procedures
Transaction.
Sunum transkripti:

Bilgisayar Mühendisliği Bölümü Veri Tabanı Yönetim Sistemleri 2 Ders 3 Oracle'da Kullanıcı ve Rol İşlemleri Yrd. Doç. Dr. Altan MESUT Trakya Üniversitesi Bilgisayar Mühendisliği Bölümü

SQL Plus SQL Plus, Oracle üzerinde kullanıcı yaratma, nesne yaratma, veritabanını açma/kapama gibi işlemler yapmak amacıyla kullanılan komut istemi arayüzünde (CLI: Command Line Interface) çalışan bir veritabanı yönetim aracıdır. Komut İstemi üzerinden sqlplus yazılarak veya Windows üzerinden ilgili kısayolun tıklanması ile çalıştırılan SQL Plus ilk açıldığında kullanıcı adı ve şifre girilerek mevcut bilgisayardaki varsayılan veritabanına bağlanılabilir (veya sqlplus username/password gibi bir kullanım ile direkt olarak bağlanılabilir). Farklı bir bilgisayardaki veritabanına bağlanmak için aşağıdaki gibi bir yazım kullanılabilir: sqlplus altan/abc123@192.168.2.1/ORCL:1521

SQL Developer SQL Developer, grafik kullanıcı arayüzünde (GUI: Graphical User Interface) çalışan java tabanlı bir veritabanı yönetim aracıdır. SQL Developer ile açık konumdaki bir veritabanına Listener üzerinden bağlanılabilir. SQL Plus ile veritabanı ve listener kapalı konumda iken de bağlanılabilir ve startup ile veritabanı açılıp shutdown ile kapatılabilir. SQL Developer ile bir Access dosyasına da bağlanılabilir.

Listener Oluşturma Oracle kurulumu sırasında sadece yazılım kurulumu yapılıp, sonrasında Database Configuration Assistant ile veritabanı yaratıldı ise, bu veritabanına dışarıdan bağlanılabilmesi için gerekli olan "Listener" yaratılmasının da Net Configuration Assistant ile yapılması gerekir. Eğer yazılım ile birlikte veritabanı kuruldu ise gerekli olan Listener da otomatik olarak yaratılır.

Net Configuration Assistant Listener, Naming Method, Net Service Name ve Directory Usage yapılandırması için kullanılır.

NetCA ile Listener Yapılandırması

NetCA ile Listener Yapılandırması

NetCA ile Listener Yapılandırması

NetCA ile Listener Yapılandırması

NetCA ile Listener Yapılandırması

Net Manager NetCA ile yapılabilen işlemlerin çoğu Net Manager ile de yapılabilir. NetCA ile yaratılan Listener için otomatik olarak Windows altında bir hizmet oluşturulurken, Net Manager ile yaratılan Listener için bu işlem yapılmaz.

Kullanıcı Yaratma Kullanıcı yaratma CREATE USER komutu ile yapılır. Bu komutu çalıştırma yetkisi genellikle DBA yada güvenlik yöneticisi olan kişilerde vardır. CREATE USER AHMET IDENTIFIED BY A853B DEFAULT TABLESPACE USERS TEMPORARY TABLESPACE TEMP PROFILE DEFAULT; Kullanıcının Adı Şifresi Kullanıcı yaratma kodundaki ilk iki satırın yazılması yeterlidir. Diğer 3 satır yazılmasa bile varsayılan tablo alanı, geçici tablo alanı ve profil değerleri için zaten verilen değerler (USERS, TEMP, DEFAULT) varsayılan değerler olarak atanacaktır. Eğer kullanıcının ilk login olduğu anda şifresini belirlemesi isteniyorsa: PASSWORD EXPIRE Eğer kullanıcının hesabının kilitlenmesi isteniyorsa: ACCOUNT LOCK ifadeleri eklenebilir. Eğer IDENTIFIED EXTERNALLY yazılırsa kullanıcı şifre denetimi işletim sistemi üzerinden yapılacak demektir (SQL Server'daki Windows Authentication gibi). Eğer veritabanı bir "Container Database" olarak yaratıldıysa kullanıcı adı C## ile başlamalıdır (C##AHMET).

Kullanıcının Tanımlarını Değiştirme Tüm nesne tanımlarının değiştirilmesinde olduğu gibi kullanıcıların da (kullanıcılar da bir nesnedir) tanımlarını ALTER komutu ile değiştirebiliriz. Aşağıdaki komut AHMET kullanıcısının şifresini değiştirir: ALTER USER AHMET IDENTIFIED BY XY358; ALTER USER yetkisinin kullanıcılara verilmesine gerek yoktur. Sisteme login olabilen (CREATE SESSION yetkisi olan) kullanıcıların şifrelerini değiştirme hakkı vardır.

Kullanıcıyı Silme Diğer nesnelerde olduğu gibi kullanıcı silmede de DROP komutu kullanılır: DROP USER AHMET; Eğer kullanıcının şeması altında nesneler varsa bu nesnelerin de silinmesi için CASCADE ifadesi kullanılmalıdır: DROP USER AHMET CASCADE; Eğer kullanıcı sistemde bağlı durumda ise bağlantısını kesene kadar silinemez.

Sistem Yetkileri Kullanıcıların sistemde neler yapabileceklerini sınırlayan tanımlamalara sistem yetkileri denir. Bir kullanıcı ilk yaratıldığı anda hiçbir yetkisi yoktur. Sisteme bağlanabilmesi için CREATE SESSION yetkisinin kullanıcıya verilmesi gerekir: GRANT CREATE SESSION TO AHMET; GRANT komutu ile aynı anda birden çok yetki birden çok kullanıcıya verilebilir: GRANT CREATE TABLE, UNLIMITED TABLESPACE TO AHMET, MEHMET; Unlimited Tablespace yetkisi verilmezse kullanıcı tablo yaratamaz. Eğer tablespace üzerinde sınırsız değil de sınırlı bir kullanım alanı (kota) verilmek istenirse aşağıdaki ifade kullanılabilir (2MB kota verir): ALTER USER AHMET QUOTA 2M ON "USERS";

Sistem Yetkileri (devam) Sistem Yetkileri çok fazladır, hepsinin ezbere bilinmesinin gereği yoktur. İsminden yetkinin ne olduğu konusunda çıkarım yapılabilir. Eğer yetki isminde “ANY” sözcüğü geçiyorsa farklı şemalar üzerinde işlem yapabilme yetkisi olduğunu gösterir. CREATE TABLE: Kullanıcının sadece kendi şeması üzerinde tablo oluşturma yetkisi. CREATE ANY TABLE: Kullanıcının tüm şemalar üzerinde tablo oluşturma yetkisi.

Verilen Yetkilerin Geri Alınması Kullanıcılara verilen yetkilerin geri alınması REVOKE komutu ile gerçekleştirilir: REVOKE CREATE TABLE FROM AHMET;

Nesne Yetkileri Bir kullanıcının veri tabanındaki nesneler üzerinde ne tür yetkileri olduğunu tanımlamak için kullanılan yapıya nesne yetkisi denir. Bir kullanıcı kendi yarattığı tablolar üzerinde SELECT yetkisine sahiptir, fakat başka şemalardaki tablolar üzerinde SELECT sorgusu yapabilmesi için gerekli yetkinin verilmesi gerekir. GRANT yetkiler [(sütunlar)] ON nesneler TO kullanıcılar [roller] [PUBLIC]; Tüm kullanıcılar

Nesne Yetkisi Verme MEHMET kendisine ait olan PERSONEL tablosu üzerinde SELECT sorgusu yapma yetkisini AHMET’e vermek isterse: GRANT SELECT ON PERSONEL TO AHMET; AHMET kendisine ait olan OGRENCILER tablosunun sadece ADI ve SOYADI alanları üzerinde UPDATE yapma yetkisini MEHMET’e vermek isterse: GRANT UPDATE (ADI, SOYADI) ON OGRENCILER TO MEHMET;

Rol Rol, birçok yetkinin bir araya getirilmesi ile oluşan yetki gruplarına verilen isimdir. Bir rol kendi içinde başka rolleri de içerebilir. Örneğin Oracle 11g’de DBA Rolünün; 16 Rolü 202 Sistem Yetkisi 284 Nesne Yetkisi vardır. * Oracle Enterprise Manager üzerinden görülebilir. Oracle kendi ürettiği standart rollerin kullanılması yerine, her DBA’in kendisi için ihtiyaç duyduğu rolleri tanımlamasını tavsiye eder.

Rol Yaratma Rol de bir nesne olduğu için CREATE komutu ile yaratılır. Fakat diğer nesnelerden farklı olarak, yaratan kullanıcının şeması altında bu roller görünmez (rol bir kişiye ait değildir). CREATE ROLE DENEME; GRANT CREATE TABLE, CREATE VIEW, UNLIMITED TABLESPACE TO DENEME; GRANT DENEME TO AHMET; GRANT DENEME TO ALTAN WITH ADMIN OPTION;

SYSDBA ve SYSOPER Sistem Yetkileri SYSDBA: Bu yetki ile veritabanına bağlanan kullanıcı tüm işlemleri yapabilme iznine sahip olur. Bunlardan bazıları: STARTUP ve SHUTDOWN işlemlerini gerçekleştirir. CREATE DATABASE (Veritabanı yaratma) ALTER DATABASE: open, mount, back up, karakter seti değiştirme CREATE SPFILE (Sistem Parametre Dosyası yaratma) ARCHIVELOG ve RECOVERY SYSOPER: Bu yetki ile veritabanına bağlanan kullanıcı temel işletim görevlerini yapma iznine sahip olur, fakat kullanıcı verilerini göremez. ALTER DATABASE: open, mount, back up

SYS ve SYSTEM Kullanıcıları SYS kullanıcısı tüm veri tabanının ve veri sözlüğünün sahibidir. Sisteme giriş yaparken AS SYSDBA eki ile bağlanır. Sahip olduğu SYS şeması üzerinde değişiklik yapılmamalıdır. SYSTEM kullanıcısı veri sözlüğü dışında başka idari işler ile ilgili tabloları ve görünümleri sağlayan SYSTEM şemasının sahibidir. Sisteme Normal kullanıcı olarak giriş yapar.

SYS şemasının nesnelerine erişme yetkisi olan roller SELECT_CATALOG_ROLE: Kullanıcılara veri sözlüğü görünümleri üzerinde sorgu yapma yetkisi verir. EXECUTE_CATALOG_ROLE: Kullanıcıların veri sözlüğü üzerinde paket (package) ve prosedür yürütme yetkisi olmasını sağlar. DELETE_CATALOG_ROLE: Sistem izleme (audit) tabloları olan SYS.AUD$ ve SYS.FGA_LOG$ tablolarında silme yetkisi verir. DİKKAT: Bu gibi rollerin kullanıcılara verilmesi risk oluşturur.

Enterprise Manager Database Express Oracle 12c Enterprise Manager (EM) Database Express, Oracle veritabanının durumunun izlenmesi ve bazı yönetimsel işlerin yapılabilmesi için kullanılan web tabanlı bir yazılımdır. 10g ve 11g'deki EM Database Control'den farklı olarak EM Database Express ile tablo ve prosedür gibi veritabanı nesneleri yaratılamaz. Kullanıcı ve Rol yaratma ile bunlar üzerinde yetki değişiklikleri gibi işlemler ise Security menüsünden yapılabilir. Database Configuration Assistant ile veritabanı yaratıldıktan sonra çıkan bilgi penceresinde (bak: geçen hafta) EM Database Express'e erişmek için gerekli URL bilgisi verilir: Oracle 12c için: https://localhost:5500/em Oracle 11g için: https://localhost:1158/em NOT: Kurulum sırasında güvenlik duvarı izinlerinden birini EM için 5500 portu (11g'de 1158) diğerini ise Listener için 1521 portunun açılması için vermiştik.

EM Database Express ile RESOURCE Rolü: RESOURCE Rolü 8 farklı sistem yetkisi içerir. CREATE SESSION yetkisi bunlardan biri olmadığı için bu yetkiyi (veya bu yetkiyi içeren CONNECT rolünü) de kullanıcıya vermemiz gerekir. UNLIMITED TABLESPACE veya kota vermeyi de unutmamak gerekir.