Skip to content

Instantly share code, notes, and snippets.

@hongry18
Last active September 24, 2019 05:38
Show Gist options
  • Save hongry18/d92c5f5405d4d50e7fe6d563b213424c to your computer and use it in GitHub Desktop.
Save hongry18/d92c5f5405d4d50e7fe6d563b213424c to your computer and use it in GitHub Desktop.

MSSql install using docker on linux

  1. download image SQL Server 2017 Linux
sudo docker pull mcr.microsoft.com/mssql/server:2017-latest
  1. 도커로 mssql 컨테이너 실행
sudo docker run -e "ACCEPT_EULA=Y" -e "SA_PASSWORD=<YourStrong@Passw0rd>" \
   -p 1433:1433 --name sql1 \
   -d mcr.microsoft.com/mssql/server:2017-latest

암호는 SQL Server 기본 암호 정책이 따라야 합니다. 그렇지 않으면 컨테이너는 SQL 서버를 설정할 수 없어 작동이 중지됩니다. 기본적으로 암호는 8자 이상이어야 하며 대문자, 소문자, 십진수 숫자 및 기호의 네 가지 집합 중 세 집합의 문자를 포함해야 합니다. docker 로그 명령을 실행하여 오류 로그를 검사할 수 있습니다.

프로덕션은 [https://docs.microsoft.com/ko-kr/sql/linux/sql-server-linux-configure-docker?view=sql-server-2017#production]

  1. SA change password
sudo docker exec -it sql1 /opt/mssql-tools/bin/sqlcmd \
   -S localhost -U SA -P "<YourStrong!Passw0rd>" \
   -Q 'ALTER LOGIN SA WITH PASSWORD="<YourNewStrong!Passw0rd>"'
  1. disable user account
ALTER LOGIN user DISABLE;
  1. change user name
ALTER LOGIN SA WITH NAME = old_sa
  1. create user
# login 을 만들고 해당 db에 계정 연결 ?
CREATE LOGIN usr WITH PASSWORD = 'passowrd';
CREATE DATABASE TestDB;
USE TestDB;
CREATE USER usr FOR LOGIN usr;
# role db_datareader - 사용자 테이블의 모든 데이터를 읽을수 있음
# role db_datawriter - 사용자 테이블의 모든 데이터에 쓸수 있음
exec sp_addrolemember 'db_datareader', usr;
exec sp_addrolemember 'db_datawriter', usr;
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment