Üye Ol | Bağlan
ANASAYFA | VERİTABANI | PROGRAMLAMA | HAKKIMIZDA | BLOG | ETKİNLİKLER | KAYNAKLAR
Yazı Hakkında
  Seviye:
Yazar:Yasin UZUN
Okunma: 8471
Oylanma:62 kişi (7,42/10)
 
 
Tavsiye Et
Yazıcı Dostu
Evrak Çantama Al
 
KATEGORİLER
  VERİTABANI
    ORACLE
    HIZLI SQL KURSU-1
    SQL SERVER 2005
    SQL SERVER 2000
PROGRAMLAMA
    JAVA
    ADO.NET
    MOBİL PROGRAMLAMA
    ASP.NET
    VB.NET
    C# ve C#.NET
İŞARETLEME DİLLERİ
    HIZLI WEB PR. KURSU
    XML
HABERLER
EĞİTİM & SERTİFİKA
KİTAP
SÖYLEŞİ
HAKKIMIZDA
BLOG
ETKİNLİKLER
 
  XHTML,CSS,VBScript,ASP SQL Lab 2.0 Beta
Hızlı SQL Kursu(Yeni)
 
 
Son Eklenenler
 
SQL SERVER 2005
COALESCE Fonksiyonu ile Dinamik Where Şartları Hazırlamak

Transact SQL’de SQL Server 2008 Yenilikleri-1

SQL Server’da verileri Türkçe Karaktere Dönüştürmek

StrToCursor Prosedürü ile Hızlı ve Kolay Cursor Açmak

Triggerı Hangi Olayın Tetiklediğini Tespit Etmek

İleri Cursor Açma Tekniği

Yazılımcılar için SQL Server Erişim Güvenliği

JAVA
Java'ya GiriŞ - 3 : JCreator Editörü

HABERLER
Verivizyon.com Topluluk Kurucusuna MVP Ödülü

Verivizyon yeni sunucularında

 
Bu Bölümden
Windows için Oracle 10g Kurulumu(12999 yükleme)
Oracle ile Tanışma(9305 yükleme)
Oracle Veritabanında Kullanıcı Oluşturma(8471 yükleme)
Oracle Kurulumu(3918 yükleme)
Oracle Database Server'da Dosya Dizin Yapısı ve Bağlantı Araçları(2812 yükleme)
SQL*Plus'a Giriş(2788 yükleme)
Oracle'ı Sistemden Kaldırmak(2297 yükleme)
TOAD ile Export- Import İşlemi(1959 yükleme)
 
 
E-LİSTE
BT ve özellikle Veritabanı ile ilgili haber, yenilik ve etkinlikler hakkında önceden haber almak için bize e-mail adresinizi bırakabilirsiniz.

ANKET
SQL Server 2008'e geçtiniz mi?
Sorunsuz Geçtik
2005'e yeni geçtik
2000 bize yetiyor.
 

 


Oracle Veritabanında Kullanıcı Oluşturma


Bu makalemizde bir Oracle veritabanında Enterprise Manager Console yönetim aracını
kullanarak nasıl farklı kullanıcılar oluşturup bunlara yetki verilebileceğini inceleyeceğiz.

Giriş

Diğer sunucular gibi Oracle Veritabanının da temel güvenliği farklı kullanıcılar ve bu kullanıcılara verilen yetkilendirme ile sağlanır. Aynı zamanda bir Oracle veritabanı, mantıksal olarak kullanıcılar üzerine kuruludur. Yani her nesnenin (tablo, görüntü (view), indeks, tetikleyici (trigger) gibi.) mutlaka ait olduğu bir kullanıcı vardır. Bu yüzden Oracle veritabanı yapısını anlamak için kullanıcı yönetimini bilmekte yarar var.

Enterprise Manager ile Kullanici Oluşturma

ilk olarak, veritabanımıza, Enterprise Manager Console programı ile girmek için tarayıcımızı (MS Internet Explorer, Mozilla Firefox, vs. olabilir) açıp http://localhost:5500/em adresini girelim. Karşımıza ilk olarak login penceresi çıkacaktır.

Daha sonra en yetkili ikinci kullanıcı olan “system” kullanıcısı ile veritabanına girelim.

