Windows işletim sisteminde MySQL ile veritabanı uygulamaları geliştirmek için temel olarak 2 farklı yöntem kullanabiliriz:
1. Bağımsız sunucu (Standalone Server)
Bu sistemde, geliştirdiğimiz uygulamanın herhangi bir bilgisayarda çalışması için ya aynı bilgisayarda ya da ağ üzerindeki bir bilgisayarda bağımsız olarak çalışan bir MySQL sunucuya ihtiyaç duyulur. Programımızdan önce böyle bir sunucunun kurulması ve çalıştırılması gerekir. Geliştirdiğimiz veritabanı uygulaması, MySQL Connector/C (libmysql) API komutlarını kullanarak sunucuya bağlanır ve gerekli veritabanı işlemlerini yapar.
Windows (x86, 32-bit), MSI Installer adresinde bulunan kurulum paketini kullanarak veya MySQL Community Server adresinde bulunan .zip uzantılı dosyayı bilgisayarınızda açıp gerekli ayarları yaparak bilgisayarımıza kurabiliriz. mysqld (mysqld.exe) programı çalıştığında bir MySQL Server devreye girer ve istemci programlardan gelecek veritabanı bağlantılarını yönetmek ve işlem yapmak üzere, ağ üzerinden gelecek bağlantıları beklemeye başlar.
Bilgisayarımıza kurulduktan sonra, sunucu diğer programlardan bağımsız olarak çalışır. İstemciler (Clients) sunucuya bağlanmak için gerekli işlemleri yaparlar.
2. Gömülü sunucu (Embedded Server)
Bu sistemde, geliştirdiğimiz uygulama MySQL Connector/C ile aynı API komutlarını kullanan libmysqld kütüphanesini kullanarak kendi içinde bir Gömülü Sunucu (Embedded Server) oluşturur ve gerekli veritabanı işlemlerini yapar.
Bu kütüphane dosyaları MySQL Connector/C içinde mevcut olmayıp, MySQL Community Server'ın zip uzantılı dosyası içinde yer alır. Bu yazıyı hazırladığımızda, MySQL sitesinde yer alan en son sürüm MySQL Community Server 5.6.11 idi.
Bağımsız sunucudan en önemli farkı, MySQL sunucunun bilgisayar yazılımının bir parçası olarak oluşturulmasıdır. Sunucu (Server) / İstemci (Client) işlemlerine gerek yoktur. libmysqld kütüphane dosyaları uygulama içinde derlenir ve uygulamanın bir parçası olarak çalışır. Bu sistemin en önemli avantajı MySQL veritabanı sisteminin oluşturulması için ayrıca bir sunucu kurulumuna ihtiyaç duyulmamasıdır. Uygulama çalıştırıldığında sunucu ve veritabanı için gerekli sistem hazır durumdadır. Gerekli tüm veritabanı işlemleri uygulama içinden yapılabilir.
Avantajları
Dezavantajları
Bağımsız sunucu (Standalone Server)
Gömülü sunucu (Embedded Server - Libmysqld)