반응형

Dev 69

[MSSQL] DB DeadLock 원인 쿼리찾기, 데드락 원인, 교착상태

DB DeadLock 이란? 모든 프로세스가 대기 상태이며 각 프로세스가 다른 프로세스가 가지고 있는 자원을 기다리고 있는 상태 기본적으로 SQL Server 데이터베이스 엔진은 교착 상태에 있는 작업에 대해 주기적으로 검사한다. 모니터가 교착상태를 감지하면 작업 중 하나를 선택하여 오류와 함께 트랜잭션을 종료한다. 이렇게 하면 다른 태스크가 해당 트랜잭션을 완료할 수 있다. 오류로 종료된 트랜잭션이 있는 애플리케이션은 트랜잭션을 다시 시도할 수 있으며, 일반적으로 교착 상태의 다른 트랜잭션이 완료된 후에 완료된다. SQL Server 에서 기본적으로 DeadLock 상태를 해제해주지만, DeadLock 을 자주 발생시키는 쿼리를 확인하고 개선할 수 있다. (단, DeadLock 을 유발한 쿼리는 발생 ..

Dev/Database 2023.10.25

[Java] FileOutputStream 에러, 액세스가 거부되었습니다.

// 소스코드 File file = new File(path, name); OutputStream os = new FileOutputStream(file); PrintStream ps = new PrintStream(os, true, "UTF-8"); ps.print(content.toString()); ps.close(); os.close(); 자바 내에서 파일 쓰기를 하려고 하는데 위와 같이 에러메세지 발생하였다. "액세스가 거부되었습니다." 1. 로컬 환경일 경우 1) 읽고 쓰려는 파일 경로가 정확한지 확인한다. 2) 개발환경(IntelliJ, Eclipse 등) 관리자 권한으로 실행한다. 2. 운영/개발 서버일 경우 1) 읽고 쓰려는 파일 경로가 정확한지 확인한다. 2) 아래와 같이 경로에 액세스..

Dev/Backend 2023.10.18

[Jsp] Failed to load resource: the server responded with a status of 404 (Not Found), 화면 깨짐

화면 로딩시 아래와 같은 에러와 함께 화면이 깨지는 현상이 발생하였음. 웹 페이지의 파비콘이 없어서 발생한 오류였음. (파비콘이란? 인터넷 웹 브라우저의 주소창에 표시되는 웹사이트나 웹페이지를 대표하는 아이콘) → 파비콘을 생성해서 추가해주면 해결됨. 1. 아래 홈페이지에서 파비콘 만들 이미지를 *.png, *.jpg, *.gif 의 형태로 업로드 https://www.favicon-generator.org/ Favicon & App Icon Generator Upload an image (PNG to ICO, JPG to ICO, GIF to ICO) and convert it to a Windows favicon (.ico) and App Icons. Learn more about favicons. ..

Dev/Frontend 2023.09.11

[MSSQL] 테이블 디스크립션 확인, 테이블 description

MSSQL 테이블 description 확인하는 쿼리 DECLARE @TABLE_NAME NVARCHAR(50) = '테이블이름'; SELECT D.COLORDER AS COLUMN_IDX -- Column Index , A.NAME AS TABLE_NAME -- Table Name , C.VALUE AS TABLE_DESCRIPTION -- Table Description , D.NAME AS COLUMN_NAME -- Column Name , E.VALUE AS COLUMN_DESCRIPTION -- Column Description , F.DATA_TYPE AS TYPE -- Column Type , F.CHARACTER_OCTET_LENGTH AS LENGTH -- Column Length , F..

Dev/Database 2023.07.12

[Tomcat] Several ports (8005, 8080) required by Tomcat v7.0 Server at localhost are already in use. The server may already be running in another process, or a system process may be using the port. To start this server you will need to stop the other pro..

비정상적으로 톰캣이 종료된 후에 다른 톰캣을 실행하자 아래와 같은 에러 메세지 발생하였다. 톰캣이 완전히 종료되지 않아 8080 포트가 아직 사용중이기 때문에 발생한 에러이다. 포트를 사용하고 있는 프로세스를 직접 종료해주어 문제를 해결할 수 있다. 1. 명령프롬프트(cmd)를 실행한다. 2. netstat -ano 입력하여 8080 포트를 사용하고 있는 프로세스의 PID를 확인한다. 3. taskkill /f /pid [pid번호] 입력하여 프로세스 강제종료 4. 톰캣 재실행

Dev/Backend 2023.07.03
반응형