Karşınıza veritabanımızın açılış sayfası çıkacaktır. Bu sayfanın sol üst kısmında “Home”, “Performance”, “Administration” ve “Maintenance” başlıklı dört sekme bulunur. Kullanıcı yönetimine ait işlemlere, Administration sekmesinden ulaşılacağından bu sekmeye tıklayalım.

Administration sekmesinde, veritabanı yönetimi ile ilgili yönetimsel işlemler yapılabilecek bir çok bağlantı vardır. Kullanıcı yönetimi ile ilgili sayfalara “Security” başlığının altında, “Users” bağlantısına tıklayarak ulaşılır.

“Users” bağlanıtısına tıklanarak ulaşılan sayfada veritabanında kayıtlı olan kullanıcılara ait bilgiler listelenir. Bu bilgiler:

Account Status: Kullanıcı hesabının durumunu gösterir. Bu alanda “Open” yazıyorsa, hesabın kullanıma açık olduğunu, “Locked” yazıyorsa hesabın kilitli olduğunu ve bu kullanıcının veritabanına bağlanmasına izin verilmeyeceğini ifade eder. “Expired” kelimesi, kullanıcının şifre süresinin dolduğunu ve veritabanına bağlanmak istediğinde şifre yenilemeye zorlanacağını bildirir.

Expiration Date: Hesabın şifresinin dolduğu veya dolacağı zamandır.

Default Tablespace: Kullanıcı herhangi bir nesne (Tablo, index, vs.) yaratırken eğer özel olarak bir Tablespace adı belirtmez ise nesnenin oluşturulacağı Tablespace’i belirtir.

Profile : Hesaba ait genel özelliklerin (şifre değiştirme periyotları gibi) listelendiği yapıdır.

Created: Hesabın ne zaman yaratıldığını belirtir.

Siz hiç kullanıcı yaratmamış da olsanız bu sayfada birçok hesap listelidir. Bu hesaplar, veritabanı kurulumu esnasında belirli amaçlar i.in otomatik olarak oluşturulan hesaplardır, çoğu kilitli durumdadır ve gerçek anlamda kullanıcı değillerdir. Yeni bir kullanıcı oluşturmak için sayfanın sağ tarafında yer alan “Create” tuşuna basın.

Yeni bir kullanıcı hesabı oluşturmak oldukça kolaydır. İlk olarak hesap adını girin. Profile ve Authentication alanlarını boş bıraktıktan sonra, hesabın şifresini iki kez girin. Zorunlu olmamakla birlikte ileride sorun çıkmaması için şifrenizi ANSI karakterlerle (ingiliz alfabesinde bulunan harf ve rakamlar) oluşturmanızı “i” harfini kullanmamanızı öneririm. Bu durumda şifrede büyük/küçük harf ayrımı yoktur.

Sıra, kullanıcının nesnelerinin yerleştirileceği Tablespace seçimine geldi. Bunun için, “Default Tablespace” alanına Tablespace’in adını doğrudan yazabileceğiniz gibi, kutunun sağ tarafındaki el fenerine tıklayarak mevcut tablespace lerin listelenmesini de sağlayabilirsiniz.

Listlenen Tablespace lerden birini seçerek “select” tuşuna basınız.

Gördüğünüz gibi seçtiğimiz Tablespace in adı “Default Tablespace” kutusuna işlendi.

Bir sonraki adımda Geçici (Temporarı) Tablespace seçeceğiz. Geçici Tablespace, bir kullanıcının indeks oluşturma gibi bazı işlemler için kullanılan alandır. Geçici Tablespace’i seçmek için “Temporary Tablespace” etiketinin yanındaki kutunun sağındaki el fenerine tıklayın. Karşınıza aşağıdakine benzer bir pencere çıkacaktır.

Genellikle kurulum sırasında bu amaç için “TEMP” adında bir Tablespace oluşturulur ve tüm kullanıcılar bu Tablespace’i kullanırlar. Biz de bu kurala uyup “TEMP” Tablespace ini geçici tablespace olarak seçelim ve “Select” tuşuna basalım.

