Linux에서 Network I/O 확인

 

·         Version : ubuntu

 

SQL Server Linux 버전 출시로 MS SQL DBA분들이 Linux 대한 관심이 많이 높아졌다. 이번 팁에서는 Linux에서 SQL Server 사용할때 알아두면 좋은 리눅스 팁을 공유한다. 이번 포스트는 Linux에서 Network I/O 확인하는 방법이다.

 

[netstat]

네트워크 통계의 약자인 netstat 명령어는Windows 사용자에게도 알려져있는 명령이다. 사용방법은 Windows 거의 동일하지만 Linux에서는 명령을 사용하면 많은 정보를 얻을 있다.

netstat -i

 

-i 옵션은 네트워크 인터페이스를 나열한다. 명령을 사용하면 인터페이스 이름과 보내고 받은 패킷을 확인할 있다.

·         RX-OK / TX-OK : 정상적인 패킷

·         RX-ERR / TX-ERR : 체크섬 오류로 거부된 패킷

·         RX-DRP / TX-DRP : 전체 퍼버에서 누락된 패킷

·         RX-OVR / TX-OVR : 시스템이 바빠서 누락된 패킷

 

netstat -ltu

 

 

-ltu 옵션은 수신포트(l) TCP(t) UDP(u) 표시한다. 또한 -p옵션을  (-ltup) 추가하면 수신 대기중인 프로그램이 표시 된다.

 

[slurm]

Slurm 터미널 기반의 네트워크 모니터링 도구이다. 유틸리티 표준 배포와 함께 배포되지 않으므로 아래 명령을 사용하여 설치 해야 한다.

sudo apt-get install slurm

 

설치가 완료되었으면 모니터할 인터페이스 이름을 인수로 전달하여 명령어를 실행 한다. 예를 들어 enp0s3 인터페이스를 모니터링 할려면 다음과 같이 명령어를 실행 한다. (인터페이스 이름은 netstat -i 확인한다.)

slurm -i enp0s3

 

그림에서 보듯이 네트워크 활동을 표시하는 그래프가 상단 패널에, 텍스트 정보는 하단 패널에 나타난다.

 

[speedometer]

기본 배포에 포함되어 있지 않으므로 아래 명령어를 설치를 해야한다.

sudo apt-get install sppedometer

 

아래 명령어는 enp0s3 인터페이스의 RX/TX 모니터링하는 명령이다.

speedometer -tx enp0s3 -rx enp0s3

 

 

여러 인터페이스를 모니터링 하려면 각각의 인터페이스명을 나열 한다.

speedometer -tx enp0s3 -rx enp0s3 -tx enp0s8 -tx enp0s8

 

[ifstat]

기본 배포에 포함되어 있지 않으므로 아래 명령어를 설치를 해야한다.

sudo apt-get install ifstat

 

명령을 실행하면 아래와 같이 네트워크 사용량이 지속적으로 나타난다.

 

[nethogs]

응용프로그래별로 네트워크 사용량을 확인할 편리 하다. 기본 배포에 포함되어 있지 않으므로 아래 명령어를 설치를 해야한다.

sudo apt-get install nethogs

 

그림에서 볼수 있듯이 PID, 사용자, 프로그램 별로 네트워크 사용량을 확인 있다. 유틸리티는 root 권한으로 실행 해야 한다.

 

[참고자료]

https://www.mssqltips.com/sqlservertip/4846/linux-administration-for-sql-server-dbas-checking-network-io/

 

 

 

2017-07-18 / 강성욱 / http://sqlmvp.kr

 

SQL Linux, Linux disk, 리눅스에서 네트워크 사용량 확인, SQL 2017, check network usage on Linux, netstat, slurm, speedometer, ifstat, network I/O,


SQL Linux에서traceflag 활성화

 

·         Version : ubuntu, SQL Server Linux

 

SQL Server Linux에서traceflag 활성화 하는 방법에 대해서 알아본다. 기존 Windows SQL Server에서 추적 플래그를 사용하려면 아래 가지 방법 하나를 사용할 있다.

