Giriş - Kayıt
  Makaleler
 
PHP ile uygulama geliştirme
Date 07/01/2008 02:11 Author ishak
RSS

MySQL Veri Tabanı Yönetim Sistemi

MySQL, çok-kanallı (multi-threaded), çok kullanılıcılı (multi-user), hızlı ve sağlam (robust) bir veritabanı yönetim sistemidir. UNIX ve OS/2 platformları için ücretsiz dağıtılmakla birlikte Windows platformları için 30 günlük deneme sürümü sonunda lisans alınmak üzere sunulmaktadır. Kaynak kodu açık olan MySQL'in pekçok platform için binaryleri de hazır. ODBC sürücüleri de bulunuyor.


Geliştiricileri, 500'den fazlası 7Milyon kayıt içeren 10,000 tablodan oluşan kendi veritabanlarını (100 gigabyte civarında veri) MySQL'de tuttuklarını söylüyorlar.

MySQL, tuttuğu tablolarla, çok kullanıcılı bir sistemlerde sözkonusu olan erişim hakları sorununu çok güzel çözüyor.

Negatif bir yön olarak MySQL'de transactionların desteklenmemesi, transactionların güvenliğini sağlama işini programcının üzerine yıkıyor.

Ayrıca referential integrity sağlama işinin programcıya bırakılması tercih edilmiş. Ancak bu bir dezavantaj olarak görülmeyebilir. Çünkü pek çok veritabanı programcısı VTYS'lerdeki referential integrity'nin esnek olmayan, zorlayıcı bir özellik olduğunu düşünmektedir.

MySQL ile Veri Tabanı Yönetimi

Burada UNIX sistemi üzerinde MySQL'in kurulup yönetilmesi üzerinde durulacaktır. MySQL derlendikten sonra ilk yapılması gereken 'mysql' adlı veri tabanının server üzerine kurmaktır. Bu veri tabanı, server üzerindeki diğer veri tabanlarına erişim haklarını oldukça ayrıntılı bir şekilde tablolarında tutmaktadır.

Bu veri tabanının yaratılması için öncelikle root olarak login olunur ve aşağıdaki komutlar işletilir:

>cd <MySQL directory>/bin
>./mysql_install_db

Böylece tüm verılerın tutulacagı '<MySQL directory>/var' dızını de yaratılmış olur.

Artık veri tabanı sunucusu arka planda çalıştırılabilir:

>./safe_mysqld &

MySQL standart olarak 3306 numaralı portta çalışmaktadır.

Veri tabanı üzerinde her hakka sahip kullanıcı, aynı zamanda sistemin 'root'udur. şu anda root, MySQL sunucusuna şifresiz bağlanabilir. Güvenlik için bu süper kullanıcıya veri tabanına erişim şifresi verilmesi gerekir:

>./mysqladmin -u root -password '<şifre>'

Daha sonra bu şifre kullanılarak sunucuya bağlanılabilir:

>./mysql -u root -p
>Enter passwd: <şifre>

Böylece istemci programımız sunucuya bir oturum başlatmış olur. Artık karşımıza çıkan komut satırından SQL komutlarını uygulayabiliriz:

Burada SQL standardına uyan data definition (create table ..., alter table ..., drop table ..., vs...) ve data manipulation (select ..., insert ..., update ..., vs...) komutları kullanılabilir.

MySQL'e özgü birtakım komutlar da vardır:



'mysql' veritabanına bağlanılarak erişim haklarına ilişkin tabloların yapısı görülebilir:







 

PHP Arayüzü

PHP ile MySQL tablolarını kullanmak oldukça kolay. İzlenmesi gereken sıra:

  • Veritabanı sunucusuna bağlanma (mysql_connect, vs... gibi komutlar ile) ve bir bağlantı numarası (link identifier) alma,
  • Bu bağlantıyı kullanarak belirli bir veritabanı üzerine konumlanma (my_sql_select_db, vs...),
  • Yine bu bağlantıyı kullanarak sunucuya bir sorgu yöneltme (mysql_db_query, vs... gibi komutlar ile) ve bir sonuç numarası alma (result identifier),
  • Bu sonucu (bir nevi view) PHP değişkenlerine aktararak kullanma (mysql_fetch_row, vs...),
  • Sunucu ile bağlantıyı kesme (sürekli olmayan bağlantılar için mysql_close kullanılabilir veya script işletimi sonlanınca zaten bağlantı kesilir, sürekli bağlantılar ise web server durduruluncaya veya bağlantı sayısı belli bir değeri aşıncaya kadar açık kalır),

şeklindedir.

Tags php   
Yorumlar
Yorum Yok.
Giriş ya da Kayıt Yorum Eklemek İçin!

 

MemHT Portal is a free software released under the GNU/GPL License by Miltenovik Manojlo