Bu aşamada “OK” tuşuna basarak kullanıcı hesabını oluşturabilirsiniz. Ama ondan önce, sayfanın üst ve alt tarafında yer alan sekmelere dikkatinizi çekmek istiyorum. şu anda “General” sekmesinde bulunuyoruz. “Roles” sekmesine tıklarsanız, kullanıcının sahip olduğu roller listelenir. Oracle Veritabanında “rol” kavramı, belirli yetkileri toplu halde içinde barındıran yapılardır ve bir rol, bir kullanıcıya verildiğinde o kullanıcı, rolün barındırdığı tüm yetkilere sahip olur. Bir kullanıcı pek çok role sahip olabilir. Enterprise Manager Console ile bir kullanıcı oluşturduğunuzda, veritabanına başlanıp tablo oluşturma yetkisi sağlayan “CONNECT” rolü, varsayılan olarak oluşturulan kullanıcıya verilir. Rol adının sağ tarafında “Admin Option” ve “Default” isimleriyle iki adet onay kutusu mevcuttur. şu an olduğu gibi “Default” onay kutusu seçili ise kullanıcı bu rolün yetkilerini sadece kendisi kullanabilir. “Admin Option” ın seçili olması durumunda ise rolün verildiği kullanıcı bu rolü başkalarına da verebilir.

Bir sonraki “System Privileges” sekmesi ise kullanıcıya verilen (indeks oluşturma, trigger yaratma gibi) çeşitli sistem yetkilerini listeler. Henüz kullanıcıya bu çeşit bir yetki vermediğimiz için liste boş.

“Object Privileges” sekmesi de kullanıcının, özel olarak bir nesne üzerinde sahip olduğu yetkileri ifade eder. Örneğin “B” kullanıcısı, “A” kullanıcısına ait “Ogrenciler” tablosunu sadece okuma yetkisine sahip iken, “C” kullanıcısı bu tablo üzerinde hem okuma, hem yazma yetkisine sahip olabilir.

“Quotas” sekmesinde ise kullanıcının, mevcut “Tablespace” ler üzerinde kullanma yetkisi verilen alan miktarları listelenir. Gördüğünüz gibi oluşturmakta olduğumuz kullanıcının, henüz oluşturduğu bir nesneyi koyacak yeri yok.

Sırada “Consumer Groups” sekmesi var. Oracle Veritabanı varsayılan olarak demokratik bir sistemdir. Yani, bütün kullanıcılar eşit haklara sahiptir. Ama zaman zaman bu çerçevenin dışına çıkmak istenirse de buna olanak tanır. Örneğin veritabanı yöneticisi, eğer veritabanının kurulu olduğu sistemde aşırı yüklenme olduğunda kaynakların kullanıcılar arasında eşit olarak paylaştırılması yerine belli kullanıcılara öncelik verilmesini istiyorsa, Oracle'ın “Consumer Group” yapısından yaralanabilir. Ayrıntıları başka bir makaleye havale ederek şimdilik geçiyorum.

“Proxy User” kavramının ne ifade ettiğini şu an hatırlayamıyorum. Bu konuda bilgi sahibi arkadaşlar mesaj atarlarsa bunları bu kısımda paylaşabilirim.

Her neyse, sağ üst köşedeki “OK” tuşuna bastığınızda kullanıcı oluşturulacak ve listede görünecektir.

“CANER” isimli bu kullanıcımız herkese hayırlı olsun. Artık EM Console u kapatabilirsiniz.

şimdi CANER in marifetlerini görebilmek için sqlplus'ı açıp bu kullanıcı ile veritabanına başlanalım. Sqlplus'a giriş makalesinde belirtildiği gibi sqlplus'tan veritabanına başlanma yöntemlerinden birisi kullanycı_adı/şifre@veritabanı_adı şeklinde idi. Test amaçlı olduğu için “CANER” in şifresini de “caner” koymuştum. şimdi bu şekilde veritabanına başlanalım.

Başarıyla veritabanına başlandık. şimdi SQLPlus bizden komut bekliyor.

Sistem tarihini öğrenmek için “select sysdate from dual” sorgusunu çalıştıracağım.

Tarihi aşağıdaki gibi gösterdi.

şimdi “CANER” in sahip olduğu tabloları listeleyelim.

CANERin henüz tablosu olmadığı için herhangi bir kayıt dönmedi.

Öyleyse basit bir tablo oluşturalım, adı da “CANER1” olsun.

