PostgreSQL ve MySQL Veritabanı Kıyaslaması

PostgreSQL'e karşı MySQL, açık kaynaklı bir ilişkisel veritabanı yönetim sistemi seçildiğinde önemli bir karardır. Hem PostgreSQL hem de MySQL, Oracle ve SQL Server gibi kurumsal çözümlerle rekabet edebilecek, zaman içinde kendini kanıtlanmış çözümlerdir.

PostgreSQL ve MySQL Kıyaslaması

MySQL, kullanım kolaylığı ve hızı ile ünlüyken, PostgreSQL'in birçok daha gelişmiş özelliği vardır; bu nedenle PostgreSQL'in genellikle açık kaynaklı bir sürümü olarak tanımlanması gerekir.

Aşağıdaki tablo PostgreSQL ve MySQL'in özelliklerini karşılaştırmaktadır:

  PostgreSQL MySQL
Bilinirlik Dünyanın en gelişmiş açık kaynak veritabanı Dünyanın en popüler açık kaynak veritabanı
Gelişim PostgreSQL açık kaynaklı bir projedir MySQL açık kaynaklı bir üründür
Okunuş Şekli post gre es qu el  may es qu el
Lisanslama MIT tarzı lisans GNU Genel Kamu Lisansı
Uygulama programlama dili C C / C ++
GUI aracı pgAdmin MySQL Workbench
ACID Evet Evet
Depolama motoru Tek depolama motoru Çoklu depolama motorları, örneğin InnoDB ve MyISAM
Tam metin araması Evet Evet
Geçici Tabloyu Sil DROP TABLE ifadesinde TEMP veya TEMPORARY anahtar sözcüğü yok MySQL, yalnızca geçici tabloyu kaldırmanıza izin veren DROP TABLE ifadesinde TEMP veya TEMPORARY anahtar sözcüğünü destekler.
DROP TABLE Tablonun bağımlı nesnelerini bırakmak için CASCADE seçeneğini destekleyin; örneğin, tablolar, görünümler, vb. CASCADE seçeneğini desteklemiyor
TRUNCATE TABLE PostgreSQL TRUNCATE TABLE , CASCADE , RESTART IDENTITY , CONTINUE IDENTITY , işlem güvenliği vb. Gibi daha fazla özelliği destekler. MySQL TRUNCATE TABLE , CASCADE özelliğini desteklemiyor ve güvenli işlem yapmıyor yani. veri silindikten sonra geri alınamaz.
Otomatik Satır Arttırma SERIAL AUTO_INCREMENT
Analitik fonksiyonlar Evet Yok hayır
Veri tipleri arrayhstoreve kullanıcı tanımlı tür gibi birçok gelişmiş türü destekler . SQL standart türleri
İşağretsiz tamsayı Yok hayır Evet
Boolean türü Evet TINYINT(1) dahili olarak Boole için kullanın
IP adresi veri türü Evet Yok hayır
Bir sütun için varsayılan değer ayarlama Hem sabit hem de işlev çağrısı desteği TIMESTAMP veya DATETIME sütunları için sabit veya CURRENT_TIMESTAMP olmalı
CTE Evet Evet (MySQL 8.0'dan beri desteklenen CTE )
EXPLAIN çıkışı Daha detaylı Daha az detaylı
Materyalleştirilmiş görünümler Evet Yok hayır
CHECK kısıtlaması Evet Hayır (MySQL CHECK kısıtlamasını yoksayar)
Tablo devralma Evet Yok hayır
stored procedures için programlama dilleri Ruby, Perl, Python, TCL, PL / pgSQL, SQL, JavaScript vb. SQL: stored procedures için 2003 sözdizimi
FULL OUTER JOIN Evet Yok hayır
INTERSECT Evet Yok hayır
EXCEPT Evet Yok hayır
Kısmi indeksler Evet Yok hayır
Bitmap dizinleri Evet Yok hayır
İfade dizinleri Evet Yok hayır
Kapsayan endeksler (Covering indexes) Evet (9.2 sürümünden beri) Evet. MySQL, tablo verilerine dokunmadan yalnızca indeksi tarayarak verilerin alınmasına izin veren endeksleri destekler. Milyonlarca sıra ile büyük tablolar durumunda bu avantajlıdır.
Ortak tablo ifadesi (CTE) Evet Evet. (8.0 sürümünden bu yana, MySQL CTE'yi destekledi)
Tetikleyiciler(Triggers) Rolleri ve tablo alanlarını (örneğin veritabanını küresel olarak etkileyenler hariç) çoğu komut türüne tektiklenebilen destek tetikleyicileri. Bazı komutlarla sınırlı
Bölümleme RANGE, LIST RANGE, LIST, HASH, KEY ve HANG veya KEY alt bölümleri ile RANGE veya LIST kombinasyonunun kullanıldığı bileşik bölümleme
Görev Takvimi pgAgent Planlanmış olay
Bağlantı Ölçeklenebilirliği Her yeni bağlantı bir işletim sistemi işlemidir. (process) Her yeni bağlantı bir işletim sistemi iş parçacığıdır. (thread)

 

Kaynak

 

Yorumunuzu Ekleyin


Yükleniyor...
Yükleniyor...