Flashcentury
Twitter
Facebook
Linkedin
Rss
MySql Tablo Türleri

MySql Tablo Türleri

Yazar admin

Kategoriler: MySql

MySQL, iki farklı tür tablo yapısını destekler :

Transaction Tabloları :
- InnoDB
- Berkeley DB

Atomik İşlem Tabloları :
- MyISAM
- HEAP
- MERGE
- ISAM

MySQL her iki tür işlemi de desteklediği için kullanıcı,uygulamasında atomik işlemlerin hızına mı transaction özelliklerine miihtiyacı olduğuna karar verebilir. Seçimler tablo bazında yapılabilir.

Transaction’lı tablo ile atomik işlemle çalışan tablo arasındaki enbüyük fark performans konusunda oluşur. Transactionlı tablolarçalışırken daha fazla bellek, daha fazla disk alanı ve daha fazlaişlemci gücü harcar.

Eğer uygulamalarınız kritik durumlarda COMMIT yapmaya değil de,ROLLBACK yapmaya göre yazıldıysa transaction kullanmak daha elverişliolabilir.

Çoğunlukla kritik transactionla çalışan güncellemeler, atomikolarak çalışacak şekilde tekrar yazılabilir. Transactionların çözdüğütüm bütünlük problemleri LOCK TABLES, INSERT DELAYED ve benzeriyöntemlerle çözülebilir.

Tablo tipleri, her tablo için farklı seçilebilir. Bir veritabanındaiki ya da daha fazla tablo tipini bir arada kullanabilirsiniz.

MyISAM

Çok hızlıdır fakat özellikle windows sunucuda çalışıyorsa çok güvenli değildir.

Bozulması kolaydır, tamir etmesi kolaydır fakat tamir edildiğinde kayıt kayıpları oluşur.

MyISAM, MySQL’in “klasik” tablo tipidir. Çok hızlı, az kaynak harcayan ve verimli çalışmak için tasarlanmıştır.

InnoDB

InnoDB MyISAM a göre oldukça yavaştır.

Bozulması çok zordur, bozulduğunda tamir etmesi neredeyse imkansızdır fakat çok güvenlidir.

TRANSACTION destekler ve veri bütünlüğünü açısından MySQL de kullanılması kesinlikle şart tablo yapısı budur.

innodb ve bdb (berkeley database) tipi veritabanlarında transaction (satır üzerinde çalışan) veritabanı tipleridir.

Kayıt girilirken MyISAM gibi bütün tabloyu kitlemezler. Bu tip veritabanları özel transaction fonksiyonlarınıda (basit olarak locking, begin ve commit olayları, bknz. sql kitapçığınıza) çalıştırmanızı sağlar.

MyISAMdan yavaş olduğunu söylensede çok giriş yapılan tablolarda MyISAM kullanmanın hızı düşürdüğü de bir gerçektir ve yadsınamaz.

%100 ACID uyumlu, commit, rollback ve göçmeden kurtarma özelliklerine sahip bir tablo yapısını size sağlar.

Satır seviyesinde kilitleme kullanır, Oracle-stili kilitleme olmaksızın SELECT işlemleri yapılmasını destekler.

Yabancı anahtar kısıtlamalarına uyar.

Veri ve indeksleri ana bellekte cache’lemek için kendi tampon havuzu vardır.

Tabloları ve indeksleri tablo alanı olarak tanımladığı sanal ciltte tutar.

Bir tablo alanı birçok dosya ya da disk bölümünden oluşabilir.

InnoDB, MySQL’in standart transaction destekli tablo tipidir.

Bu Yazıyı Paylaşın

Facebook Twitter StumbleUpon del.icio.us Digg Reddit Technorati RSS

20 Ocak 2010

Etiketler: , , , , , , , , ,

Benzer Yazılar

This website uses IntenseDebate comments, but they are not currently loaded because either your browser doesn't support JavaScript, or they didn't load fast enough.

2 Yorum Comments For This Post I'd Love to Hear Yours!

  1. Placycyhoma diyor ki:

    Hello! Can you tell me how i can register mail at Yahoo Yahoo http://yahoo.com

  2. taylanguney diyor ki:

    Yahoo has fallen status:)

Leave a Comment Here's Your Chance to Be Heard!