OS

[macOS] M1 맥북에 Docker 설치 및 SQL Server Management Studio(SMSS)설치 방법

애플 실리콘 M1 맥북에 Docker를 설치하는 방법과 SMSS를 설치하는 방법에 대해 알아봅니다. 

윈도우가 설치된 노트북이라면 이렇게 복잡하게 사용할 필요가 없이 SSMS을 다운 받아서 바로 설치하면 되지만 M1 맥북에서 MSSQL를 사용하기 위해서는 Docker 설치 , SQL Server Management Studio (SSMS) 도커 이미지 다운로드 및 컨테이너 생성, Azure Data Studio 다운로드 및 실행의 과정을 거쳐야합니다.


 

Docker를 사용하는 이유?

도커는 리눅스의 응용 프로그램들을 프로세스 격리 기술들을 사용해 컨테이너로 실행하고 관리하는 오픈 소스 프로젝트로 애플리케이션을 신속하게 구축, 테스트 및 배포할 수 있는 소프트웨어 플랫폼입니다.

  • 도커 컨테이너들은 각각 분리되어 있어 독립적으로 사용 가능
  • 한개의 서버에 여러 컨테이너를 가질 수 있음
  • 도커를 사용하면 다양한 컨테이너를 관리할 수 있음
  • 도커를 통해 내가 원하는 만큼의 새로운 환경을 설정할 수 있음.
  • 원하는 개발 환경을 파일에 저장하면, 도커는 어떤 머신에든 해당 환경을 사용할 수 있게 해줌.

M1 맥북에 Docker 설치하는 방법

1. Docker 다운받기 : 사이트 방문 후 Mac with Apple chip 버튼을 클릭하여 다운로드 합니다. 총 615MB 정도 됩니다.

2. 다운받기가 완료되면 Docker.dmg 파일을 더블클릭하여 설치를 시작합니다.

3. 설치 완료 후 Docker아이콘을 클릭하여 실행합니다.

4. Accept 버튼을 클릭합니다. (Docker Subscription Service Agreement)

Tutorial 해보기

clone, build, run, share에 대한 간단한 명령어를 확인해 볼 수 있습니다.



터미널에서 Docker 명령어 확인

docker --version 명령어를 실행하여 도커 설치버전을 확인해봅니다.

docker ps 명령어를 실행하여 컨테이너 정보를 확인합니다.

튜토리얼을 스킵하거나 마무리(Done)를 하게되면 아래와 같은 기본적은 Docker 실행화면을 만나게 됩니다.

도커 엔진

  • 도커는 서버와 클라이언트 구조로 이루어져 있어요
  • 도커 커맨드는 일종의 클라이언트라고 이해하면 됩니다.

도커 이미지

  • 도커 이미지는 컨테이너를 사용하기 위해 사용합니다.
  • 도커 이미지는 스크립트의 집합입니다.

도커 컨테이너

  • 도커 이미지가 리눅스 컨테이너 형태로 실행한 상태를 의미합니다.
  • 도커 컨테이너는 분리된 공간입니다.

Docker 설치를 끝냈으니 이제 윈도우에서 사용하던 SQL Server Management Studio (SSMS)를 설치해볼까요?

SQL Server Management Studio (SSMS) 설치 방법

1.  터미널 실행

2. 실행한 터미널 다음 명령어를 실행하여 smss 도커 이미지를 다운로드 받습니다.

docker pull mcr.microsoft.com/azure-sql-edge
# 다운로드 받은 도커 이미지 조회 명령어(docker image ls)

(base) ddolcat@PARKui-MacBookPro ~ % docker image ls
REPOSITORY                         TAG       IMAGE ID       CREATED        SIZE
mcr.microsoft.com/azure-sql-edge   latest    c0db2d0e0637   3 months ago   1.83GB

# 도커 이미지 삭제 명령어 (docker rmi IMAGE ID)

3. 다음 작업으로 컨테이너를 만들어야합니다. 도커를 실행합니다.

