해당 포스팅에서 설명하는 MS SQL Server는 2019 Developer Edtion입니다.
인터넷에서 아래 주소로 이동합니다.
첫 화면에서 Devloper의 '다운로드'를 선택합니다.
다운로드된 파일을 선택하여 설치를 시작합니다.
설치는 Basic과 Custom중 둘중 하나로 시작할 수 있으며 Custom을 선택해 좀더 세분하된 설치 옵션으로 설치를 진행합니다.
설치미디어를 내려 받는 경로를 지정합니다. 단순히 설치에 필요한 파일을 다운로드 받는 위치이므로 어떠한 경로를 선택하든 설치자체에는 영향을 주지 않습니다.
참고로 설치가 완료되고 나면 해당 폴더는 그냥 삭제하거나 추후 다른 시스템에 설치하는 경우라면 따로 USB등에 저장하고 삭제하시기 바랍니다.
Install을 눌러 설치를 진행합니다.
설치에 필요한 미디어파일을 내려받고 이 과정이 완료되면 다음과 같은 설치화면이 표시됩니다. 해당 화면에서는 아래 항목을 선택하고 설치를 진행합니다.
Edtion은 Develpoer를 선택합니다. Develpoer는 MS SQL Server의 모든 기능을 사용할 수 있으나 말그대로 개발용으로만 사용이 가능한 버전입니다.
사용약관입니다. 동의하고 설치를 진행합니다.
설치를 위한 필수사항은 아니지만 업데이트여부를 확인할 수 있게 해주는 것이 좋습니다.
다음으로 진행한뒤 잠시 기다려 줍니다. 아래 화면에서는 방화벽부분이 문제가 될 수 있다고 표현하고 있는데 방화벽은 설치 이후에 필요한 부분을 설정할것이므로 무시하고 넘어가도록 합니다.
MS SQL Server는 핵심DB엔진 이외에 관리및 운영을 위한 많은 기능을 제공하고 있습니다. 그러나 단순히 DB를 생성하고 프로그램과 연동하거나 쿼리를 사용하기 위한 목적이라면 'Database Engine Services'만으로 충분합니다. 또한 아래 설치경로는 되도록 변경하지 않는 것이 좋습니다.
설치할 서버의 엔진 이름을 지정하는 부분입니다. 하나의 시스템에 여러 버전의 SQL Server가 설치되는 경우 지정된 이름으로 각각을 구분할 수 있습니다. 특별한 경우가 아니면 기본 이름 그대로 사용합니다.
SQL Server Service Agent를 지정하는데 Agent이름은 되도록 변경하지 않는 것이 좋습니다. Startup Type은 시스템이 시작될때 Agent의 구동방식을 지정하는 것으로 Menual은 수동으로 Automatic은 자동으로 Agent의 서비스를 시작할 수 있도록 합니다.
'Grant Perform Volume Maintenance Task...'는 SQL Server 계정에 볼륨 관리 권한을 부여할지를 지정하는 부분입니다. SQL Server는 데이터베이스 파일을 생성하거나 크기가 증가할 때 파일을 0으로 초기화 하는 작업을 수행하는데 이때 오버헤드가 발생할 수 있습니다. 이러한 문제로 해당 옵션을 체크하게 되면 SQL Server 계정에 볼륨 관리 권한을 부여하여 삭제된 파일을 0으로 채우지 않고 덮어쓰는 동작을 수행할 수 있도록 합니다.
이는 초기화 과정을 거치지 않도록 함으로서 성능적으로 유리함을 얻을 수 있는데 본래 이런 기능은 SQL Server계정이 Administrators 그룹 권한을 가지고 불륨 관리 작업을 수행해야 하지만 이 관리 기능을 설치시작시 제공함으로서 따로 권한을 설정해야 하는 번거로움을 줄여주는 것입니다.
아래는 SQL Server사용을 위한 로그인 계정을 설정하는 부분입니다. 보안적으로는 권장하지 않지만 설치한 DB를 연습용으로도 사용할 것이므로 'Mixed Mode'를 선택하여 sa계정 사용을 위한 비밀번호를 설정하고 'Add Current User'버튼을 눌러 현재 SQL Server를 설치중인 계정도 사용할 수 있도록 추가해줍니다.
두번째 탭인 'Data Directories'에서는 데이터베이스파일이 위치할 경로를 지정할 수 있습니다. 'Data root directory'는 꼭 해야하는 경우가 아니면 변경하실 필요가 없지만 나머지 'User database directory'나 'User database log directory', 'Backup directory'는 만약 설치하는 시스템의 디스크가 물리적으로 2개이상 나뉘어진 것이라면 다른 디스크의 경로로 변경하는 것이 관리목적이나 성능에 도움이 될 수 있습니다. 만약 물리적디스크가 3개이상 넉넉한 경우라면 되도록 각각의 위치를 모두 다른 디스크로 지정하도록 합니다.
세번째 탭인 'TempDB'의 'Data directories'와 'Log directory'도 마찬가지로 다른 드라이브를 지정해 주면 좋은데 다만 다른 경로와 겹치지 않도록 독립적인 경로로 지정해 주도록 합니다.
그 밖에 초기 TempDB의 사이즈나 증가크기등을 지정해 줄 수 있으며 특히 TempDB의 갯수는 서버의 논리적프로세서수와 동일하게 맞춰주기를 Microsoft에서는 권장하고 있습니다.
세번째 탭인 'MaxDOP'에서는 병렬처리에 관한 설정을 진행하는 것으로 정확히 지정할 수 있는 단일적인 최적의 값이 존재하지는 않지만 대개는 일반적으로 이 값이 높으면 높을 수록 쿼리실행을 빠르게 처리할 수 있습니다. 하지만 모든 경우에서 반드시 그런것만은 아니므로 설정에 주의가 필요합니다.
참고로 아래 링크를 통해 설정의 권장사항을 확인하실 수 있습니다.
max degree of parallelism 서버 구성 옵션 구성 - SQL Server | Microsoft Docs
네번째 탭인 'Memory'에서는 SQL Server가 차지할 수 있는 메모리의 최소값과 최대값을 지정해 줄 수 있습니다. 일반적으로 Default를 사용하면 SQL Server는 시스템상에서 가져갈 수 있는 최대한의 메모리를 사용하게 됩니다. 안정적인 성능의 유지를 위해 'Default'를 권장하지만 시스템의 다른 프로그램 동작등을 고려해야 한다면 'Recommended'로 메모리를 조정해 주면 됩니다.
다섯번째 'FILESTREAM'은 BLOB파일을 DB가 아닌 실제 디스크상의 파일 시스템에 저장할 수 있도록 허용하는 것입니다. BLOB는 Binary Large Object의 약자로 이미지나 동영상과 같은 파일을 의미합니다. 'FILESTREAM'을 사용하면 외부에서 저장된 파일로 직접 접근할 수 있고 파일이 변경되도 동기화되므로 매우 편리하게 BLOB를 다룰 수 있습니다.
'Next'버튼을 눌러 지금까지의 설치설정 내용을 검토하고 특이사항이 없으면 설치를 시작합니다.
설치를 진행중입니다.
설치가 완료되었습니다.
설치된 SQL Server를 로컬에서만 그대로 사용할것이라면 문제가 없지만 외부에서 접속이 가능하도록 해야한다면 우선 관련 포트를 열어주는 설정부터 진행해야 합니다.
※ 주의 : 아래 설정은 보안적으로 상당한 주의가 요구됩니다. 관련 설정변경으로 인한 책임은 해당 설정을 진행한 각 사용자 본인에게 있으니 주의하시기 바랍니다.
먼저 윈도우의 시작메뉴에서 설치된 MS SQL Server의 폴더를 찾은 다음 'SQL Server 2019 Configuration Manager'를 실행합니다.
'SQL Server Network Configuration -> Protocols for MSSQLSERVER -> TCP/IP'를 Enabled로 전환합니다.
참고로 IP Addresses 탭에서는 MSSQL을 외부에서 접속할때 사용할 포트번호를 지정할 수 있습니다. 기본값은 1433입니다.
설정이 완료되었으면 SQL Server Services에서 해당 SQL Server Service를 재시작해줘야 변경된 설정을 반영할 수 있습니다.
다음으로 열러진 창을 모두 닫고 제어판의 방화벽 설정으로 이동합니다.
화면 오른쪽의 New Rule를 눌러 방화벽에 SQL Server의 접근포트를 추가합니다.
포트번호는 1433을 지정합니다. 만약 위에서 임의로 포트번호를 변경했다면 해당 포트번호를 지정해야 합니다.
다음 화면에서는 해당 포트로의 접근을 허용할 것이므로 'Allow the connection'를 선택합니다.
해당 설정을 네트워크의 모든 영역에 적용합니다.
설정 이름과 간략한 내용을 입력합니다.
포트가 등록되었습니다.
외부의 다른 컴퓨터에서 'Microsoft SQL Server Management Studio'를 실행합니다. SQL Server를 설치한 서버의 IP나 도메인을 입력하고 sa계정과 함께 설치단계에서 설정한 sa의 비밀번호를 입력해 로그인을 시도합니다.
성공적으로 연결되었습니다. 만약 SQL Server의 기본포트를 변경한 경우라면 Server name에는 192.168.1.100,1433과 같이 변경된 포트를 지정해 줘야 합니다.
'Server > SQL Server' 카테고리의 다른 글
[MSSQL] Database복구 후 계정 Mapping (0) | 2023.01.02 |
---|---|
[MSSQL] Database 명명 규칙 (Naming Rule) (0) | 2022.10.08 |
[MSSQL] 물리적 DB파일 변경 (0) | 2022.01.18 |
[MSSQL] Database Offline (0) | 2022.01.12 |
[SQL Server] Memory 관리 (0) | 2021.11.23 |