macOS Üzerinde .NET Geliştirme Ortamı – Bölüm-2: MSSQL Server, Docker for Mac ve Visual Studio Code
  1. Anasayfa
  2. Container

macOS Üzerinde .NET Geliştirme Ortamı – Bölüm-2: MSSQL Server, Docker for Mac ve Visual Studio Code

3

İlk bölümünde .NET Core ve Visual Studio for Mac kullanarak macOS üzerinde .NET ile nasıl geliştirme yapabileceğimize değinmiştik. 2. Bölümde ise veritabanı olarak nasıl MSSQL kullanabileceğimizi inceleyeceğiz. MSSQL’in Linux versiyonu olmasına rağmen bir macOS versiyonu bulunmuyor. macOS üzerinde eğer veritabanı olarak MSSQL kullanmak istiyorsanız Azure ne güne duruyor diyebilirsiniz. Ancak ben localde çalışmak istiyorum ya da bulut kullanmamam gerekiyor diyorsanız Docker for Mac ve Visual Studio Code kullanabilirsiniz.

Öncelikle Docker for Mac kurulumu ile başlayalım. Buradan indirebileceğiniz kurulum dosyasını açtığınızda Resim-1’de göreceğiniz standart mac kurulum ekranı çıkıyor. Basit bir sürükle bırak işlemi ile ilgili kurulumu tamamlayabilirsiniz.

Resim-1: Docker for Mac kurulum

Kurulum sonrasında Launchpad ya da Finder ile Applications altından Docker’ı çalıştırabilirsiniz. Sonrasında menu bar’da docker ikonunu ve Resim-2’de göreceğiniz Docker ekranını göreceksiniz.

Resim-2: Docker for Mac

Kurulum sonrasında Terminal ekranını açarak “docker version” komutu ile yüklü olan docker versiyonu ve diğer bilgileri görebilirsiniz.

Resim-3: docker version komut çıktısı

Docker kurulum işlemini tamamladıktan sonra MSSQL docker image indirelim. Bunun için aşağıda yer alan komutu Terminal ekranında çalıştıralım:

docker pull microsoft/mssql-server-linux:2017-latest

Resim-4: MSSQL docker image indirme işlemi

Docker image indirme işlemi tamamlandıktan sonra sıra docker run komutuna geldi.

docker run -e ‘ACCEPT_EULA=Y’ -e ‘SA_PASSWORD=P@ssw0rd1’ -p 1433:1433 –name sqlcontainer -d microsoft/mssql-server-linux:2017-latest

Parametrelerin detaylarına bakacak olursak:

  • -e ‘ACCEPT_EULA=Y’                :    Son kullanıcı lisans sözleşmesini kabul etmek için gerekiyor.
  • -e ‘SA_PASSWORD=P@ssw0rd1’            :    Min. 8 karakter ve SQL Server şifre standartlarında olmalı.
  • -p 1433:1433                    :    Container portunu (2. değer) host portuna (1. değer) yönlendirmek için
  • –name sqlcontainer                :    Container için anlaşılır bir isim veriyoruz. Eğer bu parametreyi vermezsek random bir isim üretiliyor.
  • -d                        :    Detached Mode (mevcut Shell’den bağımsız olarak çalıştırmak)
  • microsoft/mssql-server-linux:2017-latest     :    Güncel The SQL Server 2017 Linux container image.

Resim-5: docker run

Docker üzerinde çalışır halde bir MSSQL container’ımız var, peki nasıl bağlanabiliriz? Burada Terminal üzerinden sorgu atmak istemiyorum diyorsanız, SSMS’in ( SQL Server Management Studio) bir macOS versiyonu da (henüz) olmadığı için Visual Studio Code kullanabilirsiniz. Bunun için Microsoft’un SQL Server (mssql) extension’ını kurmamız gerekiyor.

Resim-6: Visual Studio Code mssql extension

Extension’ı kurup reload ettikten sonra, commad palette üzerinden MS SQL: Connect komutu ile SQL Server’a bağlanalım.

Resim-7: MS SQL command palette

MS SQL Connect komutunu çalıştırınca Resim-8’de göreceğiniz editor dilinin SQL olarak değiştirilmesi gerektiği ile ilgili bir soru geliyor. Yes seçeneği ile kabul ediyoruz. Bu sırada output ekranında SQL tools servisinin yükleme işlemi de arka planda yapılıyor.


Resim-8: Language seçimi

Yes seçeneğini seçtikten sonra language mode seçenekleri çıkıyor. Buradan SQL (sql) seçeneğini Resim-9’de göreceğiniz gibi seçerek devam ediyoruz.

Resim-9: Select Language Mode