4. 왼쪽 메뉴에서 Image를 클릭하면 좀전에 다운받은 smss 이미지가 나타납니다.

5. 도커 이미지를 실행하여 설정을 하거나 아래와 같이 명령어를 실행하여 설정해도 됩니다

sudo docker run --cap-add SYS_PTRACE -e 'ACCEPT_EULA=1' -e 'MSSQL_SA_PASSWORD=사용할 비밀번호' -p 1433:1433 --name 사용할 이름 -d mcr.microsoft.com/azure-sql-edge

6. 컨테이너 생성이 완료되었는지 확인을 위해 docker ps 명령어를 실행합니다. 

7. Docker를 실행 후 왼쪽 메뉴 중 Containers를 클릭하여 확인할 수도 있습니다.

8. Mssql 접속을 위해 Azure Data Studio 다운로드합니다. macOS플랫폼의 .zip file을 클릭하여 다운로드하세요.

Azure Data Studio는 DB Client로 Windows, Mac, Linux에서 무료로 사용할 수 있답니다. 

9. 다운로드한 파일을 클릭하여 압축해제합니다. 

10. Azure Data Studio.app파일을 클릭하여 실행하여 SQL Server가 정상적으로 구동되는지 확인해 볼 차례입니다. (Homebrew를 이용하여 Azure DAta Studio를 설치하는 방법도 있는데 본문 제일 하단에 있으니 참고해요)

11. 왼쪽 메뉴 아이콘 중 최상단의 Connections을 클릭합니다.

12. New Connection 버튼을 클릭합니다.

13. Microsoft SQL Server를 Connection type으로 선택하시고 스크린샷을 참고하여 설정하시고 Connect 버튼을 클릭합니다.

  • Server Name: localhost
  • Authentication Type: SQL Login
  • User name: sa
  • Password: 20220913sa1!
  • Database Name: <default>
  • Server Group: <default>

14. 드디어 접속 성공!! 교육받을 준비 끝!!


MSSQL 데이터베이스 생성

CREATE DATABASE <testDB>

USE testDB

Docker 명령어

COMMAND
버전 확인$ docker -v
이미지 다운로드$ docker pull [이미지 명]
다운로드된 이미지 목록$ docker images
이미지 삭제$ docker rmi [이미지 id]
컨테이너 생성$ docker create [옵션] [이미지 명]
컨테이너 생성 및 실행$ docker run [옵션] [이미지 명]
컨테이너 실행$ docker start [컨테이너 명]
컨테이너 재실행$ docker restart [컨테이너 명]
컨테이너 접속$ docker attach [컨테이너 명]
컨테이너 정지$ docker stop [컨테이너 명]
실행중인 컨테이너 목록$ docker ps
정지된 컨테이너 목록$ docker ps -a
컨테이너 명 변경$ docker rename [기존 컨테이너 명] [새로운 컨테이너 명]
컨테이너 삭제$ docker rm [컨테이너 명 or 컨테이너 id]
이미지 검색$ docker search mssql

Homebrew를 사용하여 Azure Data Studio 설치하는 방법

1. brew search 명령어를 사용하여 검색

2. brew cask install 명령어를 사용하여 설치

$ brew search azuredatastudio
==> Casks
azure-data-studio

$ brew cask install azure-data-studio

VSCode 툴 확장팩을 사용해 MSSQL 접속하는 방법

VSCode 실행 후 왼쪽 메뉴 아이콘 중에 Extentions에서 "MSSQL"로 검색하여 “SQL Server(mssql)”을 설치합니다.

Azure SQL 한글 깨짐 해결방법

USE master;  
GO  
ALTER DATABASE DB명 COLLATE Korean_Wansung_CI_AS ;  
GO

https://docs.microsoft.com/ko-kr/sql/relational-databases/collations/set-or-change-the-database-collation?view=sql-server-ver16

https://docs.microsoft.com/ko-kr/sql/relational-databases/collations/collation-and-unicode-support?view=sql-server-ver16

[REFERENCE]

Leave a Reply

error: Content is protected !!