5. Veritabanı
Önceki 11. Kısım - Sistem Yönetimi Sonraki
5. Veritabanı
5.1. RDBMS nedir? Hangi veritabanları RDBMS destekliyor?
5.2. InterBase/Firebird kurdum ama çalıştıramadım. /opt/interbase/bin/ibmgr -start diye hata veriyor.
5.3. MySQL'de tarih alanı YYYYMMDD(amerikan) olarak gösteriliyor.
5.4. Mysql root parolamı unuttum. Ne yapabilirim?
5.5. PHP ile MySQL'e bağlanmaya çalıştığımda "Fatal error: Call to undefined function: mysql_connect()" diye hata alıyorum. Ne yapmalıyım?
5.6. Mysql'in sıralamada Türkçe karakterleri sıralaması nasıl sağlanır?
5.7. Mysql'i tekrar derlemeden Türkçe karakterleri sıralamasını nasıl sağlarım?
5.8. Mysql'i güncellerken hangi dizinlerin yedeğini almalıyım?
5.9. Slackware 9.0 kurulu sistem de install_mysql_db dedikten sonra test veritabanları normal kuruluyor ancak safe_mysqld & dedikten sonra mysql ended deyip programı sonlandırıyor.

5.1. RDBMS nedir? Hangi veritabanları RDBMS destekliyor?
Yanıtlayan: Enver ALTIN
RDBMS: Relational Database Management System - İlişkisel Veritabanı Yönetim Sistemi
Veritabanı içerisindeki nesnelerin birbirleri ile ilişkilerini programlanabilir biçimde düzenleyerek arşivlemeyi amaçlayan veritabanı tasarımıdır.
Farklı tablolar içerisindeki alanların birbirleri ile olan ilişkilerini tutarak bir tablodan herhangi bir kayıt silindiğinde ya da değiştirildiğinde diğer tabloların da bu durumdan çeşitli biçimlerde etkilenmesini saglamak bu yolla mümkündür.
RDBMS destekleyen bazı SQL sunucular:
5.2. InterBase/Firebird kurdum ama çalıştıramadım. /opt/interbase/bin/ibmgr -start diye hata veriyor.
Yanıtlayan: M. Umut Karabudak
InterBase 6.0 Open ve Firebird çalıştırılabilir paketleri, RedHat 6.2 dağıtımı üzerinde ncurses-4.x ile derlendiğinden; daha yeni dağıtımlarda bulunması gereken /lib/libncurses.so.4 dosyasını bulamıyor. Dağıtımınızda /lib/libncurses.so.5.2 gibi bir dosya varsa,
# ln -sf /lib/libncurses.so.5.2 /lib/libncurses.so.4
biçiminde sembolik bağ oluşturarak sorunu çözebilirsiniz.
5.3. MySQL'de tarih alanı YYYYMMDD(amerikan) olarak gösteriliyor.
Yanıtlayan: Mesut TUNGA
$sql = mysql_query("Select DATE_FORMAT(tarih, '%d-%m-%Y')
                    as trtarih from table") or die (mysql_error());
$r = mysql_fetch_array($sql);
echo $r[trtarih];
5.4. Mysql root parolamı unuttum. Ne yapabilirim?
MySQL'i durdurduktan sonra --skip-grant-tables parametresi ile tekrar başlatın. Yeni parola atamak için
# mysqladmin -u root password 'yeni_parolanız'
komutunu kullanın. Yeni parolanızın etkin olması için
# mysqladmin flush-privileges
komutunu çalıştırın. Daha ayrıntılı bilgi için Mysql kılavuzunda A.4.2 How to Reset a Forgotten Password kısmına bakınız.
5.5. PHP ile MySQL'e bağlanmaya çalıştığımda "Fatal error: Call to undefined function: mysql_connect()" diye hata alıyorum. Ne yapmalıyım?
PHP kurulumunuzda MySQL desteği yok. Eğer PHP'yi siz derleyip kurduysanız --with-mysql parametresini kullanarak tekrar derleyin.
Hazır gelen RPM'leri kullanıyorsanız muhtemelen dağıtımınızın CD'sinde modphp_mysqlxxxxxxxx.rpm dosyası vardır. Bunu kurun.
5.6. Mysql'in sıralamada Türkçe karakterleri sıralaması nasıl sağlanır?
Yanıtlayan: Doruk Fişek
Mysql'i derlemeden önce configure betiğini çalıştırırken --with-charset=latin5 seçeneğini kullanırsanız sıralamalar Türkçe harflere göre yapılır.
5.7. Mysql'i tekrar derlemeden Türkçe karakterleri sıralamasını nasıl sağlarım?
Yanıtlayan: Can Uğur Ayfer
Mysql'in başlangıç betiğindeki (genelde /etc/rc.d/init.d/mysql) start bölümünde safe_mysqld şeklinde Mysql'i başlatan komut vardır. Buna aşağıdaki iki parametreyi eklemeniz gerekli:
--character-sets-dir=/usr/share/mysql/charsets
(veya /usr/local/mysql/share/charsets)
--default-character-set=latin5
5.8. Mysql'i güncellerken hangi dizinlerin yedeğini almalıyım?
Yanıtlayan: Doruk Fişek
Tüm veritabanlarını ve kullanıcı ayarlarını almak için eski kurulumunuzdan Mysql'in kurulu olduğu dizinin altındaki sadece data/ ya da var/ isimli dizini almanız yeterli olacaktır.
Doğrudan yeni kurulumda ilgili dizine koyduğunuzda otomatik çalışacaktır.
5.9. Slackware 9.0 kurulu sistem de install_mysql_db dedikten sonra test veritabanları normal kuruluyor ancak safe_mysqld & dedikten sonra mysql ended deyip programı sonlandırıyor.
Yanıtlayan: Murat Gezer
/var/lib/mysql dizini idi galiba. Sorun çıkaran kullanıcı adının ve grubunun  root.root oluşu. Bu dizinin iyeliğini mysql.mysql şeklinde değiştirin, derdiniz bitecektir.
Önceki Üst Ana Başlık Sonraki
4. Web Başlangıç 12. Kısım - Diğer
Bir Linux Kitaplığı Sayfası