MySQL
- Okunuşu
- may es-kyu-el
Kısaca
MySQL, SQL ile sorgulanan popüler, açık kaynaklı bir ilişkisel veritabanıdır; uzun süredir WordPress'in ve klasik LAMP yığınının veritabanı olarak bilinir.
MySQL nedir?
MySQL ilk olarak 1995'te İsveçli MySQL AB şirketi tarafından yayımlandı. Sun Microsystems onu 2008'de satın aldı, Oracle da 2010'da Sun'ı satın alınca MySQL'i devraldı. İlişkisel bir veritabanı yönetim sistemidir: veri satır ve sütunlardan oluşan tablolarda düzenlenir, uygulamalar da onu SQL ile okuyup değiştirir.
Erken dönem web'in büyük bölümünü çalıştıran Linux, Apache, MySQL ve PHP'den oluşan LAMP yığınının M'si olarak ünlendi. WordPress, Drupal ve birçok başka içerik yönetim sistemi hâlâ varsayılan olarak onu kullanır; neredeyse her barındırma (hosting) firması da onu sunar. Varsayılan depolama motoru InnoDB; transaction'ları, satır seviyesinde kilitlemeyi ve dış anahtarları (foreign key) destekler.
MySQL, kurulumu kolay, yaygın okuma ağırlıklı iş yüklerinde hızlı olması ve her büyük dil ile bulut tarafından desteklenmesiyle sevilir. Veriyi bir birincil sunucudan okuma kopyalarına (read replica) çoğaltabilir; okumaları ölçeklemenin yaygın bir yolu budur. Büyük siteler, veriyi birçok sunucuya bölen araçlarla onu muazzam ölçeklerde çalıştırır.
Sık yapılan bir yanlış, MySQL ile MariaDB'nin aynı ürün olduğu düşüncesidir. MariaDB, 2009'da MySQL'in asıl yaratıcısı tarafından başlatılan bir çatallamadır (fork); ikisi büyük ölçüde uyumlu kalsa da yıllar içinde birbirinden uzaklaştı. MySQL'in kendisi hem GPL açık kaynak lisansıyla hem de Oracle'ın ticari lisanslarıyla sunulur.
Önemli noktalar
- MySQL, SQL kullanan açık kaynaklı bir ilişkisel veritabanıdır.
- Klasik LAMP yığınının M'sidir ve WordPress'in varsayılan veritabanıdır.
- InnoDB motoru transaction'lar, satır kilitleme ve dış anahtarlar sağlar.
- Okuma kopyaları MySQL'i ölçeklemenin yaygın bir yoludur.
- MariaDB, MySQL'in asıl yaratıcısının yaptığı ayrı bir çatallamadır.
Örnek
CREATE TABLE posts (
id INT AUTO_INCREMENT PRIMARY KEY,
title VARCHAR(200) NOT NULL,
created_at DATETIME DEFAULT CURRENT_TIMESTAMP
) ENGINE = InnoDB;
INSERT INTO posts (title) VALUES ('Hello, world');
SELECT id, title FROM posts ORDER BY created_at DESC LIMIT 10;Sık sorulan sorular
MySQL ücretsiz mi?
MySQL Community Edition, GPL lisansıyla ücretsiz ve açık kaynaklıdır. Oracle ayrıca ek özellikler ve destek içeren ticari sürümler de satar.
MySQL ile MariaDB arasındaki fark nedir?
MariaDB, MySQL'in kurucularından Michael Widenius'un 2009'da başlattığı bir MySQL çatallamasıdır. Doğrudan yerine geçebilen bir alternatif olarak başladı; ikisi hâlâ büyük ölçüde uyumlu olsa da artık her birinde diğerinde olmayan özellikler var.
MySQL bir NoSQL veritabanı mı?
Hayır. MySQL ilişkisel bir SQL veritabanıdır; yine de daha esnek veriler için JSON sütunlarını saklayıp sorgulayabilir.
Sık karşılaştırılanlar
İlgili sayfalar
- İlişkisel VeritabanıVeritabanları, s. 14İlişkisel veritabanı, veriyi satır ve sütunlardan oluşan tablolarda saklar, tabloları anahtarlarla bağlar ve veriyi SQL ile sorgulayıp birleştirmeyi sağlar.
- SQLVeritabanları, s. 29SQL, ilişkisel veritabanlarıyla çalışmanın standart dilidir; tablo oluşturmak ve içindeki veriyi eklemek, sorgulamak, güncellemek ve silmek için kullanılır.
- PostgreSQLVeritabanları, s. 26PostgreSQL, güvenilirliği, standartlara sıkı uyumu ve eklentileriyle bilinen ücretsiz, açık kaynaklı ilişkisel veritabanıdır; web uygulamalarında yaygındır.
- Veritabanı ReplikasyonuVeritabanları, s. 41Veritabanı replikasyonu, verinin bir sunucudan diğerlerine sürekli kopyalanmasıdır; böylece birkaç sunucu güvenilirlik ve ölçek için aynı veriyi tutar.
- VeritabanıVeritabanları, s. 37Veritabanı, bilgisayarda düzenli biçimde saklanan ve uygulamaların verimlice kaydedip arayıp güncelleyebildiği, bir yazılımla yönetilen veri topluluğudur.
- PHPProgramlama Dilleri, s. 23PHP, web geliştirme için tasarlanmış, sunucuda çalışarak HTML sayfaları üreten ve tarayıcı isteklerini yanıtlayan, dinamik tipli bir betik dilidir.
Bu sayfada bir hata ya da eksik mi gördünüz?Düzeltme önerin