분류 전체보기
[MSSQL]데이터베이스가 사용 중이어서 배타적으로 액세스 할 수 없습니다.
MSSQL에서 데이터베이스 복원 도중 아래와 같이 "데이터베이스가 사용 중이어서 배타적으로 액세스 할 수 없다" 라는 메시지 발생 시 아래와 같이 조치합니다. 해당하는 데이터베이스 마우스 우측버튼으로 클릭 후 "데이터 베이스 속성"에 접속합니다. 접속 후 좌측 "옵션" 속성에서 액세스 제한을 "RESTRICETED_USER" 로 설정합니다. 설정이 끝나면 좌측 데이터베이스 옆에는 제한된 사용자라고 표시됩니다. 복원을 다시 시도 할 경우 정상 복원 진행 가능합니다.
[MSSQL] WITH(NOLOCK)이란 ?
MSSQL WITH(NOLOCK)이란 ? WITH(NOLOCK) : 해석하는 그대로 MSSQL에 잠금(LOCK)을 걸지 않는다는 것이다 MSSQL의 잠금은 데이터베이스의 자원을 자신이 사용하고 있으므로 다른 사용자의 엑세스를 제한하는 것을 의미 합니다. 잠금(LOCK)은 왜 필요한가? 데이터의 일관성을 유지하기 위해 필요합니다. 즉 동일한 데이터가 서로 다른 값을 갖지 않도록 하기 않도록 하는 것을 의미합니다. 일관성이 유지되지 않는다면 데이터베이스 자체에 심각한 오류의 요소가 되므로 잠금이 필요합니다. 즉 테이블에 UPDATE나 INSERT, DELECT 등 DML 구문을 사용하고 있을 때 테이블을 SELECT를 하면 구문이 끝날때 까지 대기를 합니다. 하지만 WITH(NOLOCK)을 사용하면 대..
MSSQL과 Oracle의 차이점
저는 Oracle을 사용을 많이 했었는데 MSSQL의 사용이 잦아질 것 같아 Oracle과 MSSQL의 차이점은 무엇이 있을지 알아보았습니다. 우선 Oracle과 MSSQL 모두 대용량 데이터를 다루기 위한 대표적인 데이터베이스입니다. 두 데이터베이스의 차이점은 아래와 같습니다. 1. 데이터베이스의 수 Oracle : 한 서버당 한개의 데이터베이스 생성 mssql : 한 서버당 다수의 데이터베이스 생성이 가능합니다. (멀티 데이터베이스) 2. 데이터 타입 정의 데이터 타입 정의는 숫자,문자,날짜형 총 세가지에서 차이가 있습니다. 2-1 숫자형 MSSQL: 크게 4가지( tinyint > smallint > int > bigint )로 나눠집니다. 정수 범위를 기존에 만들어진 타입을 통해 설정합니다...
[oracle]현재년도 기준 5년 기록 조회
SELECT TO_CHAR(SYSDATE, 'YYYY') - 5 + LEVEL AS YEAR FROM DUAL CONNECT BY LEVEL < 6 LEVEL 뒤 숫자 수정하여 년도 수정 가능합니다.
AWS 개인 서버 만들기
본인만의 웹사이트를 만들기위해서 서버가 필요 할 수 있고 서버 명령어 연습이나 기타 등등 서버가 필요한 경우가 많습니다. 일반인들이 직접 개인 물리서버를 만들기에는 돈과 시간(장비선정)이 많이 사용됩니다. 이에 물리서버가 아닌 가상서버로 1년 무료로 개인서버를 구축하는 방법을 알아봅시다. 저는 다양한 가상화 중 AWS(amazon web services)를 이용해서 가상화 클라우드 서버를 만드는 법을 알아보겠습니다. AWS 는 아마존 닷컴에서 개발한 클라우드 컴퓨팅 플랫폼입니다. 이는 네트워킹을 기반으로 가상 컴퓨터, 스토리지, 네트워크 인프라 등 다양한 서비스를 제공합니다. 우선 AWS의 경우 1년 무료입니다. AWS 에서 지원하는 가상 서버의 가격은 다양하게 구성되어있습니다. 이중 무료는 프리티어라..
dmesg 명령어
dmesg(diagnostic message)란 시스템 부팅 메세지를 확인하는 명령어입니다. 커널 부팅에 에러가 발생하였을 때 발생 원인을 확인하는 지표가 될 수 있습니다. 또 부팅 이후에도 사용자의 su 전환 실패, IO 장치 오류등 운영에 필요한 정보도 출력되므로 알아두는 것이 좋습니다. dmesg 명령어의 경우 출력되는 메세지가 많으므로 파이프, grep 으로 원하는 값을 출력하거나 more, less 를 이용하는 편이 좋습니다. dmesg 의 옵션은 아래와 같습니다. 이 중에서 자주 사용하는 옵션은 dmesg -T 타임스탬프로 해당 로그가 찍힌 시점의 시간을 출력합니다. dmesg -H 사람이 읽기 쉽게 로그가 출력됩니다. dmesg -w 실시간으로 로그가 출력됩니다. dmesg -l 로그 위험도..
리눅스 vmstat 명령어
vmstat 명령어란 ? vmstat 명령어는 리눅스 서버에 현재 메모리 상태 확인하는 명령어입니다. 프로세스의 퍼포먼스나 서버 퍼포먼스에 문제가 생겼을 때 모니터링 목적으로 보통 봅니다. vmstat 명령어를 입력할 경우 기본적으로 아래와 같이 나옵니다. 근데 r 은 뭐고 b는 뭔가요 ? 또 free ? 위의 필드 내용이 무엇일까요? vmstat 필드설명 vmstat은 위와 같이 6가지의 필드가 존재하며 의미는 아래와 같습니다. proc 필드 r : run queue에 쌓인 실행대기중인 프로세스의 수. (높을경우 CPU에 부하(load)가 발생하고 있다는 의미) b : 메모리 페이징과 같은 I/O자원에 대해 프로세스를 할당받지 못해 대기하고 있는 프로세스 수. r에서 프로세스를 할당 받아 메모리나 디..
WebServer와 WAS의 차이점
WebServer란 ? 웹 서버는 소프트웨어와 하드웨어로 구분되며, 하드웨어는 Web서버가 설치되어 있는 컴퓨터를 의미하고, 소프트웨어의 web 서버란 브라우저 클라이언트로 부터 HTTP 요청을 받아 들이고 HTML 문서 등과 같은 정적인 웹 페이지를 응답해주는 것을 의미한다. 정적인 웹페이지란? 웹 서버는 파일 경로를 받고, 경로와 일치하는 페이지를 반환합니다. 정적인 웹페이지는 변하지 않고 항상 동일한 페이지를 반환합니다. 그 예시로는 Apache, Nginx 등이 있다. WAS란? WAS(Web Application Server) 란 WebServer와 웹 컨테이너가 합쳐진 말로 웹서버가 처리할 수 없는 데이터베이스 조회나 다양한 로직이 필요한 동적인 웹사이트를 응답해준다 정적 컨텐츠와 동적 컨..