MSSQL-CLI 활용한 크로스플랫폼에서 SQL Server 관리하기

-          다양한 플랫폼에서 SQL Server 명령을 사용

 

l  Version : All Verison

 

Microsoft SQL Server 상호작용할  있는 크로스플랫폼 명령줄 도구인 MSSQ-CLI 출시하였다이번 포스트에서는 MSSQL-CLI 설치  기능에 대해서 살펴본다.

 

MSSQL-CLI 새로 도입된 대화형 명령줄 도구로 SQL Server 데이터베이스에서 사용하는 많은 기능의 쿼리를 실행한다또한 MSSQL-CLI는다양한 플랫폼에서 작동하는 오픈소스 도구이다. MSSQL-CLI Python으로 작성되었으며 command line interface 프로젝트인 pgcli mycli 기반으로 한다. MSSQL-CLI 소스는 Github에서 찾을  있다.

 

l  MSSQL-cli Github : https://github.com/dbcli/mssql-cli

 

MSSQL-CLI 위에서 언급했듯이 Python으로 작성되었기 때문에 MSSQL-CLI 설치 이전에 Python 설치 하도록 한다. Python 2.7, 3.4 이상버전과 호환되기 때문에 최신 버전을 설치한다.

l  Python Download : https://www.python.org/downloads/


 

Python 설치한다설치  하단의 [Add Python 3.6 to PATH] 선택한다.


 

Python 설치가 완료 되었으면, MSSQL-CLI 설치한다설치방법은 CMD 창에서 아래의 명령어를 입력한다다운로드 프로세스가 시작되고 설치 된다다운로드 비율속도크기 등을 표시한다또한 자동으로 여러 패키지가 설치 된다설정이 완료되면 Pygment 메시지와 성공 메시지를 확인할  있다.

pip install mssql-cli

 


 

설치가 완료되고 아래 명령을 입력하면 MSSQL-CLI 대한 도움말을 확인   있다. (실제 옵션은 아래 그림 보다 훨씬 많다.)

mssql-cli --help

 


 

l  -S : SQL Server 인스턴스 이름

l  -U : SQL Server 계정

l  -W : 사용자 암호를 입력하라는 암호 입력을 요구

l  -E : Windows 통합 인증 사용

l  -d : 특정 데이터베이스 지정 (기본값은 master)

l  -M : 응용프로그램이 다른 서브넷의 AlwaysOn AG 연결하는 경우 이를 설정하면 활성 서버를 보다 빠르게 검색하고 연결

l  -A : 관리자 전용 연결을 사용하여 SQL Server 연결

 

아래 명령어를 사용하여 직접 SQL Server 연결한다윈도우 인증을 사용한 연결이다.

mssql-cli -S localhost -E

 


 

아래 명령은 특정 데이터베이스  SQL 계정으로 연결한다.

mssql-cli -S localhost -d adventureworks2016ctp3 -U sa

 


 

 

MSSQL-CLI 다양한 기능을 제공하는데   하나가 intellisense 기능이다명령어의  글자를 입력하면 해당 명령어 또는 오브젝트를 보여주며 사용자가 쉽게 선택 하여 사용할  있도록 한다.


 

데이터 검색 결과의ROW  경우 페이지단위로 끊어서 보여준다.

l  Enter : 다음 레코드 표시

l  Space : 다음 페이지 표시

l  CTRL+L : 페이지 클리어


 

기존 windows command 창에서 실행할 경우 텍스트 정렬 문제로 인해 보기 불편했던 문제점을 MSSQL-CLI 사용함으로써 편리 해졌다또한 다양한 플랫폼에서 실행할  있으므로 SQL Server 관리하기 위해  Windows 환경이 아니어도 가능하게 되었다.

 

[참고자료]

l  https://github.com/dbcli/mssql-cli/blob/master/doc/installation_guide.md#windows-installation

l  https://github.com/dbcli/mssql-cli

l  https://docs.microsoft.com/en-us/sql/tools/mssql-cli

 

 

2018-03-24 / 강성욱 / http://sqlmvp.kr / http://sqlangeles.com

 

SQL Server, MS SQL, SQL CLI, SQL 명령줄 도구 모음크로스플랫폼,

No. Subject Author Date Views
Notice [IT재직자] 개강임박!! 올해 마지막 무료 및 국비지원 교육 (JAVA, 리눅스 기초/고급 , CCNA, CCIE 등) 코난(김대우) 2022.12.02 125
Notice 2022년 11월 SQLER의 강좌 업데이트 리스트 코난(김대우) 2022.12.01 25
Notice 2022 공개SW 페스티벌 - Open Up 코난(김대우) 2022.12.01 15
2123 Run the SQL Server 2017 with Docker jevida(강성욱) 2019.03.25 464
2122 SQL Server Configuration Manager 실행 오류 (WMI 공급자 연결 오류) jevida(강성욱) 2019.03.25 518
2121 BULK INSERT 동시에 여러개 실행 향지 2019.01.30 957
2120 대용량 데이터 조인에 대한 고민 ( Hash Join VS Nested Loop Join ) 향지 2018.04.04 4391
2119 How to check if Azure SQL is using In-Memory jevida(강성욱) 2018.03.31 3261
» MSSQL-CLI를 활용한 크로스플랫폼에서 SQL Server 관리하기 jevida(강성욱) 2018.03.31 3589
2117 SSMS – Search for execution plan jevida(강성욱) 2018.03.31 3760
2116 SQL Server Parallelism and Wait change (CXAPCKET, CXCONSUMER) jevida(강성욱) 2018.03.31 4020
2115 SQL Server Statistics Update row sampling rate and histogram step jevida(강성욱) 2018.03.31 3679
2114 SSMS – AlwaysOn Group Latency report jevida(강성욱) 2018.03.31 3412
2113 SQL Server 백업 압축의 압축률 확인 jevida(강성욱) 2018.03.31 4168
2112 SQL Server 교착 상태 모니터링 (-T1222) jevida(강성욱) 2018.03.31 4232
2111 SQL Operations Studio - Linux, MAC에서 사용할 수 있는 SQL DBMS 툴 jevida(강성욱) 2018.03.31 3097
2110 SQL Server 2016 Large RAM 및 Checkpoint jevida(강성욱) 2018.03.31 2228
2109 SQL Server 2016 JSON 형식을 일반 ROW 형식으로 반환하 jevida(강성욱) 2018.03.31 1733
2108 model Database 손상시 발생하는 영향 및 복구 방법 jevida(강성욱) 2018.03.31 1210
2107 In-Memory OLTP 사용시 메모리 할당량 초과 오류 jevida(강성욱) 2017.09.13 6799
2106 SQL Server 2016 쿼리 실행에 대한 각 스레드(오퍼레이터) 성능 통계 jevida(강성욱) 2017.09.13 7099
2105 Multisubnet환경의 AG 그룹에서 링크드 서버 사용시 주의점 jevida(강성욱) 2017.09.13 5959
2104 SQL Linux에서 Job Agent 설치 jevida(강성욱) 2017.09.13 5997





XE Login

테스트 팝업
Close