Apple M1 üzerine SQL Server kurulumu nasıl yapılır ?

By | February 6, 2024

Apple M1 çiplerine sahip Mac bilgisayarlarda SQL Server’ı doğrudan çalıştırmak mümkün değildir. SQL Server yalnızca Windows ve Linux işletim sistemlerinde doğrudan çalışabilir durumdadır. ARM tabanlı işlemciler için bir sürümü bulunmamaktadır. Ancak, SQL Server’ı dolaylı yollarla çalıştırmanın iki farklı yöntemi bulunmaktadır. 

  • Sanal Makine kullanarak 

Apple’ın M1 çipleri için optimize edilmiş sanal makine uygulamaları (Parallels Desktop gibi) kullanarak, ARM tabanlı bir Linux dağıtımını sanal bir makinede çalıştırabilir ve ardından SQL Server’ın Linux sürümünü bu sanal makinede kurabilirsiniz. Örneğin, Microsoft, ARM tabanlı işlemciler için SQL Server’ın bir önizleme sürümünü Ubuntu Linux üzerinde çalışacak şekilde sunmuştur.

  • Docker Kullanarak 

Bu yöntemi kullanabilmek için öncelikle docker.com adresinde Docker Desktop uygulamasını cihazınıza uygun olan türünde indirmeniz gerekmektedir. Bu işlemi tamamladıktan sonra kullanmak istediğiniz SQL Server Image dosyasını docker içerisine pull etmeniz gerekmektedir. SQL Server son sürümü olan SQL Server 2022 versiyonunu docker image olarak kullanmak için aşağıdaki kod bloğunu Apple M1 çipli cihazınızda Docker Desktop çalışırken Terminal’den çalıştırmanız gerekiyor. 

docker pull mcr.microsoft.com/mssql/server:2022-latest

Docker içerisine SQL Server Image artık var olduğuna göre docker da SQL Server var olan bir container oluşturabiliriz. Bunun için aşağıdaki kod bloğu işimizi görecektir. Kod bloğunda StrongPasswordd yazan kısımı kendinize göre belirleyeceğiniz bir SA kullanıcı parolası olarak vermeniz gerekir. Name kısmında da cointerın adını belirtiyorsunuz. Ben dmcm1sqlsrv01 olarak bir container oluşturdum.

docker run -e ACCEPT_EULA=Y -e SA_PASSWORD=StrongPassword' -p 1433:1433 --name dmcm1sqlsrv01 -d mcr.microsoft.com/mssql/server:2022-latest

Yukarıdaki resimde görüldüğü üzere iki farklı container var. Birisinde SQL Server 2022, diğerinde ise SQL Server 2019 çalışmaktadır.

Container içerisinde yer alan bu SQL Server kurulumlarına Mac üzerinde kullandığımız Azure Data Studio aracılığı ile doğrudan kullandığınız Macbookdan bağlantı sağlayabilirsiniz. Terminal içerisinde de sqlcmd ile bağlantı kurabilirsiniz. Aşağıdaki görsel de de Azure Data Studio ile kurduğum SQL Server’a eriştiğimi görebilirsiniz.

Terminal den bağlantı sağladığıma dair aşağıdaki ekran görüntüsünü paylaşıyorum.

Bu yazı ile, Yazılım geliştirici arkadaşlarım için, özellikle Macbook kullanıp da geliştirme sırasında SQL Server ihtiyacı duyduklarında, M1 çipli Macbook’larında SQL Server’ı nasıl kullanabileceklerini adım adım açıklamış oldum.

5 thoughts on “Apple M1 üzerine SQL Server kurulumu nasıl yapılır ?

  1. çağlar

    Merhaba, öncelikle açıklama için teşekkür ederim. Ancak sormak istediğim bir konu var, docker’ı parelel desktop içine mi yoksa Mac içinde mi kuracağız ?
    bilgileriniz için şimdiden teşekkür ederim

    Reply
    1. Caglar Ozenc Post author

      Merhaba,
      MAC içine kurabilirsiniz. Paralel Desktop’da zaten Windows kullanıyorsunuzdur. İhtiyacınız olmadan SQL Server kurabilirsiniz.

      Reply
  2. Vildan

    Hocam Merhaba; birkaç youtube videosundan da denedim. hep aşağıdaki hatayı alıyorum.
    Terminale : “docker container ls” yazıp baktığımda container ID oluşmadığını görüyorum.

    “A network-related or instance-specific error occurred while establishing a connection to SQL Server. The server was not found or was not accessible. Verify that the instance name is correct and that SQL Server is configured to allow remote connections. (provider: TCP Provider, error: 40 – Could not open a connection to SQL Server)”

    Dockers’a gidip containers a bakıyorum. oluşmuş, çalıştırıyorum. Yine olmuyor. Bunu nasıl çözebilirim? Şimdiden teşekkür ederim.

    Reply
    1. Caglar Ozenc Post author

      Merhaba Vildan,
      Değerli yorumun ve detaylı açıklaman için teşekkürler.

      Paylaştığın hata mesajı genellikle SQL Server container’ının düzgün başlatılamaması veya bağlantı portunun doğru şekilde yönlendirilmemesinden kaynaklanıyor. Aşağıdaki adımları takip ederek sorunu çözebilirsin:

      1. Container gerçekten oluşmuş mu?
      Terminalde şu komutla kontrol et:
      docker ps -a
      Eğer container yoksa veya “Exited” durumundaysa, başlatma sırasında bir hata oluşmuş olabilir.
      2. Doğru parametrelerle başlatıldığından emin misin?
      Aşağıdaki örneği referans alabilirsin:
      docker run -e “ACCEPT_EULA=Y” -e “SA_PASSWORD=YourPassword123!” -p 1433:1433 –name sqlserver -d mcr.microsoft.com/mssql/server:2022-latest
      SA parolası karmaşık ve en az 8 karakter olmalı aksi durumda başlatılmaz
      3. Log’ları kontrol ettin mi?
      Başarıyla oluşan bir container bile hata alabilir. Şu komutla logları görebilirsin:
      docker logs sqlserver

      Tüm bu adımları kontrol ettikten sonra sorun devam ederse, log çıktısını da paylaşabilirsin. Yardımcı olmaktan memnuniyet duyarım.

      Kolay gelsin! 🙌

      Reply

Leave a Reply

Your email address will not be published. Required fields are marked *