Ama hata mesajı aldık. Hata, CANER in varsayılan Tablespace i olan “USERS” Tablespace inde kotasının (yazma yetkisi verilen alan) olmamasından kaynaklanıyor. Bu pencereyi (açık şekilde) olduğu gibi bırakın.

EM Console a tekrar girmek için tarayıcınıza gerekli adresi girin ve system kullanıcısı ile veritabanına bağlanın.

Gelen sayfada, administration sekmesine geçin.

Users bağlantısına tıklayın.

“CANER” üzerine tıklayın.

“Quotas” sekmesine geçin.

Gördüğünüz gibi CANERin USERS tablespace i üzerinde kotası yok.

USERS satırında Values alanına sıfırdan farklı bir değer yazın.

Eğer bu işlemi, EM Console kullanmadan, SQL dili ile nasıl yapabileceğinizi öğrenmek istiyorsanız “Show SQL” tuşuna basabilirsiniz. Geri dönmek için ise “Return” e basın.

“Apply” tuşuna bastığınızda değişiklik gerçekleşecektir.

Sağ üst köşedeki “Logout” tuşuna tıklayarak EM Console'dan çıkabilirsiniz.

şimdi, CANER kullanıcısı ile girdiğimiz sqlplus penceresine geri dönelim.

Yukarı ok tuşuna basarak az önce başaramadığımız tablo yaratma işlemini tekrar deneyelim.

Gördüğünüz gibi bu sefer başardşk, aferin bize! şimdi başarımızı belgelemek için CANERin tablolarını listeletelim.

Gördüğünüz gibi CANER1 tablomuz göründü.

Bu tabloya şimdi kayıt girelim.

Girilen kayıtları listeleyelim.

Son olarak girdiğimiz kaydı kalıcı hale getirmek için “commit” komutunu verelim.

Artık sqlplus'tan çıkabiliriz.

Sonuç

Böylelikle makalemizin sonuna geldik. Bu makalede Oracle veritabanında genel hatlarıyla bir kullanıcı oluşturmaya değindim. Oracle veritabanında kullanıcı ve güvenlik, üzerine tek başına yüzlerce sayfa yazılabilecek bir konudur. İleride belki bazı alt alanlara da değinebiliriz. Ancak, ayrıntılı bilgi için Oracle dokümantasyonunu incelemenizi tavsiye ederim.

[02.04.2007]

Oy Ver: Kötü 1  2  3  4  5  6  7  8  9  10  İyi


YORUMLAR

kardeşim eline sağlık.
birşey sormak istiyorum.benim oluşturduğum veritabanı başkaları tarafından EM sayesinde görüntülenebilirmi.
snoopboy 24.05.2007 11:13:00

kullanici olushdur
create user verivizyon identified by verivizyon / grant dba to verivizyon / grant all privileges to verivizyon /
azer0soft 11.10.2007 08:06:00

YORUMUNUZ
Kullanıcı :
Başlık :
İçerik:
Lütfen Giriş Yapınız

Yasin UZUN
2004 Bilkent Üniversitesi Bilgisayar Mühendisliği bölümü Mezunu ve aynı bölümden yüksek lisans derecesine sahip. Halen ODTÜ Enformatik Enstitüsü Bilişim Sistemleri Ana Bilim Dalında doktoraya devam ediyor. Bilişim Teknolojisi ilgi alanları: Oracle, Unix, Java. OCA (Oracle Certified Associate) sahibidir.
Yazara Ait Son Eklenen Makaleler
Java'ya GiriŞ - 3 : JCreator Editörü(01.11.2007)
Java'ya Giriş - 2 : İlk Java Programı(04.07.2007)
Java'ya Giriş - 1 : İndirme ve Kurulum(19.06.2007)
Oracle Veritabanında Kullanıcı Oluşturma(02.04.2007)
SQL*Plus'a Giriş(14.07.2006)
Oracle ile Tanışma(22.05.2006)
Windows için Oracle 10g Kurulumu(10.05.2006)
Oracle'ı Sistemden Kaldırmak(24.04.2006)
 

© 2003 - 2005 Verivizyon.com 'Developer Academy'. Tüm hakları saklıdır. Kullanım Sözleşmesi | Gizlilik İlkeleri | İletişim