티스토리 툴바

SQLCMD 사용법 #1

SQL Server 2010/11/15 01:39

SQL Sever에서 제공하는 도구 SSMS 를 이용하면 관리에 필요한 모든 기능이나
작업을
할 수 있습니다.

 

SSMS 툴이 있는데 왜 sqlcmd를 사용해야 하는 걸까요?

GUI 기반 도구를 쓰지 않고 Command 명령어를 기준으로 작업이 필요한 부분이 있습니다.

예를 들어 단일 사용자 모드 전환 후 master 데이터베이스 복원, 스크립트를 이용한 작업 스케줄러
실행
,
유지 관리를 해야 하는 경우 SSMS 도구로는 사용 목적이나 역활에 있어서 적합하지 않습니다.


또한 데이터 건수가 몇십만 건인 경우 데이터마이닝 상 해당 데이터를 원격에서 클라이언트를

통해 추출 시 파일 I/O, 네트웍 I/O 가 크게 발생됩니다.


이런 경우에 직접 서버 로컬에서
sqlcmd 를 통해 데이터를 덤프 받을 시 네트웍을 통하지 않고

직접 파일 I/O 처리만 통하여 출력되므로 속도를 크게 향상시킬 수 있습니다.

 

SQL Server에서 명령어 도구는 SQL Server 2000 OSQL, ISQL 등이 있지만

2005 버전 부터는 OSQL, SQLCMD 가 있습니다.

OSQL 유틸리티는 ODBC 통신을 기반으로 하므로 OLE DB 보다 성능이 떨어지고 2008R2 버전

이후부터는 제거가 되므로 명령어 유틸리티로는 SQLCMD 를 이용한 작업이 제일 적합하다고
할 수 있습니다
.

 

Orcale -> sqlplus, MySQL -> mysql 와 같은 명령어 기반의 유틸리티가 있습니다.

SQLCMD SQL Server에서 제공하는 위의 다른 DBMS 벤더에서 제공하는 명령어 도구와 같은
유틸리티 입니다
.

 

별거 아니지만 초보자 분들이 처음 사용 시 저처럼 헤매지 않고 도움이 될까 해서 작성하였습니다~


의외로 옵션이나 사용예시가 많아 이번 장에서는 간략하게 로그인 관련 옵션을 정리했습니다
.

다음 아티클에서는 여러가지 예제와 좀 더 상세하게 입/출력, 쿼리 실행 옵션에 대해
정리하여
올리겠습니다~

 

1. SQLCMD 로그인 관련 옵션

sqlcmd의 기본 인증 방식은 Windows 인증입니다.

Sqlcmd 에 접속하기 위해 사용되는 옵션 종류 입니다.

참고로 sqlcmd 에서 모든 옵션을 대 소문자를 구별합니다.

-E 트러스트(trustered) 연결, 기본값이며 –E 생략 시 트러스트된 연결 옵션 사용

-S 서버지정

-U 사용자 로그인 ID

-P 사용자 로그인 PWD

-H 워크스테이션 이름. 각 서버의 이름을 지정하여 접속 가능

-d 데이터베이스 지정

Windows 인증

cmd> Sqlcmd –S [server_name]

원도우인증.png

 

트러스트된 연결 (-E 옵션을 사용 trusted connection)

로컬 연결인 경우 sqlcmd 만 입력하여 기본 원도우 인증으로 바로 접속 가능합니다.

cmd> Sqlcmd –E

sqlcmd-E기본값접속.png

 

SQL Server 인증

SQL Server 인증은 -U 옵션과 -P 옵션을 이용하면 됩니다.

cmd> Sqlcmd –S 192.168.81.57 –U sa –P 1234

SQLServer 계정인증.png

 

–P 옵션을 지정하지 않고 접속한 경우 sqlcmd 에서 암호를 묻는 메시지를 표시합니다.

Password: 패스워드 입력 시 입력한 값은 표시되지 않습니다.

-p 암호입력.png

글의 내용과 소스는 누구나 참고하셔도 되지만 본 글의 출처(algorizm.tistory.com) 및
글의 링크를
꼭 밝혀주셔야 합니다.

저작자 표시 비영리 변경 금지

'SQL Server' 카테고리의 다른 글

컬럼 Collate 비교 연산 시 충돌 문제  (0) 2010/12/29
sqlcmd 연결 종류  (0) 2010/12/29
SQLCMD 사용법 #1  (0) 2010/11/15
SQL Server 버전별 Hotfix 정보  (0) 2010/11/15
[TIP]저장 프로시저 최적화  (0) 2010/11/07
테이블 제약조건 DROP 쿼리문 출력  (0) 2010/10/25