SQL Server update on Docker

jevida(강성욱) 2019.03.25 05:57 Views : 414

SQL Server update on Docker

 

·      Version : SQL 2017, Docker

 

SQL Server on Docker 버전에서 SQL Server update 진행하는 방법에 대해서 알아본다. Docker 이미지를 업데이트 하고 모든 컨테이너에 푸시할  있는 기본 제공 명령이 없으므로  단계별로 빌드해야한다 Docker pull 이용하여 최신 이미지를 다운로드 받아 기존 이미지를 교체 해야한다기존 이미지로 컨테이너를 교체해야하는 이유는 Docker 저장소 모델과 관련이 있다.

 Docker 저장소 모델은 여러 계층의 파일 시스템을 결합하여 운영체제의 통합 뷰를 만든다이미지 레이어는 읽기 전용이며 컨테이너를 통해 발생하는 모든 변경 사항은 쓰기 프로세스에서 복사를 통해 변경된다 새로운 이미지가 기존 컨테이너에서 작동하지 않는 이유는  레이어는 고유한 식별자로 참조되는데컨테이너가 기존의 원본 이미지를 가리키고 있기 때문이다따라서 새로운 이미지로 기존 컨테이너를 교체해야한다.

 

현재 설치되어 있는 SQL Linux Version SQL Server 2017 RTM CU5 이다.


 

이미지의 최신 버전을 다운받으려면 docker pull 명령을 사용할  있다아래 명령을 실행하면 최신 업데이트  버전을 다운로드   있다.

Docker pull microsoft/mssql-server-linux:lastest

 


 

Docker stop 명령을 사용하여 SQL Server 컨테이너를 중지 시킨다.

Docker stop sql1

 

Docker rm 명령을 사용하여 기존의 컨테이너를 삭제 한다.

Docker rm sql1

 

Docker run 명령을 사용하여 새로운 sql 이미지로 컨테이너를 실행 한다.

docker run -e "ACCEPT_EULA=Y" -e "MSSQL_SA_PASSWORD=YourPassword" -p 1433:1433 --name sql1 -d microsoft/mssql-server-linux

 

컨테이너가 정상적으로 실행되었으면 SQL Server 접속하여 버전을 확인한다필자의 경우 SQL Server 2017 RMT CU7으로 업그레이드 된것을 확인할  있다.


 

기존의 sql 컨테이너를 삭제하고 새로운 컨테이너를 실행 할때 위와 같은 방법으로 실행하면 기존 저장소가 삭제되기 때문에 사용자 데이터베이스  환경도 함께 삭제 된다따라서 docker 환경에서 컨테이너를 생성할  -v 옵션을 사용하여 컨테이터 외부에 저장소 볼륨을 만들어서 사용할  있도록 한다그러면 영구 저장소를 생성하여 사용할  있다.

 

 

[참고자료]

·       https://docs.microsoft.com/en-us/sql/linux/sql-server-linux-setup?view=sql-server-linux-2017#repositories

·       https://facility9.com/2017/01/how-do-i-update-my-sql-server-docker-container/

 

 

2018-06-05 / 강성욱 / http://sqlmvp.kr / http://sqlangeles.com

 

SQL Linux, SQL docker, sql update, sql linux update, docker pull, 도커, SQL 리눅스, sql 업데이트



출처: https://sqlmvp.tistory.com/1247?category=618825 [Database Lab]
No. Subject Author Date Views
Notice [IT재직자] 개강임박!! 올해 마지막 무료 및 국비지원 교육 (JAVA, 리눅스 기초/고급 , CCNA, CCIE 등) 코난(김대우) 2022.12.02 437
Notice 2022년 11월 SQLER의 강좌 업데이트 리스트 코난(김대우) 2022.12.01 33
Notice 2022 공개SW 페스티벌 - Open Up 코난(김대우) 2022.12.01 33
2143 SQL Server 2016 대용량 데이터 로드시 최소 로깅(minimal logging) 과Batch Size jevida(강성욱) 2019.03.25 363
2142 SQL Server 설치시 발생하는 1638 오류 jevida(강성욱) 2019.03.25 552
2141 SQL Server 666코드의 고유 식별자 오류 jevida(강성욱) 2019.03.25 323
2140 SQL Server AlwaysOn synchronous-commit 환경에서 동기화 레이턴시 트러블슈팅 jevida(강성욱) 2019.03.25 385
2139 SQL Server Scheduling and Yielding 트러블슈팅 jevida(강성욱) 2019.03.25 393
2138 SQL Server 2016 Tempdb 경합(contention) 최적화 jevida(강성욱) 2019.03.25 501
2137 XEvent를 사용하여 Auto tuning 작업 모니터링 jevida(강성욱) 2019.03.25 512
2136 SQL Server In-Memory OLTP에 ASP.NET 세션 상태 저장하기 jevida(강성욱) 2019.03.25 398
2135 SQL Server에서 JSON 데이터 저장하기 jevida(강성욱) 2019.03.25 506
2134 Azure SQL에서 네트워크를 구성하는 방법 jevida(강성욱) 2019.03.25 262
2133 SQL Server 네이티브 컴파일된 저장 프로시저 성능 모니터링 jevida(강성욱) 2019.03.25 501
2132 SQL Server 2017 소규모 시스템에서 향상된 리소스 사용 jevida(강성욱) 2019.03.25 289
2131 클러스터 컬럼스토어 인덱스(Clusterd Columnstore Index)에서 대량 인서트 작업시 발생하는 래치 경합 최소화 트릭 jevida(강성욱) 2019.03.25 440
2130 클러스터 컬럼스토어 인덱스(Clusterd Columnstore Index)에서 대량 인서트 작업시 발생하는 래치 경합 최소화 트릭 jevida(강성욱) 2019.03.25 423
2129 SQL Server 2016 향상된 복제 기능 – 배포 데이터베이스 클린업 향상 jevida(강성욱) 2019.03.25 319
2128 SQL Server 2017향상된 복제 기능 – 배포 데이터베이스의 AG 지원 jevida(강성욱) 2019.03.25 481
2127 SQL Server 2017 향상된 복제 기능 - 복제에이전트 프로필 매개변수의 동적 새로 고침 jevida(강성욱) 2019.03.25 523
» SQL Server update on Docker jevida(강성욱) 2019.03.25 414
2125 SQL Server 2017에서 향상된 UDF 실행 계획 jevida(강성욱) 2019.03.25 385
2124 ETL data error with MariaDB ODBC 3.0 (from Aurora to MS SQL) jevida(강성욱) 2019.03.25 541





XE Login

테스트 팝업
Close