|
Ana Sayfa | Kayıt ol | Yardım | Ortak Alan | Ajanda | Bugünkü Mesajlar | XML | RSS | |
|
Webmaster Bu başlıkta Çeşitli webmaster konuları tartışılır. |
| LinkBack | Seçenekler | Stil |
09-03-2007, 19:26 | #1 | ||
Yardımcı Admin Üyelik tarihi: Mar 2006 Yaş: 39
Mesajlar: 23.645
Tecrübe Puanı: 10 |
Mysql açıkkod camiasının güvenle desteklediği açık kaynak kodlu, özgür,ilişkisel bir veritabanı yönetim sistemidir.Bu özellikleri ile birlikte MySQL Windows/Unix/Linux ve daha bir çok platformda sorunsuzca çalışabilir,ihtiyacınıza göre ücretsiz yada ticari versiyonlarını tercih edebilirsiniz.Piyasada bulunan birçok dile sağladığı API ile kullanımı günden güne yaygınlaşmaktadır. Özellikle apache(web sunucusu),PHP(betik dili) ve MySQL (vtys) üçlüsünü kullanan siteler son yıllarda büyük artış gösterdi,kullandığınız Linux'lerde bu programların çoğu öntanımlı olarak kurulu geliyor, Mysql i iki ana kısımda inceleyebiliriz, Mysql-server ve mysql, mysql-server veritabanı sunucu işlemini yapar mysql ise sunucuyu yonetmek icin ve veritabanının kullanmak için gerekli program parçacıklarını içerir. Red Hat Linux kullanıyorsanız mysql paketlerinin sistemde kurulu olup olmadığını aşağıdaki komutla anlayabilirsiniz. Kod: [root@proxy root]# rpm -qa|grep mysqlmysql-server-3.23.58-4mysql-3.23.58-4 Mysql sunucu yazılımını kullanmak Red Hat benzeri sistemlerde mysql serveri başlatmak, durdurmak vs gibi işlemler için /etc/init.d/mysqld adında bir script bulunur,işleyişin nasıl gerçekleştiğini anlamak için bu dosyayı inceleyebilirisiniz.Dosya basitçe bash betik dili ile yazılmıştır. [root@proxy root]# /etc/init.d/mysqld Usage: /etc/init.d/mysqld {start|stop|status|condrestart|restart} Komutunu verdiğimizde hangi seçenekler ile birlikte kullanabileceğimizi görürüz,buradan mysql sunucuyu başlatmak için, [root@proxy root]# /etc/init.d/mysqld start Starting MySQL: [OK] Durdurmak içinse , [root@proxy root]# /etc/init.d/mysqld stop Stopping MySQL: Komutlarını kullanabiliriz. NOT:mysql'i başlatmak istediğinizde aşağıdaki hatayı alıyorsanız , [root@proxy root]# /etc/init.d/mysqld start Timeout error occurred trying to start MySQL Daemon. Starting MySQL: [FAILED] /etc/init.d/mysqld dosyasını açıp mysqladmin ping kelimelerinin yanyana geçtiği satırları bulup aşağıdaki gibi değiştiriniz. Kod: Mysqladmin -u mysqld ping. Ana Konfigürasyon dosyası Mysql sunucu yazılımının çeşitli değerleri vardır,mesela oluşturulan veritabanı dosyalarının hangi dizin altında saklanacağı,hata dosyalarının nerde saklanacağı vs.İşte bunlar için mysql /etc/my.cnf adlı dosyayı kullanır bu dosyayı açtığınızda içinde mysql sunucusunun çalışmasını düzenleyecek değerler bulabilirsiniz. [root@hydrian root]# cat /etc/my.cnf [mysqld] datadir=/var/lib/mysql socket=/var/lib/mysql/mysql.sock [mysql.server] user=mysql basedir=/var/lib [safe_mysqld] err-log=/var/log/mysqld.log pid-file=/var/run/mysqld/mysqld.pid Benim sunucumda vertitabanı dosyaları /var/lib/mysql dizini altında saklanıyorumuş,ben mysql'de bir veritabanı oluşturduğumda buna ait dosyalar /var/lib/mysql dizini altında oluşturduğum veritabanı ile aynı isimde kaydedilir. Mesela snort isimli bir veri tabanı oluşturduğumu farzedersem, /var/lib/mysql/snort adlı dizinin oluşması lazım. [root@proxy root]# ls -l /var/lib/mysql/ total 12 drwx------ 2 mysql mysql 4096 Jul 16 10:11 mysql srwxrwxrwx 1 mysql mysql 0 Jul 22 11:03 mysql.sock drwx------ 2 mysql mysql 4096 Jul 16 10:59 snort drwx------ 2 mysql mysql 4096 Jul 16 10:11 test buradan da snort isimli veritabanına ait dosyaları görmek istersem [root@proxy root]# ls -l /var/lib/mysql/snort/ total 3952 -rw-rw---- 1 mysql mysql 8614 Jul 16 10:55 data.frm -rw-rw---- 1 mysql mysql 0 Jul 16 10:55 data.MYD -rw-rw---- 1 mysql mysql 1024 Jul 16 10:55 data.MYI -rw-rw---- 1 mysql mysql 8606 Jul 16 10:55 detail.frm -rw-rw---- 1 mysql mysql 40 Jul 16 10:55 detail.MYD -rw-rw---- 1 mysql mysql 2048 Jul 16 15:56 detail.MYI -rw-rw---- 1 mysql mysql 8614 Jul 16 10:55 encoding.frm -rw-rw---- 1 mysql mysql 60 Jul 16 10:55 encoding.MYD -rw-rw---- 1 mysql mysql 2048 Jul 16 15:56 encoding.MYI -rw-rw---- 1 mysql mysql 8642 Jul 16 10:55 event.frm -rw-rw---- 1 mysql mysql 0 Jul 16 10:55 event.MYD ... komutunu verebilirim.
__________________ | ||
|
09-03-2007, 19:27 | #2 | ||
Yardımcı Admin Üyelik tarihi: Mar 2006 Yaş: 39
Mesajlar: 23.645
Tecrübe Puanı: 10 | Mysql Komutları Mysql sunucumuzu çeşitli grafik arabirimlerle kullanabileceğimiz gibi komut satırından da kullanabiliriz,fakat komut satırından kullanım genelde yönetim işlemleri için tercih edilir ,diğer işlemler için veritabanı tasarımınız geliştikçe işinizin zorlaşacağını söyleyebilirim. Mysql sunucuya bağlanma [root@proxy root]# mysql -u root -h localhost -p Enter password: Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 9 to server version: 3.23.58 Type 'help;' or '\h' for help. Type '\c' to clear the buffer. mysql> -u ile kullanıcı adı -h ile mysql sunucunun çalıştığı sistem -p ile de parolayı belirtebilirsiniz. **-p nin yanına parolayı bitişik yazmazsanız parolayı bir alt satırda isteyecektir. [root@proxy root]# mysql -u root -h localhost -p Enter password: Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 9 to server version: 3.23.58 Type 'help;' or '\h' for help. Type '\c' to clear the buffer. mysql> quit Bye Mysql> ile başlayan satırlar bizim mysql sunucuda olduğumuzu ve sunucuya komut girdiğimizi gösterir. VeriTabanı İşlemleri Mysql sunucuya bağlandıktan sonra komutları girebilmemiz için mysql> şeklinde bir satırın geleceğini belirtmiştik.Şimdide o satırdan komutlarımızı girmeye başlayalım,ilk komutumuz deneme_123 adında bir veritabanı oluşturmak ve sonra bu veritabanını silmek. Veritabanı Oluşturma mysql> create database deneme_123 Query OK, 1 row affected (0.03 sec) Mysql komutumuzun bittiğini anlamak için komut sonundaki ; karekterine bakar, ; karekterini koymazsak komutun bitmediğini düşünür ve bize devam etmemiz için bir alt satır açar. Oluşturduğumuz veritabanının dosyaları /var/lib/mysql/deneme_123 dizini altındadır. [root@proxy root]# ls -l /var/lib/mysql/ total 16 drwx------ 2 mysql mysql 4096 Jul 22 14:17 deneme_123 ... .. Herhangibir Veritabanını silme; Herhangi bir veritabanını silmek istersek drop kullanırız. mysql> drop database deneme_123; Query OK, 0 rows affected (0.00 sec) VeriTabanında Sorgulama İşlemleri Sistemimizdeki tüm veritabanlarını göremek için, mysql > show databases; +------------+ | Database | +------------+ | deneme_123 | | mysql | | snort | | test | +------------+ 4 rows in set (0.00 sec) Listelenen bu veritabanlarından herhangi birine bağlanıp işlem yapabilmek için connect ya da use komutlarını kullanabiliriz,ben use komutunu tercih ediyorum. Deneme_123 veritabanını kullanabilmek için use deneme_123;şeklinde bir komut işimizi görecektir. mysql> use deneme_123; Database changed Kullanmak için bağlandığımız veritabanındaki tabloları görmek isteyebiliriz burada da show tables komutu bize yardımcı olur, mysql> use snort; Reading table information for completion of table and column names You can turn off this feature to get a quicker startup with -A Database changed mysql> show tables; +------------------+ | Tables_in_snort | +------------------+ | data | | detail | | encoding | | event | | sig_class | | sig_reference | | signature | | tcphdr | | udphdr | +------------------+ 9 rows in set (0.00 sec) Bir sonraki yazıda mysqladmin aracını ,mysql için kullanıcı oluşturma ,kullanıcılara hak atama ve veritabanı için geçerli olan çeşitli sorgulama(tablo ekleme,silme,tabloya veri girme ,veri sorgulama vs) işlemlerini ele alacağız.
__________________ | ||
Bu konuyu arkadaşlarınızla paylaşın |
Konuyu Toplam 1 Üye okuyor. (0 Kayıtlı üye ve 1 Misafir) | |
| |