Server

    [SQL Server] .NET 어셈블리 등록

    [SQL Server] .NET 어셈블리 등록

    C#으로 작성된 프로그램을 MS-SQL Server에서 동작할 수 있도록 하려면 MS-SQL Server의 어셈블리에 등록시켜주면 됩니다. 이 과정을 살펴보면 다음과 같습니다. 우선 Visual Studio에서 SQL Server Database Project를 생성합니다. 프로젝트명은 db_server로 하겠습니다. 당연히 이 이름은 임의로 잡아주셔도 됩니다. 프로젝트 생성 후 프로젝트-> 추가에서 SQL CLR C#을 선택합니다. 예제에서는 간단한 Function을 생성할 것이므로 SQL CLR C# User Defined Function을 선택합니다. Plus.cs 파일을 다음과 같이 수정합니다. 파일 내용은 2개의 정수값을 받아 합산한 결과를 반환하도록 하였습니다. 빌드 후 dll을 생성합니다. ..

    [MSSQL] 서버에서 지연되는(처리시간이 오래 걸리는) 쿼리(Query)찾기

    [MSSQL] 서버에서 지연되는(처리시간이 오래 걸리는) 쿼리(Query)찾기

    MS-SQL에서 어떤 쿼리를 처리할 때 처리시간이 너무 오래 걸리는 경우가 있습니다. 이는 서버 전체의 처리시간을 늘려 장애를 발생시키는 요인이 될 수 있는데 이런 경우 아래 쿼리를 SSMS에서 날려 처리시간이 오래 걸리는 쿼리를 찾아낼 수 있습니다. Select Distinct dm_ws.wait_duration_ms, dm_t.[TEXT], dm_ws.session_ID From sys.dm_os_waiting_tasks As dm_ws Inner Join sys.dm_exec_requests As dm_r On dm_ws.session_id = dm_r.session_id Inner Join sys.dm_exec_sessions As dm_es On dm_es.session_id = dm_r.ses..

    [Windows Server] netstat 명령어

    [Windows Server] netstat 명령어

    netstat는 컴퓨터의 네트워크 상태를 확인할 수 있는 명령어로서 열려있는 포트나 연결 중인 컴퓨터의 목록 등을 확인할 수 있습니다. netstat명령어에서 사용가능한 옵션은 다음과 같습니다. 일부는 제외되었으며(나도 모르니까..;;_) 자주 사용하는 것만을 위주로 알아보고자 합니다. -a 모든 연결과 수신중인 포트를 나열합니다. -b 해당 네트워크와 연결된 프로그램 파일의 프로세스를 표시합니다. -e NIC에서 송수신한 패킷용량및 종류를 표시합니다. -f 연결측 IP대신 도메인(FQDN)으로 표시합니다. -n 연결측 IP와 연결 포트번호를 표시합니다. -o 각 연결과 연관된 프로세스 아이디(PID)를 표시합니다. -p 지정한 프로토콜과 관련된 연결리스트를 표시합니다. -q 현재 활성화된 모든 연결을 ..

    [SQL Server] 현재 주차및 주차에 해당하는 날짜 구하기

    -- 현재일에 해당하는 주차 -> 2019년 8월 12일은 8월달 몇주차인가? Select CEILING((DAY('2019-08-12') + DATEPART(DW, '20190801') - 1) / 7.0) -- 특정 주차의 날짜 -> 2019년 8월 3주차의 시작날짜와 끝날짜는? Declare @input Varchar(8); Set @input = '20190803'; Declare @firstday Date; Set @firstday=CONVERT(Date, Left(@input, 4) + '-' + SUBSTRING(@input, 5, 2) + '-01'); Declare @addweek Int; Set @addweek = CONVERT(Int, Right(@input, 2)) - 1; Sele..

    [Windows Server] 사용자 격리(전역 가상 디렉터리 사용 안 함) 하기

    [Windows Server] 사용자 격리(전역 가상 디렉터리 사용 안 함) 하기

    사용자 격리는 서버에서 FTP를 구축활때 사용자별로 디렉토리사용권한을 독립시켜 다른 사용자또는 다른 디렉토리로의 접근자체를 차단시키는 것을 말합니다. 하나의 서버에서 다수의 사용자들에게 FTP를 호스팅을 해야 하는 경우 유용한 설정 방법입니다. (1) FTP Folder 생성 먼저 FTP로 설정할 Folder를 설정합니다. 예제에서는 D 드라이브의 Users Folder 하위에 LocalUser라는 Folder를 생성합니다. 전체 서버 설정(StartPage 아래)에서 아래 설정내용을 우선 확인하고 계속 진행합니다. 1. FTP User Isolation -> User name directory (disable global virtual directories) 2. FTP authorization Rul..