MySQL Nedir?
MySQL'i anlamak için, öncelikle veritabanı ve SQL'i anlamamız gerekiyor. Sırasıyla bunlara bir gözatalım.
Veritabanı (Database) Nedir?
Aslında fark etmeseniz bile her gün verilerle uğraşıyorsunuz.. Örneğin;
- Telefonunuzdan playlist'ten bir şarkı açıp dinlediğinizde, playlist burada veritabanıdır.
- Ya da bir fotoğraf çektiniz sosyal medya hesaplarınızda bunu galeriden seçip paylaştınız. Galeriniz aslında bir veritabanıdır.
- Ya da bir alışveriş sitesinden ürünleri satın almak için alışveriş sepetine attınız. Alışveriş sepeti bir veritabanıdır.
Veribanları gördüğünüz gibi her yerde. Peki ama veritabanı nedir? Aslında teknik tanıma göre, yapılandırılmış veri topluluğu diyebiliriz. Bu yüzden yukarıdaki örnekleri verdik.
Doğası gereği veriler birbirleriyle ilişkilidir. (related) Örneğin bir ürün, birden fazla etiketiyle birlikte bir kategoriye aittir. Bu nedenle ilişkisel veritabanı tabirini kullanıyoruz.
İlişkisel veritabanlarında, tabloları kullanarak "ürünler, kategoriler, etiketler" vb. verileri modelliyoruz. Tablolar ise satır ve sütunlardan oluşuyor. Tıpkı excel'deki tablolar gibi düşünün. Yatay olanlar satır, dikey olanlar ise sütun.
Bir tablo, başka bir tablo ile bire-bir ya da bire-çok şeklinde ilişkili olabilir. Yani birbiriyle bağlantılı olabilir.
Yani verilerimizi yapılandırıp yeri geldiğinde daha kolay erişebileceğimiz bir yapı haline getiriyoruz.
SQL - Veritabanı Dili
SQL uzun adıyla Structured Query Language, türkçesiyle "Yapılandırılmış Sorgu Dili" anlamına gelmektedir. Veritabanına erişmek için kullanılan standart dildir.
SQL üç bölümden oluşur. Bunlar;
- Tanımlama: Veritabanını ve nesnelerini tanımlamanıza yardımcı olan tablolar, view'lar, trigger'lar, stored procedure'ler vb. ifadeleri içerir.
- İşleme: Verilerinizi güncellemek ve sorgulamak için ifadeler içerir.
- Kontrol: Bir kullanıcının veritabanında erişim izinlerini sağlar.
Sanırım artık Veritabanı ve SQL sizin için biraz daha anlamlı hale geldi. Gelelim sıradaki soruya, herşey iyi güzelde bu MySQL nedir?
MySQL Nedir?
MySQL'in My kısmı, kurucusu Michael Widenius'un kızının isminden gelmektedir. My ve SQL kombinasyonu sonucu ise MySQL ismi ortaya çıkmıştır. Bu sizi hayal kırıklığına uğraşmış olabilir. Ama öyle düşünmeyin, ne kadar tatlı bir baba değil miymiş Michael reyiz :)
MySQL, Oracle'ın geliştirmekte olduğu, açık kaynaklı ilişkisel verilerinizi yönetileceğiniz veritabanı yönetim sistemlerinden biridir. Yani MySQL'i herhangi bir ücret ödemeden kullanabilirsiniz. Ayrıca açık kaynaklı olduğu için, kaynak kodlarında kendinize göre düzenlemeler yapabilirsiniz.
MySQL ücretsiz ancak premium destek almak için dilerseniz Oracle'dan Ticari Lisans satın alabilirsiniz.
MySQL'de, diğer veritabanlarına (Örn: Oracle Database, Microsoft SQL vb.) göre ustalaşması çok daha kolaydır.
MySQL, UNIX, Linux, Windows vb. platformlarda çalışmaktadır. Kurulumu ise çok kolaydır. Eğer hazır bir hosting hizmeti satın aldıysanız, MySQL kurulu olarak gelmektedir.
Web sitesi ya da web uygulamaları yapıyorsanız, verilerinizi yönetmek için MySQL iyi bir tercih olacaktır. MySQL, LAMP stack'inin bir parçasıdır. Bu stack içinde ise sırasıyla Linux, Apache, MySQL ve PHP vardır.
MySQL Resmi Web Adresi: https://www.mysql.com/
Güncel Sürümü: 8.0.16 (makalenin yazıldığı tarih)