일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- db
- node.js
- datagrip 한글깨짐
- DART
- 봤어요처리
- Java
- InteliJ
- @RequestBody
- 프로그래머스
- oracle
- eqauls-hashcode
- 인텔리제이
- SQL
- javascript error
- 코어자바스크립트
- maven
- Aspect
- svn
- 프로젝트 여러 개
- Spring
- JavaScript
- Stream
- TypeScript
- class-transformer
- tecoble
- MySQL
- Mac
- flutter mac 설치
- ojdbc6
- REST
- Today
- Total
목록Dev/DataBase (11)
개발자가 되고 싶은 개발자
5.7로 업그레이드 했을 때 발생하던 현상이였다. 분명히 같은 IN쿼리지만, 5.6에서는 인덱스를 타던 것이 5.7로 넘어오면서 인덱스를 타지 않게 된 것이다. 정확히 말하자" data-og-host="jobc.tistory.com" data-og-source-url="https://jobc.tistory.com/216" data-og-url="https://jobc.tistory.com/216" data-og-image="https://scrap.kakaocdn.net/dn/dkMLRr/hyVS22A7gf/m6skWeTeDUetMZYstSCFxk/img.png?width=800&height=800&face=0_0_800_800,https://scrap.kakaocdn.net/dn/cc7THx/hyVVy..
서론 min 값이 방해했던 이슈는 맞지만, 원인파악의 과정을 정리하기 위함에 가깝습니다. 근본적인 원인은 아님을 참고부탁드립니다. 환경 일정 주기마다 특정 스크립트가 실행되는 스케줄링 서버 쉘 스크립트를 통해 빌드된 코드를 실행하는 구조 비동기로 동작하는 로직이 존재 문제상황 특정 시점부터 모니터링 툴에 SequelizeConnctionAcquireTimeoutError가 발생했다는 알림이 오기 시작했습니다. 서버에서 해당 스크립트의 프로세스가 정상 종료되지 않아 다수의 좀비 프로세스가 남아있어 메모리를 점유하는 문제가 발생했습니다. 실행 로그를 파일로 남기고 있어, 로컬에서 스크립트를 실행했을 때 프로세스의 종료여부를 확인하지 못했습니다. SequelizeConnectionAcquireTimeoutEr..
문제 상황 일정 주기마다 특정 데이터의 삭제가 필요한 요구사항. Scheduler 서버가 별도로 분리되어 있지 않음. 해당 로직이 관리되고 있는 서버에 문제 발생 시 Scheduler의 기능들도 동작하지 않을 것. 점점 Scheduler 코드들의 중요도와 타 서비스의 의존도가 높아지고 있는 상황. 처리 DB의 Scheduler를 이용하면 성능면에서 우수할 수 있지만, 성능을 고려할만큼의 쿼리가 아니라고 판단. 다른 개발자가 DB를 까지 않으면 해당 로직에 대한 존재 유무를 알 수 없기 때문에 유지보수 측면에서 Server 로직에 작성하는 것이 맞다고 판단하였음. 정리 별도의 Scheduler 서버로 분리하는 것이 먼저라고 생각되었지만, 우선순위에서 계속 밀리다가 결국에는 문제가 발생할 시점이 다가와서야 ..
인덱스란? - 데이터베이스 분야에 있어서 테이블에 대한 동작의 속도를 높여주는 자료 구조를 일컫는다. - 책을 볼 때 특정 내용을 빨리 찾기 위해 있는 맨 뒷 부분의 찾아보기 부분이 인덱스라고 생각하면 된다. - 인덱스는 테이블에 있는 한 개 이상의 컬럼으로 만들 수 있다. - 만약 인덱스가 없다면 테이블 전체를 뒤지는 풀 스캔을 하게 된다. B-tree 인덱스 - 여러 종류의 인덱스가 있는데 가장 일반적인 인덱스가 B-tree인덱스이다. - 표준인 B-tree인덱스는 인덱스 키와 이 키에 해당하는 컬럼 값을 가진 테이블의 로우가 저장된 주소 값으로 구성된다. - 인덱스 키: 인덱스로 만들 테이블의 컬럼 값 고려사항 - 입력, 수정, 삭제를 하게 되면 인덱스를 새로 갱신하여야 하기 때문에 성능이 저하된다..
velog.io/@public_danuel/sql-join-is-not-venn-diagram
groups.google.com/g/ksug/c/VuGcQ2NU5tY?pli=1
넘겨온 파라미터가 Null이 아닐 경우에만 처리하는 방법입니다. SELECT * FROM TEST_TBL_M WHERE 1=1 AND TEST_COL = #{PARAM} SELECT * FROM TEST_TBL_M WHERE 1=1 AND TEST_COL = #{PARAM} 첫 번째와 방법은 자바 유틸을 사용하는 것이고, 두 번째 방법은 관계 연산자를 사용하는 방법입니다. 두 번째 방법을 사용하는 경우 null 다음 비교 시 쌍 따옴표를 사용하기 때문에 ' 와 "를 잘 구분해주셔야 합니다.
ORA-00918 : column ambiguously defined ORA-00918 : 컬럼의 정의가 애매합니다 발생 원인 - 내 경우 2가지의 이유로 발생 1. 정의한 Alias를 사용하지 않은 경우 2. 컬럼을 중복하여 작성한 경우. 해결 방법 1. 중복된 컬럼이 있는지 확인해야 합니다. 2. 테이블 조인 시 많이 발생하기 때문에 컬럼명이 같은 경우가 많습니다. 컬럼에 맞는 테이블을 명시해두었는지 확인해야 합니다.
오랜만에 글을 작성해봅니다. 업무 파악을 위해 분석기간에 투입되어 업무를 배우고, 이제 슬슬 설계단계에 오다 보니 DB를 볼 일이 많아졌습니다. 실무에서의 쿼리문을 보니 학교에서 자바를 배우고 처음 실무에서 스프링을 접할 때 느낌이었습니다. (이게 뭐지...? 내가 배운 자바는, DB는 이게 아닌데!) 보통 한 테이블에 몇 십개의 컬럼은 기본이고, JOIN도 끝이 보이지 않은 AND로 이어져있었습니다. 우선 익숙치 않은 테이블 명들이 화면을 채우고 있으니, 그냥 단순 나열되어 있는거지만 일단 당황부터... 그래서 더 늦기전에 조인의 개념에 대해 다시 정리해보려고 합니다. https://www.dofactory.com/sql/join SQL JOIN | JOIN Syntax | JOIN Difference..
안녕하세요, 스프링에서 오라클을 연동해서 사용할 때 pom.xml을 통해 Maven으로 필요한 의존성들을 다운로드합니다. 오라클 jdbc인 ojdbc는 Maven과의 저작권 문제 때문에 저장소를 따로 지정해줘야 합니다. 연동 시 필요한 주요 드라이버들과 저장소들을 적어두겠습니다. (계속해서 변동사항이 있어, 언제 사용이 불가할지는 모릅니다. 불편ㅠ) (포스팅 후에 알았지만, 이미 포스팅을 해뒀었습니다.... 나중에 합쳐두기...) https://fullth.tistory.com/entry/SPRING-Maven-Ojdbc6-%EC%97%90%EB%9F%AC
안녕하세요, 자주 까먹는 에러를 기록해두려고합니다. Oracle Version: 18c XE 1. Oracle 대소문자 구분 다른 잘못된 점을 찾지 못하겠다면, 확인해봐야 합니다. 오라클 11g 이후 버전부터는 대소문자를 구분하도록 되어있습니다. SQL Plus에 접속하여 다음의 명령어를 입력해 줍니다. (차후에 구분해야 할 일이 생기면 true로 변경하여 줍니다.) SQL> connect / as sysdba SQL> ALTER system SET sec_case_sensitive_logon=false; 변경 후 다음 명령어로 결과를 확인해 줍니다. SQL> show parameter sec_case 2. ORA-65096 공통 사용자 또는 롤 이름이 부적합합니다. 오라클 11g 이후 버전 부터는 공통..