MySQL, açık kaynaklı bir SQL veri tabanı yönetim sistemidir ve dinamik web sitelerinin temelidir. Sade bir dille bunun anlamı: MySQL olmadan bloglar, resim galerileri veya çevrimiçi mağazalar olmazdı. MySQL veri tabanı, Wordpress kullanmak için temel bir gerekliliktir. Açık kaynaklı yazılım MySQL, 1994 yılında İsveçli MySQL AB şirketi tarafından geliştirilmiştir. Platformdan bağımsızdır ve evrensel olarak uygulanabilir en azından bu nedenle değil, bu yazılım çok hızlı yayıldı.
İsim, My (bir MySQL Ab kurucu ortağının kızlarından birinin adı) ve SQL kısaltmasından oluşur. SQL, “Yapılandırılmış Sorgu Dili”nin kısaltmasıdır ve veri tabanlarına erişim için en yaygın standartlaştırılmış dildir.
MySQL, bir veri tabanı yönetim sisteminin (DBS) klasik görevi olan tablolardaki verileri yönetir, görüntüler, depolar ve değiştirir. Bir istemci-sunucu sistemi olarak çalışır: ilgili veritabanı sunucudur. İstemci tarafındaki yazılım, veri tabanına komutlar gönderir. Veri tabanı, komutları çalıştırılabilir koda çevirir, komutları yürütür ve bunlarla ilgili bilgileri istemciye gönderir.
MySQL, dünyadaki en popüler DBS olarak kabul edilir. Bunun nedenleri: Hızlı, kararlı ve kullanıcı dostudur. Diğer şeylerin yanı sıra, çok kullanıcılı ve çok iş parçacıklı yeteneği, yönetimi kolay bir yetkilendirme konsepti ve yüksek trafik hacimlerinde bile optimum performans sunar. Sonra yüksek esneklik var: MySQL, Linux, Windows ve Mac OS dahil olmak üzere 20’den fazla farklı platformda kullanılabilir.
Web barındırma paketlerinde, MySQL veri tabanları genellikle yalnızca tek tek değil, birden çok sürümde bulunur. 5 veya hatta 125 x MySQL gereksiz bir lüks değildir, ancak kullanıcılara web projeleri için daha fazla seçenek sunar ve aynı zamanda daha fazla güvenlik anlamına gelir.
İnternetin ilk günlerinde, web siteleri statik bir kod kullanıyordu bu durumda, görüntülenecek tüm içerik ve diğer bilgiler bir HTML belgesine sıkı bir şekilde gömülüdür. Bu, basit bir metni bile güncellemek için her değişikliğin çok sayıda belgede yapılması gerektiği anlamına gelir. Bu nedenle günümüzde bilgilerin MySQL veri tabanında saklandığı dinamik web siteleri tercih edilmektedir.
İçerik yönetim sistemleri (CMS) için mutlaka bir veri tabanı gereklidir. MySQL’e ek olarak, veri tabanı nın bir dosyaya kaydedildiği SQLite gibi bazı formatlar da desteklenir. Ancak MySQL ile bilgiler ana bellekte bulunur ve bu da performansı önemli ölçüde artırır. Verilerin işleme hızı, sırayla PHP yorumlayıcısının hızını etkiler ve bu nedenle, sunucu yanıt süresinin (SRT) artmasına ve yavaş erişim durumunda gecikmiş sayfa yüklenmesine yol açar. Bu nedenle MySQL veya MariaDBdiğer formatlara göre bir veri tabanı olarak tercih edilir. Hemen hemen her durumda, ücretli web barındırma bir MySQL veri tabanı ile birleştirilir. Ancak ücretsiz barındırma ile bunun ücretli bir seçenek olarak satın alınması gerekebilir.
MySQL, en eski veri tabanı sistemlerinden biridir ve 1994’ten beri sürekli olarak geliştirilmiştir. Tabloların ve verilerin basit bir komut kullanılarak okunabileceği, değiştirilebildiği veya oluşturulabildiği bir programlama dilini andıran sözdizimine sahip ilişkisel bir veri tabanıdır. Ancak, istisnai durumlarda yalnızca kullanıcıların doğrudan veri tabanıyla çalışması gerekir. Bunun yerine, bu görev, veri tabanı nı gömülü talimatları aracılığıyla okuyan ve işleyen PHP betikleri tarafından gerçekleştirilir. Çıktı daha sonra bir CMS’nin yapılandırması veya kullanıcı ara yüzü gibi bir grafik kullanıcı ara yüzüne sahip web siteleri aracılığıyla gerçekleşir. Doğrudan bir veri tabanıyla çalışmak için PHP’de olduğu gibi grafiksel yardımcı programlar da vardır. Manuel erişime izin veren yazılı phpMyAdmin.
MySQL, son birkaç on yılda en popüler veri tabanı sistemlerinden biri haline geldi ve çoğu CMS için standart seçimdir.
Bu özellikler, MySQL’i verimli sözdizimi ve yüksek yanıt hızı gerektiren dinamik web siteleri gibi uygulamalar için ideal hale getirir. Ücretsiz kullanılabilirlik ile bağlantılı olarak, MySQL veri tabanı ile web barındırma bu nedenle kendisini resmi olmayan standart olarak belirlemiştir. Genellikle bir Linux işletim sistemi, PHP ve bir Apache web sunucusu ile birleştirilir ve bu kombinasyonda LAMP (Linux, Apache, MySQL, PHP) veya nginx kullanılırken LEMP olarak da bilinir.
Şirketin, geliştirmeden sorumlu MySQL AB’nin 2010 yılında Oracle grubu tarafından devralınmasının ardından, çok sayıda önde gelen programcı, açık kaynak sürümün ticari sürüme kıyasla ihmal edildiğini eleştirdi. Bu, MySQL AB’nin kurucularından biri ve baş geliştiricisi olan Michael Widenius’un projeden ayrılmasına ve açık kaynak koduna dayalı bir çatal başlatmasına neden oldu. Kızlarından birinin MariaDB’den sonra (önceki MySQL gibi) adını verdi. MariaDB, sözdizimi açısından tamamen uyumludur ve (neredeyse her zaman) bir sistemden diğerine karmaşık olmayan bir geçişe izin verir. Ancak MariaDB, MySQL’in ticari sürümü için ayrılmış bazı özelliklere sahiptir. MariaDB’ye geçiş herhangi bir çakışmaya neden olmazken, ayarlamalar olmadan geri dönüş mümkün değildir. Bu arada, MariaDB geniş çapta kabul gördü ve Debian, Ubuntu, OpenSUSE, Arch, Fedora veya Slackware gibi popüler Linux dağıtımları tarafından standart olarak kullanılıyor.
MySQL veri tabanı ile web barındırma durumunda, bu, PHP betiklerinin gerektirdiği içeriğin depolandığı merkezi bir örnek görevi görür. Bunlar şunları içerir:
Şifreler gibi hassas veriler MySQL ve MariaDB tarafından açık metin olarak saklanmaz, ancak önceden tek yönlü şifreleme gibi güvenli yöntemler kullanılarak PHP betikleri tarafından şifrelenir. Parolanın şifresinin çözülmesi mümkün değildir. MySQL veri tabanı ve PHP ile web barındırmanın güvenliği, belirli bir uzunlukta güvenli şifreler ve özel karakterler kullanılması koşuluyla, bir veri tabanı çalınsa bile garanti edilir.