Dil seçeneğini seçtikten sonra bizden bağlantı bilgileri isteyecek. Hostname\instance, Azure Sql/ADO.NET connection string değerlerini yazabilirsiniz.

Resim-10: MSSQL connection string

Daha sonra bizden bağlanmak istediğiniz database ismini isteyecek, henüz bir database oluşturmadığımız için (system tabloları ile de bir işimiz yoksa) boş geçebiliriz.

Resim-11: Database name

Integrated authentication mı yoksa kullanıcı adı/şifre kullanarak (SQL Login) giriş yapmak istediğimizi belirtiyoruz. SQL Login seçerek devam ediyorum.

Resim-12: Authentication type

Bağlanacağımız kullanıcı bilgisini giriyoruz. Farklı bir kullanıcı oluşturmadığımız için sa ile giriş yapıyorum.

Resim-13: User name

Container oluştururken belirlediğimiz P@ssw0rd1 şifresini giriyorum.


Resim-14: Password

Bizden şifre bilgisini kaydetmek isteyip istemediğimizi soruyor. Eğer kaydetmezseniz her bağlantıda tekrar soracağını da düşünerek cevap vermenizi öneririm.

Resim-15: Şifre kaydetme

Son olarak da bizden kaydedilecek profil için bir isim istiyor. Profile1 yazarak geçiyorum.

Resim-16: Profile kayıt

Bu ayarları User Settings altında görebilir ve değiştirebilirsiniz. Command + Shift + P ile command palette açarak “user settings” keyword’ünü yazıp açabilirsiniz.

Resim-17: User Settings

SELECT * FROM sys.tables sorgusunu test amaçlı olarak çalıştıralım. Editöre sorguyu yazdıktan sonra command palette üzerinden Execute Query ya da Command + Shift + E ile sorguyu çalıştırabilirsiniz.

Resim-18: Execute Query

Son olarak da sorgu sonuçlarımızı sağ tarafta görebiliyoruz.

Resim-19: Sorgu sonuçları

Visual Studio Code her konuda yardımcı olsa da Microsoft’un ürünlerine yakın bir zamanda SSMS for Mac de dahil edebileceğini düşünüyorum.

Bu konuyla ilgili sorularınızı alt kısımda bulunan yorumlar alanını kullanarak sorabilirsiniz.

Referanslar

www.mshowto.org

TAGs: Visual Studio, Visual Studio Code, MSSQL, SQL Server, Docker, Docker for Mac, SSMS, macOS

Bu İçeriğe Tepkin Ne Oldu?
  • 4
    harika_
    Harika!!
  • 2
    be_enmedim
    Beğenmedim
  • 0
    _ok_iyi
    Çok iyi
  • 0
    sevdim_
    Sevdim!
  • 1
    bilemedim_
    Bilemedim!
  • 0
    olmad_
    Olmadı!
  • 0
    k_zd_m_
    Kızdım!

Mert Yeter, lisans eğitimini Yıldız Teknik Üniversitesi'nde, yüksek lisans eğitimini ise Bahçeşehir Üniversitesi'nde tamamlamıştır. Yazılım dünyasına üniversitenin ilk yıllarında aldığı QBasic ile başlayan Mert, .NET ve SQL Server gibi Microsoft teknolojileri ile devam etmiş; yüksek lisans tezini ise Linux konusunda yapmıştır. Netaş ve Ziraat Teknoloji gibi sektörün önde gelen firmalarında C#, .NET, SQL Server, Cisco Contact Center ürünleri ve Linux üzerine çalışmış, bir çok firmaya da bu konularda danışmanlık vermiştir.

Yazarın Profili

Bültenimize Katılın

Tıklayın, üyemiz olun ve yeni güncellemelerden haberdar olan ilk kişi siz olun.

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

Yorumlar (3)

  1. Merhaba, Microsoft’un MAC, Linux ve Windows için SQL Operation Studio Adlı programı mevcut SSMS yerine,

    https://docs.microsoft.com/en-us/sql/sql-operations-studio/download?view=sql-server-2017

  2. Merhabalar;

    Mehmet-MacBook-Pro:~ mehmetdurmus$ docker run -e ‘ACCEPT_EULA=Y’ -e ‘SA_PASSWORD=P@ssw0rd1’ -p 1433:1433 –bykingpin sqlcontainer -d microsoft/mssql-server-linux:2017-latest
    docker: invalid reference format.

    Sorun nedir acaba?

    • Bende de o hatayı verdi , aşağıdaki image’dan çalıştırdım oldu.

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

      Buna ek olarak sa için şifre verirken çok uzun veya kısa olmaması lazım aksi halde container duruyor. Loga bakınca anlıyorsun ancak. P@wd123 formatında çok uzun olmayan bir şifre yeterli olacaktır.

Bir yanıt yazın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir