MySQL’de Kullanıcıya Yetki Vermek (Grant)

MySQL Yorum yapılmamış »

MySQL Yönetici ekranında bir kullanıcı ve bir veritabanı oluşturup bu kullanıcı için veritabanında tam yetki verelim.

Öncelikle veritabanını oluşturuyoruz:

1
CREATE DATABASE veritabani;

Ve bu veritabanında yetkilendireceğimiz bir kullanıcı oluşturuyoruz:

1
CREATE USER 'kullanici'@'localhost' IDENTIFIED BY 'sifre';

Yukarıda localhost sunucu adresidir ve kullanıcının bağlanabileceği sunucuyu belirtir. Eğer tüm sunucular için yetki verilecekse ‘kullanici’@’%’ olarak değiştirmelisiniz.

Şimdi bu kullanıcıya yarattığımız ‘veritabani’ isimli veritabanı üzerinde tam yetki verelim. Unutmayın yetki verebilmek için MySQL Yönetici şifresi ile giriş yapmış olmanız gerekiyor.

1
GRANT ALL ON veritabani.* TO 'kullanici'@'localhost';

Yukarıdaki kodu çalıştırdığınızda ‘veritabani’ üzerinde kullanıcı tam yetkilendirilmiş olacaktır.

Diğer tüm yetkiler ve kullanımlar için (İngilizce);
http://dev.mysql.com/doc/refman/5.1/en/grant.html


MySQL Komutları

MySQL Yorum yapılmamış »

Açık kaynak veritabanı sistemi MySQL ile anlaşabilmek için çeşitli komutlar kullanmaktayız. Bunlar bir veritabanı yaratmaya, silmeye, tablo oluşturmaya, seçmeye, düzenlemeye ve silmeye yaramaktadır. Şimdi bunlardan en çok kullanılanları ve en önemlileri burada sizlerle paylaşalım.

Öncelikle bir veritabanı (database) yaratmak için kullandığımız CREATE komutu. Bu komut, eğer yetkiliyseniz belirtilen isimde veritabanı yaratmanızı sağlar. Veritabanı, tabloları kapsayan en büyük depolama birimidir.

CREATE DATABASE veritabani;

Bir veritabanı, içindeki tabloları ve tüm bilgilerini silmek içinse DROP DATABASE’yi kullanmaktayız. Yarattığımız “veritabani” isimli veritabanını silmek istersek:

DROP DATABASE veritabani;

Komutu ile bu işlemi gerçekleştiririz. Veritabanının küçük depolama birimleri olan tabloları da CREATE ve DROP ile oluşturur, fakat bu kez DATABASE yerine TABLE deyimi kullanırız.

CREATE TABLE tabloadi (
'id' INTEGER(5) UNSIGNED NOT NULL AUTO_INCREMENT,
`kategori` INTEGER(4) UNSIGNED NOT NULL,
`isim` VARCHAR(45) NOT NULL,
`detaylar` TEXT NOT NULL,
PRIMARY KEY(`id`)
)
TYPE = MYISAM;

Burada parantez içerisinde tablomuzu oluşturan sütunlar ile ilgili bilgileri gireriz. Tek tırnak içindekiler sütun adlarıdır. Sonraki kullanılanlar ise o sütunun özellikleri. INTEGER(Boyut) sayısal bir değer, VARCHAR(boyut) ya da TEXT ise alfasayısal bir değeri ifade eder. DOUBLE ise ondalıklar ve negatifleri de kullanabildiğimiz sayısal ifadelerdir. NOT NULL, sütunun asla tanımsız olamayacağını, AUTO_INCREMENT her yeni kayıtla değerin artacağını (bu işlem otomatik yapılır), PRIMARY KEY hangi anahtarın öndeğer olduğunu (öncelikli) belirtir. En sonda kullanılan MyISAM (ya da InnoDB) ise tablo türünü belirtmemize yarar. Tabloyu silmek içinse DROP kullanılır:

DROP TABLE tabloadi;

Ve şimdi nasıl kayıt ekleyip, düzenlediğimizden ve sildiğimizden bahsedelim. Kayıt eklemek için INSERT INTO deyimini kullanırız.

INSERT INTO tabloadi (sutun1, sutun2) VALUES('deger1', 'deger2');

Burada ilk parantezde sütun adları, VALUES() içerisinde ise o sütuna karşılık gelecekleri yazdık. Eğer tüm sütunları içeren bir komut kullanıyorsanız sütunların sırasına göre yazabilirsiniz.

INSERT INTO tabloadi VALUES('deger1', 'deger2');

Bir kayıttaki değeri UPDATE komutu ile değiştiririz:

UPDATE tabloadi SET sutun1='deger1', sutun2='deger2' WHERE kosul1='kosul2';

Buradaki koşul belirtilirken klasik IF – ELSE deyimlerinde olduğu gibi eşleştirmelere gidilir. Mesela id anahtarı 4 olan veride güncelleme yapacaksak koşulumuz id=’4′ olacaktır. Birden fazla koşul belirtiyorsak ve için AND, veya için OR kelimelerini aralarına getiririz, örneğin id=’4′ AND kategori=’2′ gibi.

Bir kaydı silmek için koşul belirterek aşağıdaki komutu kullanırız:

DELETE FROM tabloadi WHERE sutun1='kosul';

Eğer tüm kayıtları sileceksek WHERE ve sonrasını yazmayarak bu işlemi yaparız. Böylece o tablodaki tüm kayıtlar silinecektir.

Kayıtları seçmek, listelemek içinse SELECT komutu kullanırız. Bu kodun kullanımı aşağıdaki gibidir:

SELECT sutun1, sutun2 FROM tabloadi WHERE sutun1='kosul' ORDER BY sira LIMIT 0, 10;

Belirtilen komuttaki SELECT sutun1, sutun2 hangi sütunların seçime dahil edileceğini belirler. WHERE ile hangi koşula bağlı kayıtları listeleyeceğimizi anlatırız. ORDER BY sira, kayıtların neye göre sıralanacağını. Buraya bir sütun adı gelir. Eğer sayısal ise küçükten büyüğe, ORDER BY sutun1 DESC dersek büyükten küçüğe. Alfasayısal ise A’dan Z’ye, DESC varsa sonunda Z’den A’ya sıralar. LIMIT 0, 10 olarak belirttiğimiz ise kaç kayıt listeleneceği ve nerden başlanacağı. Burada ilk kayıttan başlanıp 10 kayıt listelenir. LIMIT 10, 20 dersek. 10. kayıttan başlar ve 20 tane sıralar.

Sevgilerimizle…
Venus Programlama


Wordpress'in katkılarıyla hazırlandı ve ndesign teması kullanıldı.
Venus © 2008
Konular RSS Yorumlar RSS Giriş