no image
[ORACLE] Function과 Procedure의 효율적인 사용 방법
최근 데이터 이관 작업을 진행하면서 예외 처리에 대해 Function을 사용하여 효율적으로 트러블 슈팅을 진행했다.트러블 슈팅 진행 과정에서 한가지 의문점이 생겼다.Function(함수)과 Procedure(프로시저) 둘 다 비슷한 구조를 가졌지만 어떤 시점에서 어떤 객체를 사용해야지 더 적절한 선택인지에 대한 의문이 생겼다.그에 따라서 Function과 Procedure의 차이점, 각 장단점, 그리고 적절한 상황 판별에 대해서 써본다. 1. Function과 Procedure의 기본 개념Function (함수)정의: Function은 특정 작업을 수행한 후 반드시 하나의 값을 반환하는 SQL 객체다.주용도: 주로 값을 계산하거나 데이터를 변환하는데 사용된다. 이를 통해 반환값을 다른 SQL문 또는 PL..
2024.09.08
no image
[회고] 우리 인생 처음이자 마지막 2024년 8월
2024년 8월 회고 요약- 3년 차 개발자- DB 데이터 이관- Server 보안 취약점 조치- 운동 & 유튜브 & 블로그3년 차 개발자 어느덧 일을 시작한 지 2년이 넘었다. 시간이 정말 빠르다.어떠한 결정을 내리든지 책임은 따르지만,연차가 쌓이며 책임에 대한 무게감이 더욱 늘어나는 것 같다. 배운 것도 많고 느낀 것도 많고 성장한 것도 많다.물론, 부족한 것도 많다. 내가 잘하고 있는 것, 잘 해낸 것들에 대해서 Keep (유지)하자. 프로젝트나 업무/작업 과정에서 발생한 어려운 점이나 문제점은 해결 후 항상 기록하자.Problem (문제점)은 부끄러운 것이 아니다. 다시 발생하지 않도록 최선을 다하자. 마지막으로, 새로운 Try (시도)에 대해서 두려워하지 말자.누구나 처음은 있으니까.DB 데이터..
2024.09.01
no image
[Linux] 스토리지 수동 마운트하는 방법 (자동 마운트 문제 해결)
OSCentOS 7 해당 게시물은 서버 재부팅 후 기존에 정상적으로 사용하던 스토리가 자동 마운트되지 않는 상황에서 수동으로 조치하는 방법을 기술했다. 문제 원인'/etc/fstab' 파일에 해당 스토리지에 대한 마운트 설정이 누락된 경우 발생 가능'/etc/fstab' 파일에 잘못된 UUID 또는 디스크 경로가 설정된 경우파일시스템이 손상되었거나 디스크 자체에 문제가 있는 경우부팅 순서가 잘못된 경우 (스토리지 서버 부팅 후 실서버 부팅이 필요함) 해결 방법 (수동 디스크 및 스토리지 마운트)1. 마운트할 디스크 확인먼저, 마운트할 디스크의 장치 이름을 확인한다. (실제 확인되는 경로와 다르므로 이 부분은 유동적으로 적용 필요)# 블록 장치의 정보를 표시. 각 디스크와 그 디스크에 마운트된 파티션을 확..
2024.08.27
no image
[영화] 인사이드 아웃2 (후기, 쿠키)
*지극히 주관적이고 개인적인 후기이므로 참고만 해주시면 감사하겠습니다.개봉: 2024년 06월 12일장르: 애니메이션국가: 미국러닝타임: 96분스토리: ⭐⭐⭐⭐⭐총평점: ⭐⭐⭐⭐⭐쿠키: O 예상치 못한 상황에서 감정이 북받쳐 오르고, 어떤 모습이든 나 자신을 사랑하게 만들어주는 자존감 수업과 같았다. 잊고 싶은 기억은 멀리 보내도 사라지지 않는 것처럼 나의 일부로 인정하고 더 성장한 내 모습을 만들자. 감정의 시각화, 영화 마지막즈음 주인공의 감정 중 하나인 '불안'이 소용돌이쳤다. 이런 표현을 할 수 있다는 것에 감탄했다. 다시 한번 보고 싶은 영화이고 추천하고 싶은 영화다. 어른이 된다는 게 이런 건가 봐 기쁨이 줄어드는 거
2024.08.26
no image
[DB] Oracle AWR 스냅샷을 활용한 SQL 성능 분석
Oracle 데이터베이스의 성능을 분석하는 데 있어 AWR(Automatic Workload Repository) 스냅샷은 매우 중요한 역할을 한다. AWR 스냅샷은 특정 시점의 데이터베이스 성능 데이터를 캡처하여 저장하며, 이를 통해 데이터베이스 성능 문제를 진단하고 최적화하는 데 유용한 정보를 제공한다.AWR 스냅샷을 활용하여 특정 시간대의 SQL 성능을 분석하는 SQL 쿼리에 대해 확인해보자. 1. 스냅샷(Snapshot) ID 추출하기먼저, 특정 시간대에 해당하는 AWR 스냅샷의 SNAP_ID를 추출한다.DBA_HIST_SNAPSHOT 뷰에는 각 스냅샷의 시작 시간(BEGIN_INTERVAL_TIME)과 끝 시간(END_INTERVAL_TIME)이 저장되어 있다.SELECT SNAP_ID FROM..
2024.08.20
no image
[서버] 스토리지 마운트 관련 부팅 순서의 중요성
재해복구훈련 진행 중 [정전 + UPS 방전] 시나리오에서 A 서버와 B(스토리지) 서비스 및 서버를 종료시킨 뒤, 재부팅 과정에서 발생한 상황이다.A 서버와 B(스토리지) 서버는 서로 다른 IP와 서버에서 동작하고 있으므로, A 서버 부팅 시 B 서버가 자동으로 마운트가 되어야 하는데 그렇지 않은 상황이 발생했다.서비스를 재시작 하는 경우는 흔하더라도 서버 자체를 재시작하는 경우는 흔하지 않다..결론부터 말하자면 A 서버가 정상적으로 B 스토리지 서버를 마운트하려면 B 스토리지가 먼저 부팅되어 있어야 한다. 부팅 순서의 중요성1.1 스토리지 서버가 먼저 부팅되어야 하는 이유연결 가능성: A 서버가 스토리지를 마운트 하려면, 스토리지 서버가 네트워크 상에서 사용할 수 있어야 한다. 스토리지 서버가 먼저 ..
2024.08.20
no image
[Java] 지역 변수와 스코프(Scope)
기본적인 개념이지만 리마인드 느낌으로 정리해본다.자바에서 Scope(스코프)는 변수나 메소드, 클래스가 어디서부터 어디까지 접근 가능한지를 정의하는 범위를 의미한다.스코프는 코드의 가독성을 높이고, 변수의 중복 선언을 방지하며, 메모리 관리를 효율적으로 수행할 수 있게 해준다.자바에서는 크게 클래스 스코프, 메소드 스코프, 블록 스코프의 세 가지로 나눌 수 있다. 1. 클래스 스코프 (Class Scope)클래스 스코프는 클래스 전체에서 접근할 수 있는 변수나 메소드의 범위를 의미한다.클래스 변수(Static 변수)와 인스턴스 변수(Non-static 변수)가 클래스 스코프에 속한다.클래스 스코프에 속한 변수들은 클래스 내의 모든 메소드에서 접근할 수 있다.public class Car { // 클..
2024.08.14
no image
[ORACLE] 오라클 쿼리 로그 확인하기
금일 오전에 테스트 서버 권한관리 테이블에 데이터가 싹 사라져 있었다..사용자 권한에 따라서 페이지 메뉴 탭이 구분되어 보이는데, 관리자를 제외한 모든 사용자가 메뉴 탭을 확인하지 못하는 상황이 발생되었다. 테스트 서버라서 다행이다.자, 이제 누가 권한관리 테이블을 언제, 어떤 계정으로, 어떤 쿼리를 통해 삭제했는지 확인해보자. Oracle versionDBMSOracle 10gToad for Oracle 1. V$SQL 뷰를 통해 쿼리 로그 확인V$SQL 뷰는 현재 메모리에 있는 SQL 문에 대한 정보를 제공한다.이 뷰를 사용하면 최근 실행된 SQL 문을 확인할 수 있다.SELECT sql_id, sql_textFROM v$sqlWHERE sql_text LIKE '%검색하고자 하는 내용%';--실행한..
2024.08.13
no image
[단축URL] me2.do 단축 URL 이용 장애 발생
me2.do는 네이버에서 제공하는 단축 URL 서비스다.이 서비스를 통해 사용자는 긴 URL을 짧게 줄여서 더 간편하게 공유할 수 있다.단축 URL은 트위터와 같은 문자 수 제한이 있는 소셜 미디어에서 특히 유용하며, 링크를 짧고 깔끔하게 만들 수 있다.  해당 서비스를 활용하고 있는 서버에서 단축URL로 접근 시, 아래와 같은 DNS 오류메세지를 출력한다.DNS_PROBE_FINISHED_NXDOMAIN 네이버 개발자센터에 들어가보니, 아래와 같은 공지가 올라와 있었다.https://developers.naver.com/notice/article/16688 [단축URL] me2.do 단축URL 이용 장애 공지 - 공지사항 developers.naver.com요약하자면, 단축 URL 악용사례로 인하여 m..
2024.07.31