·         DBCC Traceon (traceflag, -1) (https://docs.microsoft.com/en-us/sql/t-sql/database-console-commands/dbcc-traceon-transact-sql)

·         SQL Server Configuration manager

 

SQL Linux에서 추적플래그를 전역으로 활성 또는 비활성화 하려면 mssql-conf 라는 SQL Server 구성 관리자 유틸리티를 사용해야 한다.  우선 아래 명령어로 현재 설정되어 있는 모든 추적플래그에 대한 정보를 확인한다.

dbcc tracestatus(-1)

 

Linux에서 추적 플래그를 활성화 하기 위해 mssql-conf 유틸리티를 사용하여 추적 플래그를 활성화 한다. 설정이 완료되면 SQL Server 서비스를 재시작 한다.

sudo /opt/mssql/bin/mssql-conf traceflag 1222 on

 

서비스 재시작이 완료 되었으면 현재 설정되어 있는 traceflag 확인 한다. Traceflag 1222 적용된 것을 확인할 있다.

dbcc tracestatus(-1)

 

 

여러개의 추적 플래그를 사용하려면 아래 스크립트처럼 추적 플래그를 나열한다.

sudo /opt/mssql/bin/mssql-conf traceflag 1204 3205 on


 

 

추적 플래그를 중지하려면 off 명령을 사용한다.  중지하려는 추적플래그 파라메터를 함께 명시 한다. 설정이 완료 되면 SQL Server 서비스를 재시작 한다. 명시된 추적플래그가 중지된 것을 확인할 있다.

sudo /opt/mssql/bin/mssql-conf traceflag 1222 1204 3205 off

 

 

추적 플래그를 설정할 때는 운영중인 서버에 적용하기 전에 반드시 테스트 서버에 적용하여 사이드이펙트를 체크해야 한다.

 

[참고자료]

·         https://docs.microsoft.com/en-us/sql/linux/sql-server-linux-configure-mssql-conf#a-idtraceflagsa-enabledisable-traceflags

·         https://www.mssqltips.com/sqlservertip/4762/how-to-enable-and-disable-sql-server-traceflags-globally-for-linux-instances/

·         https://docs.microsoft.com/en-us/sql/t-sql/database-console-commands/dbcc-traceon-transact-sql

 

2017-07-14 / 강성욱 / http://sqlmvp.kr

 

SQL Linux, Linux SQL, 리눅스에서 추적플래그 설정, SQL Linux traceflag, SQL 2017, dbcc tracestatus, traceflag on, traceflag off, mssql-conf

SQL Linux에서 dump file 위치 변경

 

·         Version : ubuntu, SQL Server Linux

 

SQL Server Linux에서 dump file 위치 변경하는 방법에 대해서 알아본다. Dump file 대한 경로 변경은  /opt/mssql/bin 폴더에 있는 mssql-conf 스크립트 내용을 변경하여 dump file 위치를 변경할 있다. 기본적으로 덤프 디렉토리는 SQL Server 설치할때 설정된 /var/opt/mssql/log 이다.  아래 명령어를 이용하여 해당 디렉토리에 대한 파일을 확인할 있다.

sudo –lrt /var/opt/mssql/log

 

 

이번 실습에서는 /tmp/dump 라는 디렉토리를 생성하고 dump file 경로를 변경한다. 우선 아래 스크립트를 실행하여 /tmp/dump 디렉토리를 생성한다.

sudo mkdir /tmp/dump

 

sudo ls –lrt /tmp

 

 

 SQL Server 생성한 디렉토리에 접근할 있도록 폴더의 소유자와 그룹을 변경한다.

Sudo chown mssql /tmp/dump

Sudo chgrp mssql /tmp/dump

 

아래 명령을 실행하여 dump file 생성 위치를 변경한다. 변경 SQL Server 서비스를 재시작 해야  한다.

sudo /opt/mssql/bin/mssql-conf set filelocation.defaultdumpdir /tmp/dump

 

 

-NOTICE-

현재테스트 환경의 버전이 SQL Evaluation 버전이어서인지 변경된 디렉토리에 dumpfile 생성되지 않았다.

 

 

[참고자료]

·         https://docs.microsoft.com/en-us/sql/linux/sql-server-linux-configure-mssql-conf#a-iddumpdira-change-the-default-dump-directory-location

·         https://www.mssqltips.com/sqlservertip/4768/how-to-change-the-default-dump-file-location-of-sql-server-running-on-linux-server/

 

 

2017-07-11 / 강성욱 / http://sqlmvp.kr

 

SQL Linux, Linux SQL, 리눅스에서 dump file 위치 변경, SQL Linux  dump file, SQL 2017, mssql-conf, Change SQL Server dump file location, filelocation.defaultdumpdir

'SQL Server > SQL on Linux' 카테고리의 다른 글

Linux에서 Network I/O 확인  (0) 2017.09.13
SQL Linux에서traceflag 활성화  (0) 2017.09.13
SQL Linux에서 dump file 위치 변경  (0) 2017.09.13
SQL Linux에서 Port 변경  (0) 2017.09.13
Linux에서 DISK 공간 확인  (0) 2017.09.13
SQL Linux에서collation 변경  (0) 2017.09.13

SQL Linux에서 Port 변경

 

·         Version : ubuntu, SQL Server Linux

 

SQL Server Linux에서Port  변경하는 방법에 대해서 알아본다. SQL Linux 경우도 기본적으로 1433 포트를 사용하고 있다. 보안 또는 다른 이슈로 포트 번호를 변경해야 하는 이슈가 있을때  /opt/mssql/bin 폴더에 있는 mssql-conf 스크립트 내용을 변경하여 Port 변경할 있다.

 

SQL Linux 접속하여 root 권한을 획득 한다. 많은 사람들이 이미 기본포트가 1433인것을 알고 있지만 실제 사용하는 포트를 확인하기 위해 netstat 명령을 사용하여 서버에서 실행중인 모든 연결을 확인한다.

sudo su

 

netstat -tulpn

 

기본적으로SQL Server 포트는 1433이며, 1434 SQL Server Browser 서비스에 사용된다. 이번 실습에서는 SQL Server포트를 1435 변경하도록 한다. 아래 스크립트를 실행하여 포트 번호를 변경한다.

sudo /opt/mssql/bin/mssql-conf set network.tcpport 1435

 

 

포트 변경이 완료되면 SQL Server 재시작을 해야한다. SQL  서비스 재시작이 완료되었으면  다시한번 netstat –tulpn 실행하여 SQL Server 사용중인 포트를 확인한다.

 

SQL Server 1435 포트를 사용하는것을 확인할 있다. 실제 1435 포트를 이용하여 SQL Server 연결할 있는지 확인한다.

 

[참고자료]

·         https://docs.microsoft.com/en-us/sql/linux/sql-server-linux-configure-mssql-conf#a-idtcpporta-change-the-tcp-port

·         https://www.mssqltips.com/sqlservertip/4736/how-to-change-sql-server-port-number-for-a-linux-server/

 

2017-07-10 / 강성욱 / http://sqlmvp.kr

 

SQL Linux, Linux SQL, 리눅스에서 port 변경, SQL Linux  port, SQL 2017, mssql-conf, Change SQL Server port number, network.tcpport

+ Recent posts