8 sonuçtan 1 ile 8 arası
  1. #1
    Acemi Üye Array
    Üyelik tarihi
    Sep 2005
    Yer
    Kocaeli
    Mesajlar
    20
    İtibar Gücü
    0

    A' dan Z' ye SQL

    SQL Server 2000 Kurulumu ve Yönetimi
    DERS 1: SQL SERVER’I TANIMAK
    Ders sonunda yapabilecekleriniz:
    • Veritabanı kavramını tanımlamak.
    • İlişkisel veritabanı sistemlerini tanımlamak.
    • SQL Server’daki servisleri açıklamak.
    • SQL Server 2000’in yeniliklerini açıklamak.

    I. MİCROSOFT SQL SERVER
    Microsoft SQL Server, veritabanı (database) alanında uzunca bir süredir yapılan çalışmalar sonunda geliştirilmiş bir veritabanı yönetim sistemi yazılımıdır. Yazılım sunucu (server) üzerinde çalışır ve çok sayıda kullanıcıya hizmet verir. Günümüzde bilgisayar otomasyonunun uygulandığı hemen her kurumda özel ya da genel birtakım veritabanları çalışmaktadır. Örneğin resmi dairelerdeki kayıt sistemleri ya da ticari uygulamalar büyük ölçüde veritabanı sistemidirler.
    SQL Server’ın özellikleri:
    • Veritabanı yönetim sistemidir.
    • Client/Server mimariye sahiptir.
    • İlişkisel bir yapıya sahiptir.
    • Veri işleme araçlarına sahiptir.
    • Uygulama geliştirmeye açık bir ortamdır.

    SQL Server, client/server bir veritabanı yönetim sistemidir. Client ile server arasında isteklerin gönderilmesi için SQL dili kullanılır. RDBMS (Relational Database Management System) özelliği ile verilerin etkin bir şekilde organize edilmesini ve bütünleşmesini sağlar.
    Tablo: Microsoft SQL Server’ın genel özellikleri
    Özellik Açıklama
    Ölçeklenebilir mimari Bir ya da daha çok işlemci üzerinde çalışabilir ve gelecekteki
    isteklere yanıt verebilme.
    Sağlam ve güvenli işlem Sistem arızalarına ve veri kayıplarına karşı tam koruma
    Windows NT ve Windows 2000 ile tümleşik Windows NT ve 2000 üzerinde çalışır. Performance Monitor ve Event Viewer yardımcı programlarını kullanır. İstenirse tümleşik güvenlik sistemi ile işletim sisteminin kullanıcılarını kullanır.
    Geniş bir Client desteği Macihtosh, UNIX, DOS, OS/2 ve Windows istemcilerinin desteği.
    Replication (Yineleme) Verinin kopyalanarak güvenliğini artıran bir çoğaltma sistemidir. Dağıtılmış database uygulamaları destekler.
    Merkezi yönetim Birçok server ile birlikte çalışır. Çok sayıda Windows NT ve diğer işletim sistemlerine hizmet verir.
    Görev programlama ve mesajlaşma Yedekleme, replication gibi belli görevlerin tanımlanmasını ve zamanlarda çalıştırılmasını sağlar. Bir görevin tamamlanmasının ardından sistem yöneticisi bir e-mail gönderebilir. İşlerin ve mesajların yönetimini sağlar.
    Backup (Yedekleme) ve Restore (Geri Yükleme) Yedekleme işlemlerinin tarihini tutar ve belli bir zamana ait verilerin yedeklenmesini sağlar.
    Veritabanı Bakım Sihirbazı Yedekleme, tutarlılık ve istatistik kontrolları gibi işlemlerin bir Database Maintenance Plan Wizard ile yapılmasını sağlar.
    Web Assistant Verilerin HTML formatında saklanması ve SQL Server verilerinin Web Server’a ulaştırılmasını sağlar.
    SQL Profiler Server aktivitilerinin izlenmesi.
    Uzaktan Yönetim Bir sistem yöneticisinin birçok Server’ı yönetmesini sağlar.
    Transact-SQL Yeni özelliklere sahip bir SQL veritabanı işleme dili.
    Wizards ve Asistanlar Birçok görevi yerine getirmek için çok sayıda sihirbaza (wizards) ve asistana sahiptir.

    A. İLİŞKİSEL DATABASE SİSTEMİ
    İlişkisel veritabanı sistemi (relational database system), verilerin bütünlük içinde organize edilmesini sağlar. Böylece kurumsal anlamda bütün veriler birbirine bağlanır. Bu kavram özellikler veritabanı düzenlenmesi bölümünde geniş olarak ele alınacaktır. İlişkisel veritabanı sistemleri daha geniş bir adla; ilişkisel veritabanı yönetim sistemi adıyla anılmaktadır.
    RDBMS (Relational Database Management System-İlişkisel Veritabanı Yönetim Sistemi), bu alandaki standardı. Bu özellik sayesinde şu işlemlerin yapılmasına olanak tanır:
    • Verilerin doğru ve etkin biçimde saklanmasını sağlar.
    • İlişkisel bütünlük kuralı (data integrity) sağlanır.

    B. MİCROSOFT TRANSACT-SQL
    SQL (Structured Query Language), veritabanı yönetim sistemlerinde standart olarak kullanılan bir dildir. Zaman içinde değişik firmalar tabanlı ve değişik sürümlerde SQL dilleri ortaya çıkmıştır. Microsoft, bu alandaki standardını Microsoft Transact-SQL olarak adlandırmıştır.
    C. MİCROSOFT SQL SERVER SERVİSLERİ
    SQL Server’ın çalışmasında servisler oldukça önemlidir. Özellikle temel işlemlerin yanı sıra diğer bilgisayarlarla iletişim için gerekli olan servislerin sürekli çalışıyor olması ve uygun şekilde yapılandırılması sistem yönetim işlerinin en başında gelir.
    SQL Server, üç ana servisten oluşur:
    • MSSQLServer
    • SQL Server Agent
    • Microsoft Distributed Transaction Coordinator (MS DTC)

    MSSQLServer Servisi: SQL Server’ın ilişkisel veritabanını (RDBMS) ifade eder. Bütün Transact-SQL deyimlerini işler ve server üzerindeki bütün veritabanı dosyaları yönetir.
    SQL Server Agent Servisi: SQL Server Agent servisi, SQL Server ile birlikte çalışarak çok sunuculu işlerin yapılmasını sağlarlar.
    Microsoft Distributed Transaction Coordinator (MS DTC) Servisi: Microsoft Distributed Transaction Coordinator (MS DTC) servisi ise aynı zamanda Microsoft transaction Server’ında bir bileşenidir. Microsoft Transaction Server, client’ların bir transaction (işlem kümesi) içinde birden çok sunucu üzerinde işlem yapmasını sağlar.
    D. MİCROSOFT SQL SERVER SİSTEM YÖNETİMİ
    SQL Server’da yönetim işlemi, yönetim araçlarıyla (management tools) sağlanır. Yönetim araçları rutin yönetim işlerini azaltır ve otomatik hale getirir.
    SQL Server sistem yönetimi beş ana kategoriye ayrılabilir:
    Bunlar:
    • Kuruluş ve konfigürasyon
    • Saklama yönetimi
    • Güvenlik yönetimi
    • Veri yönetimi
    • Günlük sistem bakımı

    Kuruluş ve Yapılandırma:
    • SQL Server’ın kuruluşu
    • Kullanıcı ve veri gereksinimlerine göre yapılandırmanın değiştirilmesi
    • Terfi

    Depolama Alanı Yönetimi:
    • Database’ler için gereksinim duyulan disk alanın belirlenmesi
    • Alan kullanımının izlenmesi
    • Database ve dump device’ların yaratılması
    • Database’lerin yaratılması
    • Device ve Database’lerin büyüklüklerinin değiştirilmesi

    Güvenlik Yönetimi:
    • Login güvenlik tipinin (authentication) belirlenmesi
    • Kullanıcıların SQL Server’a ve database’lere erişmelerinin sağlanması
    • Kullanıcılarının database izinlerinin atanması

    Veri Yönetimi:
    • Database’lere diğer kaynaklardan veri transferi
    • Bir database dump dosyasının yüklenmesi
    • Kullanıcılara veri kopyalarını dağıtmak

    Sistem Bakımı:
    • Görevlerin belli bir zaman için programlanması
    • Bir görevin başarılması ya da başarılmaması durumuna göre mesaj düzenleme
    • Bir yedekleme stratejisi geliştirmek ve test etmek
    • Database ve transaction log’ların yedeğinin düzenli bir şekilde alınması
    • Database ve transaction log’ların yedeğinin gerektiğinde geri yüklenmesi
    • SQL Server performansının izlenmesi
    • Hata toleransı sistemlerinin değerlendirilmesi
    • Veri kayıplarına karşı stratejiler geliştirmek


    E. SQL SERVER YÖNETİM ARAÇLARI
    SQL Server 7.0 ve 2000, çok sayıda yönetim aracına sahiptir. Bazı araçlar server ve istemcilere yapılan SQL Server kuruluşu ile ilgili olarak değişebilir.
    Tablo : SQL Server Yönetim Araçları
    Araç Amacı
    SQL Enterprise Manager Server ya da workstation’dan enterprise düzeyinde yönetim sağlar. Server’ın konfigüre edilmesi, veritabanı nesnelerinin ve replication’ın yönetilmesi işlemlerini sağlar. Hemen hemen bütün sistem yönetim işlemi Enterprise Manager ile yapılır.
    Performance Monitor SQL Server ile Windows NT Performans Monitor’unu bütünleştirir. Aktivite ve performans istatistiklerini gösterir.
    SQL Server Books Online SQL Server kitabı.
    SQL Client Configuration Utility İstemcilerin Net-Library ve DB-Library bağlantıları hakkında bilgi verir.
    SQL Server Client Configuration İletişim birimleri için client konfigürasyonunu yönetmeyi sağlar.
    SQL Server Profiler Server aktivitelerini izler ve auditing (denetim) sağlar.
    SQL Server Query Analyzer Yazılan bir Transact-SQL deyimi işletir. Bir query’yi çalıştırır. Bir query planını analiz etmeyi, istatistik bilgiler almayı ve değişik pencerelerde çok sayıda query’yi çalıştırmayı sağlar.
    SQL Server Service Manager SQL Server servislerinin başlatmayı, durdurmayı ve kesmeyi sağlar.
    SQL Server Wizards (sihirbazlar) Yönetime kılavuzluk eden çok sayıda araç.

    II. SQL SERVER 2000’İN YENİLİKLERİ
    Microsoft SQL Server 2000, performans, güvenlik, kolay kullanım gibi özellikleri daha gelişmiş olarak tasarlanmıştır. SQL Server 2000’ın bazı yeniliklerini şu şekilde sıralamak olanaklıdır:
    A. BİRDEN ÇOK SQL SERVER KURULUMU (INTANCES)
    SQL Server 2000, artık aynı sunucu üzerinde birden çok SQL Server 2000’in kurulmasına olanak tanır. Bu farklı düzenlemeleri (güvenlik düzenlemeleri) olan birden çok SQL Server’ın aynı sunucu üzerinde bulunmasına ve kullanıcıların ayrı adlarla bunları kullanmasına olanak sağlar.
    B. XML DESTEĞİ
    Verileri XML (Extensible Markup Language) belgesi olarak döndürebilmek. Örneğin http isteği ile SQL Server verilerini XML biçimli almak.
    NOT: XML hakkında daha çok fazla bilgi için, sitedeki XML kursuna bakınız.
    C. FEDERATED DATABASE SERVER
    Farklı SQL Server’lar üzerinde yer alan tablolar üzerine kurulmuş görünümler (view) yaratma tekniğine “birleşik sunucular” denir. Bu olanak sunucuların birlikte çalışarak daha fazla performans sağlamasına neden olur.
    D. KULLANICI-TANIMLI FONKSİYONLAR
    Programcıların kendi fonksiyonlarını yaratarak özellikle hesaplama işlemlerinde daha etkin olmaları sağlanır. Bu özelliği ile SQL Server 2000’in programcılara daha yakın bir ürün haline geldiğini söyleyebiliriz. Çünkü programcılar Visual Basic gibi birçok programlama dilinde fonksiyon yazmaya alışıktırlar.
    Örneğin bir kullanıcı tanımlı fonksiyon şu şekilde çağırılır:
    SELECT * FROM Urunlistesi(‘A grubu’)
    E. İNDEKSLENMİŞ GÖRÜNÜMLER
    İndekslenmiş görünümler (indexed view), aynı sorgulardan olduğu gibi görünümlerin performansını artırmak için kullanılır.
    F. INSTEAD OF ve AFTER Trigger’ları
    INSTEAD OF tetikleyicileri INSERT, UPDATE ya da DELETE işleminden önce çalıştırılacak bir işlemin yapılmasını, AFTER tetikleyicileri ise INSERT, UPDATE ya da DELETE işleminden sonra çalıştırılarak bir işlemin yapılmasını sağlar. Örneğin bir tabloya girilen bir kaydın ardından, girilen kaydın diğer tablolara tetikleyici (trigger) tarafından otomatik olarak yapılması.
    Tetikleyici_adı tetikleyicinin adını ifade eder. Tür ise AFTER, FOR ya da INSTEAD OF türlerinden birisidir. Komut ise INSERT, UPDATE ya da DELETE komutlarını ifade eder.
    G. BASAMAKLAMA (CASCADİNG) İŞLEMLERİ
    İlişkili tablolarda güncellenen ya da silinen ana kaydın ilişkili alt tablolarda otomatik olarak güncellenmesi işlemine basamaklama denir. Veritabanlarından bilinen bir işlem olan basamaklama işlemi SQL Server 2000 ile artık daha kolay bir şekilde yönetilmektedir.
    H. COLLATİON YENİLİKLERİ
    SQL Server 2000 artık Windows karakter setine dayalı collation (karakter seti ve sıralama düzenleri) kullanmaktadır. Ayrıca SQL Server 2000 ile yer veritabanında, hatta tablolardaki sütunlar bazında farklı dil düzenlemeleri kullanılabilmektedir.
    I. YENİ BACKUP VE RESTORE MODELİ
    SQL Server 2000, daha kolay anlaşılan bir yedekleme ve geri yükleme sistemine sahiptir. Özzellikle veritabanlarının kurtarma modları bakımından yeni bir düzenlemeye sahip olan SQL Server 2000, özellikler transaction log alanı ve performans bakımından kolaylık sağlar.
    J. LOG SHİPPİNG
    Daha önce Stand By suncular olarak adlandırılan yedek sunucuları düzenlemek için yeni bir teknik Log Shipping’dir. Bu teknik bir sunucudaki veritabanının transaction log kayıtlarını diğer bir sunucuya düzenli olarak aktarır ve asıl sunucunun çökmesi durumunda yedek sunucunun kolayca devreye sokulmasını sağlar.
    K. DATA TRANSFER SERVİSLERİ
    Data Transformation Services (DTS) ile yapılan veri transferlerinde de SQL Server 2000’de yenilikler yapılmıştır. Bunların başında özel görevler tanımlayarak, değişkenlerini çalışma zamanında düzenleyen paketler tanımlanabilmektedir. Ayrıca DTS paketleri Visual Basic dosyası formatında da saklanabilmektedir. Bu Visual Basic programcılarının DTS nesnelerine erişmelerine olanak tanır.
    III. UYGULAMA
    Bu hafta uygulama yoktur. SQL Server hakkında bilgi edinmeye çalışın. Kurumlarında SQL Server ya da başka bir veritabanı sunucu yazılımı kullanan kişilere bu alanda ne yaptıklarını ve nasıl bir çözüme sahip olduklarını sorun.
    IV. Gözden Geçirme
    1. Veritabanı (database) nedir?
    2. Bir veritabanı yönetim sisteminin yararları nelerdir?
    3. İlişkisel Veritabanı nedir?
    4. SQL Server hangi işletim sistemleri üzerinde çalışır?
    5. SQL Server’da hangi servisler çalışmak zorundadır?
    6. SQL Server 2000’in yenilikleri nelerdir?
    7. Birden çok SQL Server 2000 kuruluşunun yararları nelerdir?
    8. “Log Shipping” nedir?
    9. Kullanıcı tanımlı fonksiyonların diğer dillerdeki kullanımlarından örnek verebilir misiniz?

    V. KAYNAKLAR
    Dokümanlar, ürün tanıtım kitaplarından, Faruk Çubukçu’nun kendi kitaplarından ve Internet üzerindeki kaynardan yararlanarak hazırlanmıştır.
    Bu konuda ve bilgisayar ile ilgili diğer konularında kitaplar için: www.alfakitap.com Microsoft Pres kitapları için: www.arkadas.com.tr Kurslar, kitaplar ve diğer Internet siteleri gibi kaynaklar için sitedeki Linkler kısmına bakınız.

    DERSİMİZE KATILDIĞINIZ İÇİN TEŞEKKÜR EDERİZ!
    DERS 2: KURULUM VE YAPILANDIRMA
    Ders sonunda yapabilecekleriniz:
    • Microsoft SQL Server 2000’ın kuruluşu için donanım ve yazılım gereksinimlerini tanımlamak.
    • Sisteme uygun SQL Server kuruluş seçeneklerini açıklamak.
    • Kurulum yapmak.
    • SQL Server servislerini yönetmek.

    I. KURULUM
    Kurulum (setup) işlemi, Microsoft SQL Server yazılımının bilgisayara yüklenmesi ve çalışır hale getirilmesidir. İyi bir sistem yöneticisinin SQL Server’ı kurmadan önce bir planlama yapması gerekir. Planlama işlemi; SQL Server’ın nereye ve nasıl kurulacağı, kimler ve hangi işletim sistemleri tarafından kullanılacağı, kullanıcılar, uygulamalar, network bileşenleri, vb. birçok konuyu içerebilir.
    Kuruluşu yapacak sistem yöneticisinin Windows 2000 ya da Windows NT Server üzerinde Administrator ya da eş değer bir yetkiye sahip olması gerekir.
    SQL Server sistem yöneticisi, ayrıca Windows 2000 ya da NT üzerinde de yönetim (administering) konularını iyi bilmelidir. Bu konuların başında kullanıcıları ve grupların yaratılması gelir.
    SQL Server’ın kuruluşunda bir diğer konu da SQL Server’ın kuruluş yerinin neresi olacağıdır? SQL Server genellikle iş yükü az olan bir Windows sunucu üzerine yüklenir. Birçok sunucu yazılımı bir bilgisayar üzerine yüklemek performansı düşürebilir.
    A. DONANIM VE YAZILIM GEREKSİNİMLERİ
    Donanım ve yazılım gereksinimleri SQL Server 2000’ın çalışacağı minimum sistem gereksinimlerini ifade eder.
    Tablo: SQL Server 2000 sistem gereksinimleri
    Bileşen Gereksinim
    Bilgisayar Intel Pentium 166 Mhz ya da daha gelişmiş bir işlemcili.
    Bellek 128 MB, büyük veritabanları ve replication işlemi için daha büyük olması önerilir.
    Sabit disk 300 MB tipik kuruluş için.
    Dosya sistemi FAT ya da NTFS, Güvenlik ve data kurtarma açısından NTFS tercih edilir.

    B. SQL SERVER 2000 SÜRÜMLERİ
    SQL Server 2000, altı ayrı sürümle (editions) pazara sürülmüştür:
    • Enterprise
    • Standard
    • Enterprise Evaluation
    • Developer
    • Personal
    • Windows CE


    Enterprise sürümü bütün özelliklere sahiptir. Özellikle büyük şirketler için veritabanı sunucusu olmak üzere geliştirilmiştir. Log shipping, Federated server gibi teknik özellikler yalnızca bu sürümde vardır.
    Standard sürüm ise yine şirketler için geliştirilmiş bir veritabanı sunucudur. Birçok şirket için yeterli bir sürümdür.
    NOT: Bu dokümanlar Faruk Çubukçu tarafından hazırlanmıştır. Burada adı geçen ticari ünvanlar ve markalar bilgi amaçlı kullanılmışlardır ve kendi imtiyazlarına sahiptirler. Bu dokümanlar ticari amaçlı olarak kullanılmaz. Daha fazla bilgi için www.farukcubukcu.com adresine bakınız.
    Enterprise Evaluation Enterprise sürümünün bütün özelliklerini 120 günlük sürüm olarak içeren bir sürümdür.
    Developer Enterprise sürümünün bütün özelliklerini içerir ancak yalnızca program geliştirme ve test amaçlı kullanılır.
    Personal sürüm ise özellikle Windows 2000 professional ve Windows 98 için geliştirilmiş mobil bir SQL Server’dır .
    Windows CE sürümü, Microsoft Windows CE aygıtlarında kullanılır.

    C. İŞLETİM SİSTEMİ SEÇİMİ
    Microsoft SQL Server 2000, işletim sistemi ve diğer yazılım gereksinimi olarak aşağıdaki işletim sistemlerini gerektirir:
    İşletim Sistemi:
    • Enterprise sürümü: Windows 2000 Server ve Windows NT Server
    • Standard sürümü: Windows 2000 Server ve Windows NT Server
    • Enterprise Evaluation: Windows 2000 Server ve Windows NT Server
    • Developer: Windows 2000 Server ve Windows NT Server
    • Personal: Windows 2000 Professional, Windows 9x
    • Windows CE: Yalnızca Windows CE

    D. LICENSING MODE (LİSANSLAMA)
    Kuruluş sırasında lisanslama seçeneği sorulur. Özellikle client sayısının belirlenmesi bakımından lisanslama seçeneği önemlidir. SQL Server 2000’de iki tür lisanslama vardır. Per Processor ve Per Seat (İşlemci başına ve Koltuk başına).
    Per Processor lisanslama seçeneğinde her işlemci için lisans alınır. Bu lisanslama türünde sınırsız bağlantı yapılır. Bu nedenle oldukça yaygın tercih edilir. Per Seat lisanslama tipinde ise lisans belli bir client için kullanılır. Bu nedenle istenildiği kadar lisans alınabilir.
    E. KARAKTER SETİ
    Kuruluş sırasında kullanılacak dili destekleyen karakter setini içeren code page (kod sayfası) seçilir. Kod sayfası seçilen karakter setine uygun karakterleri saklar. Bir server üzerindeki bütün database’ler için sadece bir karakter seti seçilir. Varsayılan Karakter Seti
    Kuruluş programı Code Page 1252 (ISO Karakter Seti) setini varsayım olarak seçer. SQL Server’a eklenen her database aynı kod sayfasını kullanır.
    Karakter Setinin Seçilmesi
    SQL Server’ın kullandığı code page, Windows’ın kullandığı code page ile aynı olmak zorunda değildir. Ancak SQL Server ile client’larının kullandıkları code page’ler aynı olmalıdır. Ancak extended karakterlerin (ikinci 128 karakter) farklı olması sorun yaratmayabilir.
    İpucu: SQL Server 2000’de artık her veritabanı ayrı bir dilde olabilmektedir. Bu nedenle kuruluş sırasında belirlenecek karakter seti bütün her şeyin karakter seti anlamına gelmez.
    Sıralama Düzeni
    Sıralama düzeni (sort order) karakterlerin nasıl karşılaştırılacağını gösterir. Bu düzenleme bir sorgunun sonucunda dönecek olan verileri de etkiler. Sıralama düzeninin seçimi kullanılacak karakter setine göre değişir:
    Sıralama düzeni sorguların performansını da etkiler. Case-insensitive (büyük/küçük harf ayrımlı olmayan) bir sıralama düzeninde arama daha hızlı yapılır. Case-sensitive bir sıralama düzeninde arama işlemi daha fazla zaman alır.
    Not: Sıralama düzenin seçimi de önemlidir. Sıralama düzeninin kuruluştan sonra değiştirilmesi için master ve kullanıcı databaselerine bakım (rebuild) yapılması gerekir
    F. INSTANCES OF SQL SERVER (SQL SERVER’IN ÖRNEKLERİ)
    SQL Server 2000, bir sunucu üzerinde adlandırılmış (named) ve birçok instance (örnek) olarak çok sayıda SQL Server kurulmasını sağlar.
    Default Instance: Sunucu üzerinde yalnızca bir tane default instance kuruluşu yapılır. Bu varsayım kuruluş şeklidir. Eski sürümlerde olduğu gibi bilgisayarın adı için kurulan SQL Server bu varsayım kuruluşu ifade eder.
    Named Instance: 16 tane adlandırılmış sürüm kurulabilir. Bu kuruluş belli bir adla kurulan SQL Server anlamına gelir. Daha sonra bu adla bağlanılır:
    Adlandırılmış SQL Server’lara başvurmak:
    bilgisayar\SQL Server instance’ı

    G. SQL SERVER SERVİS KULLANICI HESABI
    SQL Server 2000’in kuruluşunda, SQL Server’ın kullanacağı bir servis hesabına (service account) gereksiniminiz vardır. Bu hesap uygun şekilde seçilmeli ve yapılandırılmalıdır.
    SQL Server Service Account (SQL Server Servis Kullanıcısı), SQL Server servislerinin kullanılmasını sağlar. Herbir SQL Server servisi bir servis kullanıcısı (güvenlik bakımından) ile çalışır. Bu servis kullanıcısı bir domain kullanıcısı ya da özel bir sistem kullanıcısı olan Local System olabilir.
    Domain Kullanıcı Adı
    Bir domain kullanıcı adının SQL Server servis kullanıcı adı olarak kullanılması durumunda; network üzerindeki kaynaklara ve uzak server’lara trusted bağlantılar (Windows 2000 ve NT kimlik denetiminden geçmiş) kullanılarak erişilebilir. Seçilen domain kullanıcı adı Administrator local grubunun bir üyesi olmalıdır.
    Örneğin: Windows’da açılan bir kullanıcı:
    User name: sqlservice
    Password: xyz ya da başka birşey

    Local System Kullanıcısı
    Eğer SQL Server servis kullanıcısı olarak bir Local System kullanıcısı seçilirse SQL Server servisi bir trusted bağlantı ile uzak server’lara bağlanamaz. Ancak eğer SQL Server, domain’in bir parçası olmayan bir bilgisayara kuruluyorsa o zaman Local System kullanıcı adı kullanılabilir.
    II. KURULUM İŞLEMİ
    SQL Server 2000 CD’si CD-ROM sürücüsüne takıldıktan sonra otomatik başlatma özelliği ile ya da setup.exe programı ile SQL Server 2000 kuruluş programı başlatılır.
    Kuruluş sırasında bileşenler seçilir:
    • Database Server
    • Database Server-Desktop Edition
    • SQL Server 7.0 OLAP Services
    • English Query

    OLAP Servisleri ise uygulamalara online analytical processing (OLAP) servisi sağlar. OLAP Servisleri bir data warehousing küpünü (çok boyutlu veriler) tasarlayarak OLE DB 2.0 ile yazılmış client uygulamalara sunarlar.
    English Query ise SQL Server database’lerinin kolay ve anlaşılabilir bir dille sorgulanmasını sağlar. English Query sayesinde karmaşık Transact-SQL deyimleri yerine, sorgular bir cümle olarak yazılır.
    A. KURULUŞ TİPLERİ
    Kuruluş sırasında şu kuruluş tipleri seçilir.
    Tablo: Kuruluş tipleri
    Kuruluş Tipi Açıklama
    Typical SQL Server program dosyalarını, yönetim araçlarını ve online dokümanları yükler.
    Compact Sadece SQL Server’ı yükler. Yönetim programlarını yüklemez.
    Custom SQL Server bileşenlerinden istenilenlerin seçilip yüklenmesini sağlar.

    Typical seçeneğinin içeriği:
    Tipik kuruluş seçeneği genellikle kullanılan bir seçenektir. Şu bileşenler yüklenir.

    • Named Pipes, TCP/IP, Multi-Protocol network kütüphaneleri.
    • ISO Character Set 1252
    • Dictionary order, case-insensitive sort order.

    Compact tipinin içeriği:
    Compact kuruluş tipinde belli bileşenler kurulmaz. Bunlardan bazıları şunlardır:
    • SQL Server Profiler.
    • Books Online.
    • Version Upgrade Wizard
    • Replication nesneleri.
    • Örnek dosyaları.
    - ….

    B. OTOMATİK BAŞLATILAN SERVİSLER
    SQL Server kuruluş programı MSSQLServer, SQLServerAgent ve MS DTC adlı üç servisi otomatik olarak kurulmasına ve otomatik olarak konfigüre edilmesini sağlar. Servisin konfigürasyonu servis kullanıcısının ve servisin AutoStart özelliğinin tanımlanması anlamına gelir. Otomatik olarak başlatılan servisler (AutoStart) Windows’un her açılışında otomatik olarak başlarlar.
    Bu servislerin manuel olarak da başlatılması seçeneği vardır. Ancak kuruluş sırasında genellikle otomatik olarak başlatılması seçeneği seçilir.
    SQL Server servisleri:
    • MSSQLServer
    • SQLServerAgent
    • MS DTC

    C. SQL SERVER’IN BAŞLATILMASI/DURDURULMASI
    SQL Server servislerinin Windows NT’nin başlatılmasıyla otomatik olarak başlatılması kuruluş sırasında düzenlenebilir. Eğer düzenlenmezse, bu işlem manuel olarak kuruluştan sonra da yapılabilir. Bu işlem Windows NT’de Control Panel, Services bölümünde yer alan servis tanımlanamaları ile yapılır. SQL Server servisleri yerel ve uzak bilgisayardan başlatılabilir ya da durdurulabilir.
    Aynı şekilde Windows 2000’de Computer Management aracıyla yine aynı servislerin ayarları yapılabilir.
    SQL Server Enterprise Manager Aracılığı ile Servislerin Kontrolü
    SQL Server’ın otomatik olarak başlatılması için Enterprise Manager programında SQL Server seçildikten sonra sağ tuş ile ekrana gelen menüden Properties seçilir. Buradan servislerin otomatik başlatılma özellikleri düzenlenebilir.
    SQL Server Service Manager Aracılığı ile Servislerin Kontrolü
    SQL Server Service Manager aracılığyla SQL Server servisini başlatmak (start), kesmek (pause) ve durdurmak (stop) işlemleri yapılabilir.
    Bu işlem için:
    1. Start menüsüne tıklar.
    2. Programs grubu işaret edilir ve Microsoft SQL Server program grubu seçilir.
    3. Service Manager üzerine tıklanır.
    Görev Çubuğu Aracılığı ile Servislerin Kontrolü
    SQL Server Service Manager iletişim kutusuna ulaşmanın diğer bir yolu da windows görev çubuğunda yer alan SQL Server simgesidir. Bu simge üzerinde çift tıklanarak SQL Server servisinin çalışması kontrol edilebilir.
    Not: Yeşil ok servisin çalıştığını gösterir.
    D. DİĞER KURULUŞ İŞLEMLERİ
    Kuruluş sırasında diğer seçenekler şunlardır:
    Bulunulan bilgisayara kuruluş için Local Install seçilir. Bunun dışında Service User’ı ve diğer düzenlemeler sırasıyla kuruluş programı tarafından sorulur.
    İpucu: Kuruluşun ardından Windows görev çubuğunun üzerinde SQL Server servis yöneticinin simgesi yer alır. Onun yeşil bir okla göründüğünden emin olun.

    E. ENTERPRİSE MANAGER YÖNETİM PROGRAMI
    Enterprise Manager, SQL Server’ın hemen hemen bütün işlemlerinin yapıldığı ana yardımcı programdır. SQL Server’ın kurulmasıyla birlikte otomatik olarak kurulur. Enterprise Manager aracılığıyla, sunucunun bütün yapılandırma işlemleri, veritabanı yaratma işlemleri, SQL Server’ın bütün güvenlik düzenlemeleri, tablo gibi veri elemanlarının tasarımı, veri transferi vb. bütün işlemleri Enterprise Manager ile yapılır.
    İPUCU: Kuruluşun ardından hemen Enterprise Manager’ı çalıştırın. SQL Server’ın adını, çalışıp çalışmadığını, sistem veritabanlarını, örnek veritabanlarını (NorthWind gibi), ve diğer elemanları inceleyin.
    F. SERVER’LARIN KAYIT EDİLMESİ
    SQL Server yazılımı kurulduğu bilgisayarın bilgisayar adına (computer account) göre bir SQL Server adına sahip olan bir kurulur yapar. Yani bilgisayar adı neyse SQL Server adı da o dur. Diğer bir deyişle yerel bir kayıt işlemi yapılır. Bu işleme registering denir.
    Enterprise Manager ile üzerine kuruluş yapılan bir bilgisayar dışında diğer bir bilgisayardaki SQL Server’ı yönetmek isterseniz önce o SQL Server’ı kaydetmeniz gerekir. Bu işlem yetkili bir kullanıcı adıyla yapılır.
    G. SA KULLANICI ADINA PAROLA VERME
    SQL Server’ın varsayım kullanıcısı olan SA’in (System Administrator) ilk başta bir parolası yoktur. SQL Server bir NT domain’i içinde kurulmamışsa parolasız bir SA adı ile isteyen kullanıcı sisteme girerek SQL Server’ın güvenliğini zorlar. Bu nedenle SA kullanıcı adına mutlaka bir parola verilmelidir.
    Eğer SQL Server bir NT domain’i içinde kurulmuşsa o zaman SQL Server, Windows NT domain’in güvenliğini kullanır.
    Enterprise Manager’dan SA kullanıcı adına parola vermek için şu işlemler yapılır:
    1. Enterprise Manager başlatılır.
    2. Server seçilir.
    3. Security bölümü açılır.
    4. Logins klasörü açılır (araç çubuğundan Manage Logins düğmesine basılır)
    5. SA kullanıcı adı üzerinde çift tıklanır.
    6. Yeni parola girilir ve Modify düğmesine basılır.

    III. UYGULAMA
    1. Bir SQL Server servis kullanıcısı yaratın. Windows 2000 ya da Windows NT üzerinde User Manager, ya da Active Directory yardımcı programları aracılığıyla bir servis kullanıcısı yaratın.
    adı: sqlserviceuser
    parola: xyz

    2. Disk üzerinde yeterli yer varmı?
    3. SQL Server 2000 CD’sini yerleştirin.
    4. Database Server’ı seçin ve Typical kuruluş yapın.
    5. Service User olarak yarattığınız kullanıcıyı belirtin.

    Kuruluşun ardından:
    1. SQL Server servisinin çalışıp çalışmadığını kontrol edin.
    2. Enterprise Manager ile SQL Server veritabanlarını ve diğer bileşenlere bir göz atın.
    IV. GÖZDEN GEÇİRME
    1. Instance kavramı nedir?
    2. SQL Server 2000’in hangi sürümleri vardır? Bu sürümler kimler içindir?
    3. Windows 9x üzerine SQL Server 2000 kurulabilir mi?
    4. SQL Server yardımcı programları ve araçları nelerdir?
    5. SQL Server’ın başlatılması için hangi servislerin başlatılması gerekir?
    6. Hangi düzenlemeler veritabanlarının yeniden düzenlenmesini (rebuild) gerektirir?
    7. SQL Server’a giriş için varsayım kullanılan Login ID kimdir. Parolası varmıdır? Parolası nasıl düzenlenir?
    8. Diğer bir SQL Server’ı kaydetmek için hangi yardımcı program kullanılır. Yetkili bir kullanıcının adını bilmek gerekir mi?
    V. KAYNAKLAR
    Dokümanlar, ürün tanıtım kitaplarından, Faruk Çubukçu’nun kendi kitaplarından ve Internet üzerindeki kaynardan yararlanarak hazırlanmıştır.
    Bu konuda ve bilgisayar ile ilgili diğer konularında kitaplar için: www.alfakitap.com Microsoft Pres kitapları için: www.arkadas.com.tr Kurslar, kitaplar ve diğer Internet siteleri gibi kaynaklar için sitedeki Linkler kısmına bakınız.

    DERSİMİZE KATILDIĞINIZ İÇİN TEŞEKKÜR EDERİZ!
    DERS 3: VERİTABANI TASARLAMAK
    Ders sonunda yapabilecekleriniz:
    • Database (veritabanı) kavramını tanımlamak.
    • Bir veritabanı yaratmak ya da silmek gibi temel işlemleri açıklamak.
    • Bir veritabanı seçeneklerini düzenlemek.
    • Bir veritabanının nesnelerini tanımlamak.
    • Enterprise Manager ile veritabanı işlemlerinin yapılmasını açıklamak.

    I. MİCROSOFT SQL SERVER’DA VERİTABANI KAVRAMI
    SQL Server’da verilerin durduğu ana birim veritabanıdır (database). SQL Server’da bir veritabanı çok sayıda nesneden (Tablolar, View’ler, Stored Procedure’lar, ve diğer güvenlik nesnelerinden) oluşan bir veri kümesidir.
    SQL Server 2000’da veritabanı yapısı ile ilgili temel konular şunlardır:
    • Bütün veritabanları.mdf uzantılı bir ana dosya ve .ldf uzantılı bir transaction log dosyasından oluşur.
    • Bir veritabanında ayrıca ikincil dosyalara da yer verilebilir. Bu dosyaları .ndf uzantılıdır.
    • Veriler 8 KB’lık sayfalarda (pages) saklanırlar. Bu nedenle veri satırları da en çok 8092 bayt olabilir. Bu değer tabloların içinde yer alan kayıt uzunluğunu etkiler. Ayrıca Index ve veritabanı tasarımında önemlidir.

    A. TRANSACTİON LOG DOSYASININ ÇALIŞMASI
    Transaction log dosyası, SQL Server’da verilerin depolanması ve kurtarılmasıyla ilgili önemli bir dosyadır. Tablolarda yapılan değişiklikler önce transaction log dosyasına yazılır, ardından veirtabanına kaydedilir. Bu düzenleme başta veritabanına yapılan kayıt işleminin tutarlılığını sağlamak için yapılır.
    SQL Server’da INSERT, UPDATE ve DELETE deyimleri işletildiğinde oluşan değişiklikler transaction log dosyasına kaydedilir.
    Chekpoint İşlemi
    Transaction log kayıtlarının veritabanına yazılması için bir kontrol mekanizması kullanılır. Buna “checkpoint” denir. Transaction log dosyasına yazılan transactionlar onaylandıktan (commit) sonra, varsayım olarak bir dakikada bir veritabanına yazılır. Bu işleme Checkpoint işlemi denir.
    B. VERİTABANLARIYLA ÇALIŞMAK
    Veritabanlarıyla çalışmak, veritabanları yaratılmasını, düzenlenmesini ve silinmesini kapsar. Veritabanları sistem yöneticisi (sa) ya da veritabanı sahibi (dbo) tarafından yaratılırlar. SA aynı zamanda diğer kullanıcılara da veritabanı yaratma ve diğer işlemler yapması için izin verebilir.
    Bir Veritabanı Yaratmak
    Birçok işlemde olduğu gibi veritabanı yaratmak için SQL Server Enterprise Manager programı kullanılır. Bunun dışında CREATE DATABASE deyimi ile bir veritabanı yaratılabilir.
    CREATE DATABASE Deyimi İle Bir Veritabanı Yaratmak
    Bir veritabanı yaratmak için Enterprise Manager, sihirbaz (wizard) ya da Transact-SQL deyimi kullanılabilir. Ancak en etkin biçimde deyimlerden yararlanılacaksa CREATE DATABASE deyimi kullanılır.
    Kullanım Biçimi:
    CREATE DATABASE veritabanı adı
    [ON
    [PRIMARY ] (NAME= dosya adı , FILENAME= fiziksel dosya adı
    [, SIZE = boyut ]
    [, MAXSIZE= maksimum boyut ]
    [, FILEGROWTH= büyüme artışı])
    [LOG ON
    (NAME= dosya adı , FILENAME= fiziksel dosya adı
    [, SIZE = boyut ])
    [FOR RESTORE]

    PRIMARY bilgisi ana dosya grubundaki dosyaları belirtir. Bir dosya en fazla bir ana gruba sahip olabilir. Eğer PRIMARY deyimi kullanılmazsa deyimde listelenen ilk dosya ana dosya sayılır.
    FILENAME bilgisi işletim sistemi üzerinde saklanacak dosyanın adını ve yolunu belirtir.
    SIZE bilgisi dosyanın büyüklüğünü gösterir. Büyüklük bilgisi MB olarak gösterilir. Varsayım büyüklük; veritabanı için 1 MB, transaction log dosyası için 1 MB dır. Minimum veritabanı dosyasının büyüklüğü 1 MB, transaction log dosyasının büyüklüğü 512 KB dir.
    MAXSIZE bilgisi ise dosyanın sahip olacağı maksimum büyüklüğü gösterir. Eğer maksimum büyüklük belirtilmezse dosya disk doluncaya kadar büyür.
    FILEGROWTH bilgisi MB ya da yüzde (%) olarak dosyanın büyüme oranını belirtir. Dosyanın büyüme bilgisi MAXSIZE ile düzenlenen değerleri aşamaz.
    Örnek: Aşağıdaki örnek ile 10 MB data dosyası, 3 MB log dosyası yaratılmaktadır.
    CREATE DATABASE Musteri
    ON
    [PRIMARY ] (NAME= Musteri_data,
    FILENAME= ‘C:\mssql\data\Musteri.mdf’,
    SIZE = 10MB,
    MAXSIZE= 15MB,
    FILEGROWTH= 20%)
    LOG ON
    (NAME= Musteri_log, FILENAME= ‘C:\mssql\data\Musteri.ldf’,
    SIZE = 3MB
    MAXSIZE= 5MB,
    FILEGROWTH= 1MB)

    NOT: Bu dokümanlar Faruk Çubukçu tarafından hazırlanmıştır. Burada adı geçen ticari ünvanlar ve markalar bilgi amaçlı kullanılmışlardır ve kendi imtiyazlarına sahiptirler. Bu dokümanlar ticari amaçlı olarak kullanılmaz. Daha fazla bilgi için www.farukcubukcu.com adresine bakınız.
    C. ENTERPRİSE MANAGER İLE DATABASE YARATMAK
    SQL Enterprise Manager programı veritabanlarının düzenlenmesi işlemlerini grafik ortamda yönetmeyi sağlar. Bu işlem için önce Enterprise Manager programı çalıştırılır.
    Ardından Databases üzerinde sağ tuşa basılarak New Database seçilir.
    Ardından veritabanın adı girilir.
    Bir veritabanı yaratılırken aşağıdaki bilgiler girilir:
    • Database’in adı.
    • Database’in büyüklüğü (1 MB ya da daha büyük).
    • Transaction log büyüklüğü.

    DİKKAT: SQL Server’da yerleşik sistem yöneticisi SA’dir. SA kullanıcısını parolası yoktur.
    D. DATABASE SEÇENEKLERİ
    Veritabanı seçenekleri, veritabanının kullanımında çok önemli rol oynar. Bu düzenlemeler sistem yöneticisi ya da dbo sahibi tarafından yapılır. Veritabanı seçenekleri Enterprise Manager ya da sp_dboption sistem stored procedure’ı ile düzenlenebilir.
    Bazı Database Seçenekleri:
    autoshrink
    Veritabanın otomatik olarak küçülmesini (shrink) sağlar. Bu özellik TRUE yapıldığında veritabanı dosyaları düzenli olarak daraltılır. Data ve log dosyaları SQL Server tarafından otomatik olarak daraltılır.
    dbo use only
    Veritabanını kullanımını sadece veritabanı sahipleri için kısıtlar. Veritabanı db_owner fixed database rolü kullanıcıları tarafından kullanılır. Bu durumda veritabanının aktif kullanıcıları veritabanına erişmeye devam ederler. Ancak yeni kullanıcılara izin verilmez. Aktif kullanıcılar veritabanından ayrıldığında ya da veritabanı değiştirdiğinde (USE deyimiyle) özellik bu durumda iken bu veritabanına tekrar erişemezler.
    read only
    Veritabanı sadece-okunur olmasını sağlar. Bu durumda kullanıcıdan veritabanına erişebilir ve data alabilirler. Ancak dataları değiştiremezler.
    single user
    Veritabanının aynı anda sadece bir kişi tarafından kullanılmasını sağlar. Bu özellik düzenlendiğinde kullanıcılar veritabanı kullanmaya devam ederler.
    Recovery Model Seçenekleri
    SQL Server 2000 düzenlenen veritabanı seçeneklerinden birisi kurtarma modeli (recovery model) düzenlemesidir:
    • Full Recovery Model
    • Bulk_Logged Recovery Model
    • Simple Recovery Model

    Full Recovery Model
    Bu modda SQL Server, transaction log tutar. Ve gerektiğinde verilerin, veritabanı ve transaction log dosyalarında birlikte elde edilerek kurtarılmasını sağlar.
    SQL Server 2000’de varsayım düzenleme Full Recovery Model’dir.
    Bulk_Logged Recovery Model
    Full Recovery Model özelliklerini içerir, ayrıca SELECT INTO gibi bulk load işlemleri için transaction log dosyasında daha az yer kaplanmasına neden olur.
    Simple Recovery Model
    Küçük veritabanları ve daha çok yalnızca sorgulanan veritabanları için kullanılır. Bu modelde transaction log dosyası tutulmaz. Onaylanan transaction kayıtlar veritabanına yazılır yazılmaz transaction log dosyasından silinir. Bu düzenleme veritabanı sorunlarının giderilmesi için daha sonra transaction log yedeğinin alınmasını olanak yapar.
    DİKKAT: Büyük veritabanları ve ticari veritabanı sistemleri için kullanılmamalıdır.
    Database Seçeneklerinin Enterprise Manager İle Düzenlenmesi
    Bir veritabanına ait seçenekleri görmek ve düzenlemek için Enterprise Manager aracılığıyla şu işlemler yapılır:
    1. Server grubu bilgileri açılır.
    2. Databases üzerinde çift tıklanarak database’ler listelenir.
    3. İstenilen veritabanı üzerinde farenin sağ tuşuna tıklanır ve Properties seçilir.
    4. Options sekmesi seçilir.

    İstenilen veritabanı seçenekleri düzenlenir ya da kaldırılır.
    II. VERİTABANI NESNELERİ
    Bir veritabanı çok sayıda nesneden oluşur. Bu nesneler şunlardır.
    • Database Diagramları
    • Tablolar
    • View’lar
    • Stored Procedure’lar
    • User’lar
    • Role’ler
    • Rule’lar
    • Default’lar
    • User Defined Data Type’ları

    Bütün database nesneleri görmek ve üzerinde temel (yaratma, değiştirme ve silme) işlemleri yapmak için Enterprise Manager kullanılabilir. Enterprise Manager içinde bir SQL Server seçildikten sonra Databases grubu içinde istenilen database seçilir.
    A. DATABASE DİAGRAMLARI
    Database diagramları, veritabanı içindeki tabloları temsil ederler. Database diagramları tablo içindeki kolonları, tablolar arasındaki ilişkileri (relationships) ve tabloların indeksleri ve kısıtlamalarını gösterirler.
    Database diagramları ile şu işlemler yapılır:
    • Tablolar ve ilişkileri görüntülenir.
    • İlişkiler düzenlenir.
    • Tabloların fiziksel yapısının değiştirmek için çeşitli işlemler yapılır.
    • Yapılan değişiklikler tablolara kaydedilir.
    • View’ler düzenlenir, istenilen sorgulamalar yapılır.

    B. TABLOLAR
    Bir veritabanı içindeki veriler tablolar (tables) olarak düzenlenirler. İlişkisel veritabanları çok sayıda tablolar ve aralarındaki ilişkiler üzerine kurulmuştur. Tabloların yaratılması için Enterprise Manager ya da Transact-SQL deyimleri kullanılır.
    Tablo yaratma deyimi CREATE TABLE deyimidir. Bu deyim ile istenilen bir database üzerinde belirtilen özelliklerde bir tablo yaratılır.
    C. VİEW’LAR
    Tablolardaki verilere erişmenin bir diğer yolu da view’lar geliştirmektir. View’lar tabloların belli kolonların listelendiği ayrıca hesaplama işlemlerinin yapıldığı bir veri erişim yöntemidir.
    Enterprise Manager içinde View’ların yaratılması grafik ekranda; istenilen tablolar arasında kolaylıkla yapılır.
    View yaratmak için SELECT deyimi kullanılır. Aşağıdaki örnekte bir tablonun belli alanları üzerine bir View yaratılmaktadır.
    CREATE VIEW musteri_view AS
    SELECT Kodu, Adı, Soyadı, Grubu
    FROM musteri

    Daha sonra View’i çalıştırmak için:
    SELECT * FROM musteri_view
    D. STORED PROCEDURE’LAR
    System stored procedure’ları belli bir görevi yerine getirmek için derlenmiş Transact-SQL deyimleridir. SQL Server içinde çok sayıda sistem stored procedure yer alır. Bunlar veritabanları ve kullanıcılar hakkında bilgiler verirler ya da belli işlemleri yerine getirirler.
    Stored procedure’lar, Enterprise Manager ya da CREATE PROCEDURE deyim ile yaratılırlar. System stored procedure’lar sp_ harfleri ile başlayan stored procedure’lar aracılığıyla şu işlemler yapılır:
    • Giriş (input) parametrelerini kabul ederek ve birçok değerin geri dönmesini sağlar.
    • Veritabanı içindeki işlemleri yapmak için programlama deyimleri içerir.
    • İşlemler hakkında durum bilgisi döndürür.

    SQL Server içindeki stored procedure’ların kullanımı programlama, performans, güvenlik gibi birçok konuda sistem yöneticisine kolaylıklar sağlar. Örneğin sp_helpdb stored procedure’ı ile bir veritabanı hakkında bilgi alınır.
    exec sp_helpfile dosya adı
    E. USER’LAR
    Bir database’i kullanmak için tanımlanmış adlardır. Kullanıcıların Windows NT ya da SQL Server kimlik denetimlerinin ardından veritabanları kullanmaları için bir kullanıcı adına (accounts) gereksinim duyulur. Veritabanı kullanıcı adları ve rolleri kullanıcıların veritabanı üzerinde bir işlem yapmasını sağlayacak izinleri içerir. Bir veritabanı için geçerli olan ve güvenlik izinlerinin uygulandığı kişi veritabanı kullanıcılarıdır. Windows NT kullanıcıları ve grupları ya da SQL Server kullanıcı adları bir veritabanı kullanıcısı ile eşleşerek bir veritabanına erişebilirler.
    III. UYGULAMA
    1. Enterprise Manager kullanarak bir veritabanı yaratın.
    veritabanı adı (database name): ornekveritabani
    ilk boyutu (initial size): 5 MB
    Büyüme durumu (growth size): %25
    En büyük dosya boyutu: 20 MB

    2. Query Analyzer ile bir SQL deyimiyle veritabanı yaratın:
    CREATE DATABASE ornekdb
    ON
    [PRIMARY ] (NAME= ornekdb_data,
    FILENAME= ‘C:\mssql\data\ornekdb.mdf’,
    SIZE = 10MB,
    MAXSIZE= 15MB,
    FILEGROWTH= 20%)
    LOG ON
    (NAME= ornekdb_log, FILENAME= ‘C:\mssql\data\ornekdb.ldf’,
    SIZE = 3MB
    MAXSIZE= 5MB,
    FILEGROWTH= 1MB)

    IV. GÖZDEN GEÇİRME
    1. Bir veritabanı içinde hangi nesneler (birimler) yer alır?
    2. Sorgu için ve INSERT, UPDATE ve DELETE işlemleri için kullanılacak Database’lerin transaction log büyüklükleri ne olmalıdır?
    3. Bir veritabanı dosyalarının farklı disklerde bulunmasının yararlarını açıklayın?
    4. Checkpoint işlemi nedir?
    5. Veritabanı seçeneklerinin işlevleri nelerdir? Recovery Model düzenlemelerinin veritabanı yönetimindeki öneminin açıklayın.
    6. Database diyagramı nedir? Nasıl yaratılır.
    V. KAYNAKLAR
    Dokümanlar, ürün tanıtım kitaplarından, Faruk Çubukçu’nun kendi kitaplarından ve Internet üzerindeki kaynardan yararlanarak hazırlanmıştır.
    Bu konuda ve bilgisayar ile ilgili diğer konularında kitaplar için: www.alfakitap.com Microsoft Pres kitapları için: www.arkadas.com.tr Kurslar, kitaplar ve diğer Internet siteleri gibi kaynaklar için sitedeki Linkler kısmına bakınız.

    DERSİMİZE KATILDIĞINIZ İÇİN TEŞEKKÜR EDERİZ!
    DERS 4: GÜVENLİK YÖNETİMİ
    Ders sonunda yapabilecekleriniz:
    • Güvenlik (security) kavramını tanımlamak.
    • Login ID (login account) ve database kullanıcısı (database user) kavramlarını açıklamak.
    • Kimlik denetimi (authentication) tipinin belirlenmesi.
    • Oturum açma adlarını database kullanıcıları (database user) ve rolleri (roles) düzenlemek.

    I. GÜVENLİK KAVRAMI
    SQL Server 2000’de güvenlik başta authentication (yetkilendirme/kimlik denetimi) düzenlemesi olmak üzere, SQL Server’a bağlanan ve veritabanlarına erişen kişilerin denetlenmesi işlemidir.
    SQL Server’a erişen bir kullanıcı şu tanımlamalardan geçerek bir veritabanı nesnesine erişir:
    Login account -> Database user -> Database nesneleri
    Geçerli bir kullanıcı-> veritabanı kullanıcısı-> tablo ya da view
    Login account (oturum açma adı), SQL Server’a erişecek geçerli bir kullanıcı adıdır. Bu kullanıcı adı iki şekilde oluşturulur:
    • Windows 2000 kullanıcısı olmak.
    • SQL Server’da tanımlı bir Login ID olmak.

    Ardından login adı bir SQL Server veritabanı kullanıcı adıyla eşleştirilerek veritabanına ve veritabanı nesnesine erişim sağlanmış olur. Ardından izinler devreye girer. İzinler (permissions) kullanıcıların hangi database nesnelerini kullanacağını ve hangi işlemleri yapabileceğini belirtir.
    A. VAROLAN SİSTEM YÖNETİCİSİ
    Nasıl Windows işletim sisteminde Administrator tanımlı yerleşik bir kullanıcı var, SQL Server’da da kuruluş sırasında yaratılan bu kullanıcı sistem yöneticisidir. SQL Server’a ve bütün database’lere erişim yetkisi vardır. Bu kullanıcının adı: sa dır.
    Sistem yöneticisi: SA
    B. KİMLİK DENETİMİ (AUTHENTİCATİON) TİPİNİN SEÇİLMESİ
    SQL Server’a erişecek kullanıcıların (login’lerin) sisteme girişinde yapılacak kontrole authentication (kimlik denetimi) denir. SQL Server 2000’de Windows 2000 kimlik denetimi, Windows 2000 Authentication Mode ya da Mixed olarak düzenlenir.
    • Windows 2000 kimlik denetimi
    • Windows NT ve SQL Server Kimlik denetimi (Mixed)

    Kimlik denetiminde iki modun (tipin) olmasının bir diğer anlamı da; SQL Server’ın kullanıcıları kendisinin denetlediği gibi Windows NT’nin denetimine de güvenmesidir.


    Windows NT/2000 Kimlik Denetimi
    SQL Server’a bağlanmak isteyen bir kullanıcı Windows NT kimlik denetimini kullandığında; bir Windows 2000 kullanıcısı ya da grubu SQL Server’a girebilir. Bu şekilde SQL Server’a giren kullanıcıya bir bağlantı yaratılır. Bu bağlantıya da trusted connection denilir. Ardından kullanıcının adı ve grubu SQL Server’a geçirilir.
    NOT: Bu dokümanlar Faruk Çubukçu tarafından hazırlanmıştır. Burada adı geçen ticari ünvanlar ve markalar bilgi amaçlı kullanılmışlardır ve kendi imtiyazlarına sahiptirler. Bu dokümanlar ticari amaçlı olarak kullanılmaz. Daha fazla bilgi için www.farukcubukcu.com adresine bakınız.
    Windows 2000 Authentication Mode’un Üstünlükleri
    Windows NT Authentication Mode, Windows NT’nin kimlik denetiminden geçen kullanıcıların SQL Server’ı kullanmasına izin verir. Bu tipin kullanılmasının üstünlükleri şunlardır:
    • Tek bir kullanıcı adını kullanarak daha kolay ve hızlı logon işlemi.
    • Kullanıcı adı ve parola düzenlemesi olarak daha fazla seçeneğe sahiptir. Örneğin auditing, expiration, logon hours vb düzenlemeler.

    Mixed Mode’un Üstünlükleri
    Mixed modun kullanımını üstünlüklerinin başında non-Windows NT client’ların (Internet clients, vb) da SQL Server’a erişmelerinin sağlanmasıdır. Diğer bir üstünlük ise ikinci bir güvenlik katmanı olmasıdır.
    Kimlik Denetimi Tipinin (Authentication Mode) Düzenlenmesi
    Kimlik denetimi tipinin seçilmesi için şu işlemler yapılır:
    Windows 2000 Authentication Mode’un seçilmesi:
    1. SQL Server Enterprise Manager çalıştırılır.
    2. Kimlik denetimi değiştirilecek server üzerinde sağ tuşa tıklanır Properties seçilir.
    3. Security sekmesi seçilir.
    4. Buradan istenilen düzenleme seçilir.
    5. MSSQLServer servisi durdurulur ve yeniden başlatılır. Böylece seçilen kimlik denetimi tipi geçerli olur.
    6. “Trusted connection “ olarak SQL Server’a bağlanacak olan Windows NT kullanıcıları ve grupları yaratın.
    7. Bu kullanıcı ve gruplara Enterprise Manager aracılığıyla SQL Server’da kullanabilecekleri izinler ver.
    Mixed Authentication Mode’un seçilmesi:
    1. SQL Server Enterprise Manager çalıştırılır.
    2. Kimlik denetimi değiştirilecek server üzerinde sağ tuşa tıklanır Properties seçilir.
    3. Security sekmesi seçilir.
    4. Buradan istenilen düzenleme seçilir.

    C. BİR SQL SERVER LOGİN’İ YARATMAK
    Windows NT kullanıcısı ya da grubu üyesi olmayan kullanıcıların (non-trusted users) SQL Server’da tanımlanması için yine Enterprise Manager ya da sp_addlogin sistem stored procedure’ı kullanılır. Bu deyim de yine Administrator tarafından kullanılır.
    1. Bir server grubu ve bir server açılır.
    2. Security açılır.
    3. Logins üzerinde sağ tuşa tıklanır ve New Login seçilir.
    4. SQL Server logininin adı girilir.
    5. SQL Server Authentication seçilir.
    6. Bir parola (password) girilir.
    7. Seçimlik olarak bir varsayım database ve dili girilir.
    8. Girilen parola onaylanır.

    D. ROLLER
    Veritabanı rolleri, izinlerin uygulanacağı birçok kullanıcının bir araya getirilmesidir. SQL Server, server düzeyinde de database düzeyinde roller düzenlenebilir.
    SQL Server, belli yönetim fonksiyonlarına sahip hazır-tanımlanmış birtakım rollere sahiptir. Bu roller kolayca bir kullanıcıya verilebilir. Bunun dışında özel (user-defined) roller de yaratılabilir.
    Tanımlı (sabit) server rolleri yönetimsel düzeydeki izinlerin gruplanmasını sağlar. Bu roller kullanıcı database’leri üzerinde bağımsız olarak düzenlenebilir.
    Tablo : Sık kullanılan sabit server rolleri
    Rol İzni
    Database yaratıcıları (dbcreator) Database yaratır ve değiştirir.
    Disk yöneticileri (diskadmin) Disk dosyalarını düzenler.
    Process yöneticileri (processadmin) SQL Server process’lerini yönetir.
    Güvenlik yöneticileri (securityadmin) Sisteme giriş işlemini düzenler.
    Server yöneticileri (serveradmin) Server düzeyindeki düzenlemeleri yapar.
    Kuruluş yöneticileri (setupadmin) Replication işlemini kurar.
    Sistem yöneticileri (sysadmin) Herhangi bir işlemi yapar.

    Enterprise Manager aracılığıyla Server Rollerini görmek için Security bölümünden Server Roles seçilir.
    Tanımlı (sabit) database rolleri database düzeyinde yönetimsel izinlerin gruplanmasını sağlar. Database rollerini görmek için Enterprise Manager içinde database seçilir.
    Tablo : Sık kullanılan sabit database rolleri
    Rol İzini
    Public Bir database üzerindeki bütün varsayım izinleri sağlar.
    db_owner Herhangi bir database rolü işlemini yapar.
    db_accessadmin Database kullanıcısı, grubu ve rolü ekler.
    db_dlladmin Database nesnesi ekler, değiştirir ya da düşürür.
    db_securityadmin Deyim ve nesne izinleri düzenler.
    db_backupoperator Database yedekleme ve geri yükleme.
    db_datareader Herhangi bir tablodan data okur.
    db_datawriter Tablolardaki dataları siler, değiştirir ve ekler.
    db_denydatareader Herhangi bir tablodan data okuyamaz.
    db_denydatawriter Herhangi bir tablodan data değiştiremez.

    Tanımlı (sabit) rollerin dışında sistem yöneticileri kendi kullanıcıları için de roller düzenleyebilirler. Böylece bir grup kullanıcının izinlerinde toplu değişiklik yapılabileceği için yönetim fonksiyonu kolaylaşacaktır.
    E. KULLANICI-TANIMLI BİR ROL YARATMAK
    Kullanıcı tanımlı bir rol yaratmak için:
    1. Bir server grubu ve bir server seçilir.
    2. Databases grubu açılır ve içinde rol yaratılacak olan database açılır.
    3. Roles üzerinde sağ tuşa tıklanır ve New Database Role seçilir.
    4. Yeni rolün adı girilir.
    5. Add düğmesine tıklanarak standart role üyeler eklenir.

    Bir SQL Server database rolüne üye eklemek için:
    1. Bir server grubu ve bir server seçilir.
    2. Databases grubu seçilir. Ardından rolün olduğu database genişletilir.
    3. Database Roles seçilir.
    4. Rol üzerinde sağ tuşa tıklanır ve Properties seçilir.
    5. User altında Add düğmesine tıklanır.
    6. Eklenecek kullanıcı ya da kullanıcılar seçilir.

    F. İZİNLERİN DÜZENLENMESİ
    İzinlerin (permissions) atanması; kullanıcıların belli işlemleri yapmalarını sağlayacak olan yetkilerin kullanıcılara ve rollere atanması anlamına gelir. SQL Server’da verilerin güvenliği, kullanıcıların kontrol edilmesiyle; diğer bir deyişle sadece gerekli izini olanların belli işlemleri yapması anlamına gelir. İzin sisteminde kullanıcıların database nesnelerini belli izinlerle kullanması sağlanır.
    Database nesneleri şunlardır:
    • Tables (tablolar)
    • Defaults (varsayılan değerler)
    • Rules (kurallar)
    • Indexes (ideksler)
    • Views (görünümler)
    • Triggers (tetiklemeler)

    Bir veritabanına erişmek için hem geçerli bir login id’ye hem de bir veritabanı kullanıcısına gereksinim vardır. Bir database’de yer alan izin sistemi (izinler) diğer bir database’i etkilemez. Örneğin bir kullanıcı Müşteri database’inde verilere erişim iznine sahipse Stok database’inde herhangi bir işlemi yapamaz.
    Bir login’in (sistem giriş kullanıcı adı) bir SQL Server kullanıcı adına ya da rolüne atanmasının ardından, database’lerin güvenliği sağlamak için izinlerin düzenlenmesi gerekir. İzinler (permissions) kullanıcıların kullanacağı database nesnelerini ve işlemlerini belirtir.
    SQL Server’da üç tip izin sistemi vardır:
    • Deyim (statement)
    • Nesne (object)
    • Önceden-tanımlı

    Nesne İzinleri
    Deyim izinleri bir database ya da nesnenin yaratılması ile ilgilidir. Nesne izinleri ise datalar üzerinde işlem yapmayı ve procedure’ları işletmeyi sağlar. Nesne izinleri tablolar ve view’ler üzerinde, kolonlar üzerinde ve stored procedure’larla işlem yapmayı sağlar.
    Tablo ve View İzinleri
    Tablolar ve view’ler için nesne izinleri SELECT, INSERT, UPDATE ve DELETE izinlerinin bu nesneler üzerinde kullanılmasını sağlar.
    Tablo ve view izinleri:
    • SELECT
    • INSERT
    • UPDATE
    • DELETE

    Sütun İzinleri
    SELECT, UPDATE ve REFERENCES izinleri tek bir kolona (bir alana) uygulanabilirler. Bir kullanıcı bir tabloya FOREIGN KEY kısıtlaması ile bir satır eklediğinde ya da değiştirdiğinde SQL Server bu alanı kullanabilmelidir. Bu işlem için kullanıcının SELECT ya da REFERENCES izinine sahip olması gerekir.
    Kolon izinleri:
    • SELECT
    • UPDATE
    • REFERENCES

    Stored Procedure İzinleri
    EXECUTE (EXEC) izini bir stored procedure için kullanılan bir nesne izinidir.
    EXEC izinleri:
    • STORED PROCEDURE


    Deyim Sysprotect tablosundaki durumu Açıklama
    GRANT Positive İşlem yapabilir.
    REVOKE None İşlem yapamaz. Ancak rol izini ile ezilebilir.
    DENY Negative İşlem yapamaz. Ve rol izini ile de ezilemez.

    İzinlerin Verilmesinde Enterprise Manager’ın Kullanılması

    Bir nesneye erişim izini vermek için:

    1. Bir server grubu ve bir server açılır.
    2. Databases grubu açılır ve nesnenin bulunduğu database seçilir.
    3. Nesnenin tipine göre Tables, SQL Server Views ya da Stored Procedures seçilir.
    4. Ayrıntı penceresinde nesne üzerinde sağ tuşa tıklanır. Task işaret edilir ve Manage Permissions seçilir.
    5. List All Users/DB Roles seçilir.
    6. İzin verilecek kullanıcı seçilir. Bir check işareti verilen izini ifade eder.

    II. GÜVENLİĞİ PLANLAMAK
    SQL Server’da günvenlik konusunun düzenlenmesi için aşağıdaki konuların göz önünde bulundurulması gerekir:
    • Varsayım login’in kullanımı
    • Guest kullanıcı adının kullanımı
    • Public rolünün izininin belirlenmesi
    • Login’lerin kullanıcı adlarına ve rollere atanması
    • dbo ile nesnelerin yaratılması

    Varsayım Login’in Kullanımı
    SQL Server’da login adı olarak sisteme giriş yetkisine sahip olan sa ve BUILTIN\Administrator’un kullanımının belirlenmesi gerekir.
    Varsayım login’ler:
    • sa
    • BUILTIN\Administrator

    Bu kullanıcı adları sıradan kullanıcı olarak kullanılmamalıdır. Bu nedenle sa kullanıcısına mutlaka bir parola düzenlenmelidir!

    Public Rolünün İzininin Belirlenmesi
    Public rolü, her database kullanıcısının sahip olduğu özel bir database rolüdür. Bu izin sayesinde kullanıcıların database üzerindeki minimum izinleri (varsayım izinleri) düzenlenir. Bu nedenle bu role izin verilirken dikkat edilmelidir.
    Login’lerin Kullanıcı Adlarına ve Rollere Atanması
    Bir login adının bir database’e atanmasının ardından bir kullanıcı ya da rol ile izinler düzenlenir. Login adı ile kullanıcı adının eşleştirilmesi için aşağıdaki kurallar uygulanır.
    III. UYGULAMA
    1. SQL Server 2000’in Authentication Mode’unu görün.
    2. Bir kullanıcıya Northwind veritabanına erişim için Login ID, Database User bilgilerini düzenleyin.
    3. 2. adımda yarattığınız kullanıcıyı bir veritabanı rolüne ekleyin.
    4. Northwind veritabanı üzerinde kullanıcı tanımlı (user-defined) bir rol yaratın.
    5. Northwind veritabanının Product tablosu üzerinde yarattığınız kullanıcının izinlerini kontrol edin. Yoksa ona DELETE izni verin.
    IV. GÖZDEN GEÇİRME
    1. Trusted ve non-trusted connection nedir?
    2. sa login’ine parola vermek gerekir mi?
    3. Rollerin kullanım amacı nedir?
    4. Hangi database grupları-rolleri ve kullanıcıları varsayım olarak kullanılırlar?
    5. Kimlik denetimi türleri nelerdir?


    V. KAYNAKLAR
    Dokümanlar, ürün tanıtım kitaplarından, Faruk Çubukçu’nun kendi kitaplarından ve Internet üzerindeki kaynardan yararlanarak hazırlanmıştır.
    Bu konuda ve bilgisayar ile ilgili diğer konularında kitaplar için: www.alfakitap.com Microsoft Pres kitapları için: www.arkadas.com.tr Kurslar, kitaplar ve diğer Internet siteleri gibi kaynaklar için sitedeki Linkler kısmına bakınız.

    DERSİMİZE KATILDIĞINIZ İÇİN TEŞEKKÜR EDERİZ!
    DERS 5: YEDEKLEMEK VE GERİ YÜKLEMEK
    Ders sonunda yapabilecekleriniz:
    • Backup (yedekleme) ve restore (geri yükleme) işlemini tanımlamak.
    • Enterprise Manager ve Transact-SQL ile kullanıcı ve sistem veritabanlarını yedeklemek.

    I. YEDEKLEME (BACKUP) İŞLEMİ
    Yedekleme (backup), SQL Server veritabanlarında yer alan sistem ve kullanıcı verilerinin disk ya da teyp aygıtlarına kopyalayarak verilerin kaybolması riskine karşı yapılan bir çalışmadır. Yedekleme verilerin kaybolmasına karşın kesintisiz ve risksiz çalışma sağlar. Bunun dışında sistem çökmelerine karşı bir garantidir. Yedekleme, verilerin belli aralıklarla teyp, disk ya da uygun ortamlara kopyalanmasıdır sağlar. Bu yedekler daha sonra gereksinim duyulduğunda geri yüklenerek (restore) veri kayıpları önlenir.
    Yedekleme konusunda en önemli konulardan birisi de yedeklemenin zamanı ya da sıklığıdır. Ne zaman yedekleme yapılacağı değişik faktörlere göre değerlendirilir:
    • Önemli bilgilerin yer aldığı veritabanları mutlaka yedeklenmelidir.
    • Çok sayıda veriyi içeren ve çok sık güncellenen OLTP (Online Transaction Processing) ortamındaki veritabanları daha sık yedeklemek gerekir.
    • Yedekleme işlemi SQL Server’ın çok yoğun olmadığı saatlerde yapılmalıdır.
    • Kullanıcı veritabanlarının yanı sıra sistem veritabanları da yedeklenmelidir.

    A. SQL SERVER’DA YEDEKLEME İŞLEMİ
    Yedekleme işleminde Enterprise Manager ya da Transact-SQL deyimleri kullanılır.
    Yedekleme (backup) işleminden önce kalıcı bir yedek dosyasının yaratılması gerekir. Bu dosyalara “backup file” ya da “backup device” denir. Eğer otomatik bir yedekleme işi yaratılacaksa o zaman kalıcı bir yedek dosyası yaratmak iyi olur. Bu dosya SQL Server Enterprise Manager ya da sp_addumpdevice sistem stored procedure ile yaratılabilir.
    Bir disk yedek dosyası (aygıtı) yaratmak için;
    1. Server grububu açın. Ardından bir server’ı açın.
    2. Management açılır.
    3. Backup üzerinde sağ tuşa tıklayın ve New Backup Device…. Seçeneğini seçin.
    4. Name içinde yedek aygıtı için bir ad girin.
    5. File name kutusuna tıklayarak disk yedekleme için kullanılacak fiziksel dosyanın adını girin. Ya da (…) ile Backup Device Location iletişim kutusunu görüntüleyerek disk yedek aygıtı olarak kullanılacak olan fiziksel dosyayı seçin.
    Enterprise Manager aracılığıyla bir full database yedeği almak için:
    1. Bir server grubunu açın. Ardında bir server’ı açın.
    2. Databases grubunu açın ve istediğiniz database üzerinde sağ tuşa tıklayarak Task seçeneğini, ardından Backup Database seçeneğini seçin.
    3. SQL Server Backup iletişim kutusunda General sekmesinde Name içinde backup setinin adını girin.
    4. Description içinde backup setin açıklamasını girin.
    5. Backup altında Database – Complete seçeneğini seçin.

    6. Destination altında Add seçeneğini seçerek yeni bir yedek aygıtı yaratın ya da mevcut olan birisine ekleyin. Ya da Remove seçeneği ile bir yedek aygıtını listeden kaldırın.
    B. BACKUP DEYİMİ İLE YEDEKLEMEK
    Yedekleme işlemi Enterprise Manager, Backup sihirbazı ya da Transact-SQL deyimleriyle yapılabilir.
    Ana yedekleme deyimi BACKUP DATABASE’dir.
    Kullanım biçimi:
    BACKUP DATABASE database adı TO yedek dosyası
    [WITH
    [, FORMAT ]
    [, INIT ya da NOINIT]
    [, RESTART ]
    ]

    Yedek dosyası; yedek dosyası DISK, TAPE ya da PIPE = geçici yedek dosyası olarak belirtilir.
    FORMAT
    FORMAT seçeneği yedek setinde bölmeyi ve yedek dosyalarının üzerine yazmayı sağlar.
    INIT ya da NOINIT
    Seçeneği ise üzerine yazma ya da ekleme işlemlerini sağlar. SQL Server’da varsayım seçenek NOINIT dir. Bu seçenek ile yedekleme mevcut yedek dosyası ve setine ekleme olarak yapılır. INIT seçeneği ise yedeklemenin mevcut yedek datalarının üzerine yapılmasını sağlar.
    RESTART
    Seçeneği, SQL Server’ın yedekleme işlemini kesildiği yerden devam ettirmesini sağlar.
    Teyp Aygıtına Yedeklemek
    Daha önce belirtildiği gibi SQL Server değişik ortamlara yedek alabilir. Eğer bir teyp aygıtına yedek alınacaksa teyp aygıtı SQL Server’ın bulunduğu bilgisayara bağlı olmalıdır.
    Teyp aygıtına yapılan yedeklemede SQL Server, yedekleme bilgisini teyp etiketine (tape label) yazar. Teybe yapılan yedeklemede aşağıdaki seçenekler kullanılır:
    UNLOAD
    UNLOAD seçeneği ile SQL Server yedekleme işleminden sonra teybi geriye sarar ve çıkardır. Bu seçenek NOUNLOAD seçeneği belirtilmediği sürece varsayım olarak geçerlidir.
    NOUNLOAD
    Seçeneği ile SQL Server yedekleme işleminden sonra teybi geriye sarmaz ve çıkarmaz.
    BLOCKSIZE
    Seçeneği ile teyp üzerindeki fizisel blok büyüklüğü ayarlanır.
    FORMAT seçeneği ile de bütün volümlere bir “header” bilgisi yazılır. SQL Server yedekleme sırasında başlık bilgilerini yeniden yazar. FORMAT seçeneğinin kullanımında INIT ve SKIP seçenekleri de kullanılmış sayılır.
    SKIP seçeneği ile başlık bilgileri atlanır. SQL Server, teyp aygıtı üzerinde yer alan ANSI teyp etiketlerini atlar. Teyp üzerinde yer alan ANSI etiket bilgileri teybin kullanım zamanın dolması, yazma izini gibi bilgileri içerir.
    NOSKIP seçeneği ise SQL Server’ın ANSI tape etiketlerini okumasına gereksinim duyulmuyorsa kullanılır. SQL Server, ANSI teyp etiketlerini varsayım olarak okur.
    Bir teyp yedek aygıtı yaratmak için:
    1. Server grububu açın. Ardından bir server’ı açın.
    2. Management seçilir.
    2. Backup üzerinde sağ tuşa tıklayın ve New Backup Device… seçeneğini seçin.
    3. Name içinde yedek aygıtı için bir ad girin.
    4. Tape Drive Name’e tıklayın ve yedekleme için kullanılacak fiziksel teyp dosyasını seçin.

    C. YEDEKLEME TÜRLERİ
    SQL Server, değişik gereksinimleri karşılamaya yönelik değişik yedekleme yöntemlerine sahiptir.
    Full Database Yedeği
    Full database yedeği (backup), yedekleme işlemerinin bir başlangıcıdır. Full database yedeği alındığında SQL Server şu işlemleri yapar:
    • Yedekleme sırasında gerçekleşen bir işlemi de yedekler.
    • Transaction Log’da yer alan uncommitted (database’e henüz yazılmamış) bütün işlemleri (transaction bilgilerini) yedekler.

    Enterprise Manager aracılığıyla bir full database yedeği almak için:
    1. Bir server grubunu açın. Ardında bir server’ı açın.
    2. Databases grubunu açın ve istediğiniz database üzerinde sağ tuşa tıklayarak Task seçeneğini, ardından Backup Database seçeneğini seçin.
    3. SQL Server Backup iletişim kutusunda General sekmesinde Name içinde backup setinin adını girin.
    4. Description içinde backup setin açıklamasını girin.
    5. Backup altında Database – Complete seçeneğini seçin.

    6. Destination altında Add seçeneğini seçerek yeni bir yedek aygıtı yaratın ya da mevcut olan birisine ekleyin. Ya da Remove seçeneği ile bir yedek aygıtını listeden kaldırın.
    1. DİFFERENTİAL DATABASE YEDEĞİ
    Full yedeklemenin yanı sıra differential backup yöntemi ise bir önceki full yedekten sonra sadece değişen dataların yedeklenmesini sağlar. Bu işlem daha kısa sürede olur. Ancak geri yüklemede full yedeğin olmasını gerektirir.
    Değişen yedek almak için önce full yedek alınmalıdır. Değişen yedek, değişen bilgileri; transaction log’da yer alan uncommitted (database’e yazılmamış bilgiler) işlemleri yedekler.
    Differential yedekleme sık sık yapılacağı için yedekleme uygun bir zamanlama adlandırma işlemi yapılmalıdır.
    Bir differential database yedeğini yaratmak için:
    1. Bir server grubu ve bir server’ı genişletin.
    2. Databases grubunu genişletin ve database üzerinde sağ tuşa tıklayın. Task menüsünü işaret edin ve Backup Database seçeneğini seçin.
    3. SQL Server Backup iletişim kutusunda General sekmesinde Name içine yedek setinin adını girin.
    4. Description içinde yedek setine ilişkin bir açıklama girin.
    5. Backup altında Database – Differential seçeneğini seçin.
    6. Destination altında Add seçeneğini seçerek yeni bir yedek aygıtı yaratın ya da mevcut olan birisine ekleyin. Ya da Remove seçeneği ile bir yedek aygıtını listeden kaldırın.
    7. Overwrite altında tıklayın:
    • Append to media seçeneği ile yedeği, yedekleme aygıtı üzerindeki mevcut yedeklere ekleyin.
    • Overwrite existing media seçeneği ile yedek aygıtı üzerindeki mevcut yedeklerin üzerine yazılır.
    8. Schedule seçeneği ile işlem daha sonraki bir tarihte yapılacak biçimde ayarlanır.
    9. Options sekmesi ile yedekleme seçenekleri düzenlenir:
    • Verify backup upon completion seçeneği ile yedekleme işleminin doğrulanması (verify) sağlanır.
    • Eject tape after backup seçeneği ile yedekleme işlemi bittiğinde teybin çıkarılması sağlanır.
    • Check media set name and backup set expiration seçeneği ile yedekleme ortamı yanlışlıkla üzerine yazılmaya karşı kontrol edilir. Media set name içinde ise media set adı girilir.
    10. Backup medyası ilk defa kullanılıyorsa Media set labels altında Initialize and label media seçilir ve medya setinin adı ve açıklaması girilir.
    2. TRANSACTİON LOG YEDEKLEMEK
    Database üzerindeki bütün değişiklikleri yedeklemek için transaction log’lar yedeklenir. İyi bir yedekleme stratejisi için Transaction Log’un sık sık yedeklenmesi gerekir. Transaction Log dosyalarının yedeklenmesi için de önce bir full yedekleme işleminin yapılması gerekir. Bunun yanı sıra transaction log yedeklerinin geri yüklenmesi için de daha önce yedeklenen (kendi) database’i geri yüklenmelidir.
    Enterprise Manager aracılığıyla bir transaction log yedeğini almak için:
    1. Bir server grubu ve bir server’ı genişletin.
    2. Management açılır.
    3. Databases grubunu genişletin ve database üzerinde sağ tuşa tıklayın. Task menüsünü işaret edin ve Backup Database seçeneğini seçin.
    4. SQL Server Backup iletişim kutusunda General sekmesinde Name içine yedek setinin adını girin.
    5. Description içinde yedek setine ilişkin bir açıklama girin.
    6. Backup altında Transaction log seçeneğini seçin.
    7. Destination altında Add seçeneğini seçerek yeni bir yedek aygıtı yaratın ya da mevcut olan birisine ekleyin. Ya da Remove seçeneği ile bir yedek aygıtını listeden kaldırın.
    8. Overwrite altında tıklayın:
    9. Append to media seçeneği ile yedeği, yedekleme aygıtı üzerindeki mevcut yedeklere ekleyin.
    10.Overwrite existing media seçeneği ile yedek aygıtı üzerindeki mevcut yedeklerin üzerine yazılır.
    11. Schedule seçeneği ile işlem daha sonraki bir tarihte yapılacak biçimde ayarlanır.
    12. Options sekmesi ile yedekleme seçenekleri düzenlenir:
    Verify backup upon completion seçeneği ile yedekleme işleminin doğrulanması (verify) sağlanır.
    Eject tape after backup seçeneği ile yedekleme işlemi bittiğinde teybin çıkarılması sağlanır. Devam edecek... [ Bu Döküman Alıntıdır]
    [glow=red:02d8cde0f7]AkaRSoFTWaRe Paylaşımcı Olun Sömürücü Olmayın[/glow:02d8cde0f7]

  2. #2
    Acemi Üye Array
    Üyelik tarihi
    May 2006
    Yer
    var
    Mesajlar
    6
    İtibar Gücü
    0
    ÇOK
    TEŞEKKÜR
    ALLAH RAZI OLSUN

  3. #3
    Üye Array
    Üyelik tarihi
    Jul 2006
    Yer
    mersin
    Mesajlar
    54
    İtibar Gücü
    0

    tesekkur

    tesekkurlerrrr.....ALLAH razı olsun.. :yes

  4. #4
    Üye Array
    Üyelik tarihi
    Jul 2006
    Yer
    mersin
    Mesajlar
    54
    İtibar Gücü
    0

    SQL DE ÖĞRENCİ SAYISINI BULAN....

    Yardımınıza ihtiyacım var.......Konunun çok basit olduğunu biliyorum ama yapamadım.Kafam karıştı.Listeletme programı yaptım sql'de ve şimdide öğrenci sayısı gibi yada online mı demek gerekiyo bunu nasıl yapabilirim.Öğrenci sayısını bulcak bir program[I]

  5. #5
    Üye Array
    Üyelik tarihi
    Jun 2006
    Yer
    ısparta
    Mesajlar
    50
    İtibar Gücü
    0
    peki bunları iyi güzel bulmuşsunda asıl önemli olan şeyi neden vermedin programı indireceğimiz yeri

  6. #6
    Üye Array
    Üyelik tarihi
    Jul 2006
    Yer
    mersin
    Mesajlar
    54
    İtibar Gücü
    0

    yazmasını bılen....

    nasıl yanı program ındırmek ıcın bısy demdım kı programı yazmasınıbılen varmı dıyorum.indirilecek bır orogram degıl...kııı?yalnış anlasıldıysa özür....

  7. #7
    Acemi Üye Array
    Üyelik tarihi
    Aug 2006
    Yer
    Kocaeli
    Mesajlar
    2
    İtibar Gücü
    0
    Yapmaya çalıştığın program hakkında biraz bilgi verirsen yardımcı olmaya çalışırım.Kullandığın dil ne?Nasıl bir veritabanın var falan.İstersen pm atabilirsin yada burdan anlatabilirsin.İyi çalışmalar.

  8. #8
    Üye Array
    Üyelik tarihi
    Jul 2006
    Yer
    mersin
    Mesajlar
    54
    İtibar Gücü
    0

    yani...

    yok arkadaslar benım ıstedıgım ben php kullanarak dınamık web sayfası hazırlıyorum burda gırıs bolumlerı olcak yanı ders annlatımı falan ve ben mesela sız gırdınız dıyelım ve ben bunu lısteletmek ıstıyorum sql kullanarak..bu konuda yardım ıstedım .basııt ama ben ustune cok dustum ve buyuzden artık goremıyorum...

Konu Bilgileri

Users Browsing this Thread

Şu an 1 kullanıcı var. (0 üye ve 1 konuk)

Yetkileriniz

  • Konu Acma Yetkiniz Yok
  • Cevap Yazma Yetkiniz Yok
  • Eklenti Yükleme Yetkiniz Yok
  • Mesajınızı Değiştirme Yetkiniz Yok
  •  


Donanım forumu - Byte Hesaplayıcı - Notebook tamir Beşiktaş - beşiktaş bilgisayar servisi - beşiktaş bilgisayar servis - beşiktaş notebook servisi - beşiktaş servis - Beşiktaş Kamera Kurulumu -
 

SEO by vBSEO 3.6.0 RC 2