dev/데이터베이스

dev/데이터베이스

FlashBack Example Query

SELECT * FROM [TABLENAME] AS OF TIMESTAMP TO_TIMESTAMP('2024-01-30 16:44:15', 'YYYY-MM-DD HH24:MI:SS') WHERE 1=1 [CONDITION]

dev/데이터베이스

redis

오라클과 같은 rdb에 익숙한 저에겐.. nosql은 생소하지만, redis는 key value 형태로 저장되는 nosql이라고 합니다. key value 말고도 document tree? 와 같은 형태로 저장되어있는 nosql도 있다고 하는데 오늘은 key value 형태로 저장되는 redis에 대해서 살펴보겠습니다. 아래의 이미지와 같이 key value 로 저장을 하고 값을 불러올 수 있습니다. 주로 동영상의 좋아요 기능이나, 일일 방문자수를 기록하는데 사용한다고 하는데, rdb로 하면 부하가 많이 발생하니까 그럴것 같은데.. 솔직히 어디다 쓰는지 감은 안잡힙니다.

dev/데이터베이스

일자별 게시글 순위 조회 쿼리

원하는 쿼리 WITH board AS ( SELECT '2020-12-01' createdate, 'StarCraft' type, '스타는 재미있다' content FROM dual UNION ALL SELECT '2020-12-01', 'StarCraft', '스타2도 재미있다' FROM dual UNION ALL SELECT '2020-12-03', 'LOL' , '롤은 재미있다' FROM dual UNION ALL SELECT '2020-12-05', 'StarCraft', '스타는 재미없다' FROM dual UNION ALL SELECT '2020-12-07', 'LOL' , '롤은 재미없다' FROM dual ) SELECT * FROM (SELECT createdate, type, conte..

dev/데이터베이스

행과 열 변환하는 쿼리

위의 결과에 해당하는 쿼리를 위의 결과로 보여주고 싶을 때가 있다 WITH temp AS ( SELECT 'Value1' AS "COLUMN1", 'Value2' AS "COLUMN2", 'Value3' AS "COLUMN3" FROM dual ) SELECT key,value FROM ( SELECT * FROM temp ) UNPIVOT INCLUDE NULLS (value FOR key IN (COLUMN1 AS 'Column1',COLUMN2 AS 'Column2',COLUMN3 AS 'Column3') ) UNPIVOT 을 사용하면 된다. 만일 해당하는 row에 null 값이 포함되어있다면, INCLUDE NULLS 를 사용하자

dev/데이터베이스

오라클 - 계정 생성

alter session set "_ORACLE_SCRIPT"=true; create user [user명] identified by [패스워드]; grant create session to [user명]; grant connect, resource to [user명]; alter user [user명] default tablespace users quota unlimited on users;

dev/데이터베이스

오라클 - 테이블 완전 삭제

테이블 일괄 삭제 SELECT 'DROP TABLE ' || object_name || ' CASCADE CONSTRAINTS;' FROM user_objects WHERE object_type = 'TABLE' ; 시퀀스 일괄 삭제 SELECT 'DROP SEQUENCE ' || object_name || ' ;' FROM user_objects WHERE object_type = 'SEQUENCE' ; 휴지통 비우기 purge recyclebin;

dev/데이터베이스

오라클 - AWR ( Automatic Workload Repository )

AWR 이란 자동으로 DB에 대한 통계 및 성능자료 등을 수집해 스냅샷으로 만들어 일정기간 보관하고, 이를 활용할 수 있게 해주는 기능이다. 성능자료의 간단한 예로는 Buffer/CPU/Pin/Latch/Library 등의 히트율, 자원 사용률, Soft/Hard Parse 정도, 가장 느리게 돌았던 쿼리 등이 있다. 위 자료들을 토대로 느린 쿼리들에 대해 튜닝을 할 수 있게 되고, SAG영역의 값들을 AWR이 추천하는 값으로 변경하여 효율성을 높일 수 있게 되고, 현 운영 DB의 문제점들을 파악할 수 있다. AWR 생성 $ORACLE_HOME/rdbms/admin에 있는 awrrpt.sql 을 실행한다. 간편하게 하기 위해, $ORACLE_HOME/rdbms/admin로 이동 후 작업을 진행한다. $>..

dev/데이터베이스

오라클 - DB dump & import

Check Directories SELECT * FROM all_directories; DUMP expdp xeuser/xeuser@xe schemas=XEUSER directory=DATA_PUMP_DIR dumpfile=XEUSER.dmp logfile=expdpXEUSER.log 주어진 사용자(schema) 가 가진 전체 객체 export expdp LOCAL_HKC5/LOCAL_HKC5@orcl tables=CT_MESSAGELOG directory=DATA_PUMP_DIR dumpfile=LOCAL_HKC5_20201023_ct_message.dmp logfile=LOCAL_HKC5_20201023_ct_message.log VERSION=12.1 CT_MESSAGELOG table 만 dump..

dev/데이터베이스

오라클 - 12C Create User ## issue

sqlplus "/as sysdba" sysdba 로 접속 후 alter session set "_ORACLE_SCRIPT"=true; alter session set "_ORACLE_SCRIPT"=true; 설정 create user {user_name} identified by {password}; 평소와 같이 유저 성생 grant create session to {user_name}; 생성한 유저에 로그인 권한 생성 grant connect, resource to {user_name}; 일반적인 권한부여 grant dba to {user_name}; dba 권한 주기 출처 https://taisou.tistory.com/583

dev/데이터베이스

ORA-28040 : No matching authentication protocol

발생원인 Oracle 11g 에서 Oracle12c로 업데이트 하였을 경우 버전 차이에 의한 에러 발생 해결 방법 - 리눅스 step 1 sqlnet.ora 하단에 아래 부분 추가 SQLNET.ALLOWED_LOGON_VERSION_SERVER=8 SQLNET.ALLOWED_LOGON_VERSION_CLIENT=8 step 2 oracle 계정에서 Listener 재시작 putty oracle 계정 임 db 접속해서 하는 것이 아님 lsnrctl stop lsnrctl start step3 위의 방법 후에 ORA-01017이 발생한다면 비밀번호를 다시 설정해 주어야한다. ALTER USER LOCAL_HKC5 IDENTIFIED BY LOCAL_HKC5; 해결방법 - windows step 1 sqlne..

jeongsu
'dev/데이터베이스' 카테고리의 글 목록