SQL

    [Oracle] 오라클 사용자 정보 확인 :: DBA_USERS

    현재 생성된 사용자 계정 확인 모든 사용자 계정의 정보를 확인 하기 위한 코드 SELECT * FROM dba_users; DBA_USERS 테이블서 확인할 수 있는 컬럼(사용자 정보) -- 테이블의 컬럼명을 확인하는 쿼리 SELECT column_name FROM all_tab_columns WHERE table_name = 'DBA_USERS'; USERNAME USER_ID PASSWORD ACCOUNT_STATUS LOCK_DATE EXPIRY_DATE DEFAULT_TABLESPACE TEMPORARY_TABLESPACE LOCAL_TEMP_TABLESPACE CREATED PROFILE INITIAL_RSRC_CONSUMER_GROUP EXTERNAL_NAME PASSWORD_VERSIONS ..

    [Oracle] ORA-28000 계정 장금(Lock) 오류 해제 :: 오라클 에러

    오라클 에러 코드 ORA-28000: the account is locked ORA-28000: 계정이 잠금되었습니다 ORA-28000 에러란, 에러 내용 그대로 계정이 잠겨 로그인이 불가능한데, 로그인 시도시 나오는 에러 코드입니다. 에러 해결 방법 간단히 ALTER USER 명령을 통해 유저의 Lock을 해제할 수 있습니다. (단, SYS 계정으로 접속 후 명령해야합니다.) ALTER USER user_name ACCOUNT UNLOCK; 에러 발생 이유 1. 관리자가 직접 계정에 Lock을 걸었다. 2. 패스워드 유효기간이 만료되었다. 3. FAILIED_LOGIN_ATTEMPTS 파라미터에 설정된 로그인 시도 횟수를 넘겨 계정이 자동으로 잠기는 경우. Lock 상태 확인하는 방법 SELECT us..

    [Oracle] 오라클 SQL SELECT 쿼리 실행 순서/처리 과정

    SELECT 실행 순서 -- 문법 순서 1. SELECT 2. FROM 3. WHERE 4. GROUP BY 5. HAVING 6. ORDER BY -- 실행 순서 1. FROM 2. ON 3. JOIN 4. WHERE 5. GROUP BY 6. HAVING 7. SELECT 8. DISTINCT 9. ORDER BY 10. TOP 실행 순서 추상화 해당 데이터가 있는 곳을 찾아가서 (FROM) 조건에 맞는 데이터로 필터링하고 (WHERE) 원하는 데이터로 가공 (GROUP BY) 가공한 데이터에서 조건에 맞는 것만 (HAVING) 뽑아내서 (SELECT) 정렬한다 (ORDER BY) 실행순서는 문법, 권한 검사 순서이기도 하고, Alias(별칭) 등록 순서이기도 하다. 별칭(Alias) 설정 규칙 FR..

    [Oracle] 오라클에서 쿼리문 수행(실행) 시간이 알고 싶다면 'SET TIMING ON'

    오라클에서 쿼리문 수행 시간을 확인할 수 있을까? 쿼리문 수행시간 체크를 수시로 하는 습관은 중요하다. 특히, 장문의 쿼리 문을 작성하거나 쿼리문(인덱스 설정 등등..)의 효율을 비교할때 수행 시간을 알아야만 비교가 가능하다. 그렇다면, 오라클에서 쿼리나 저장 프로시저, 커서 등의 실행시간을 알고 싶다면 어떻게 해야 할까? 이러한, 수행(실행)시간 확인은 굉장히 쉽게 할 수 있는데 'SET TIMING ON' 문이면 가능하다. 위에처럼 쿼리문 작성 시 'SET TIMING ON'을 위에 작성후 스크립트 출력을 하게 되면, 아래에 수행(실행)시간이 얼마나 걸리는지 확인 할 수 있다.

    [Oracle] SQL developer 유용한 환경설정/단축키

    라인번호 표시 가장 기본적이면서 확인이 필요한 '라인번호'. 대부분 오류 코드가 '00열 00행' 이런식으로 표현되기 때문에 라인번호를 모르면 어느 부분인지 매번 세야하는 번거로움이 있다. 도구 -> 환경설정 -> 코드 편집기 -> 행 여백 -> 행 번호 표시: 체크 결과는 아래처럼 보이게 된다. 키워드 대문자로 표시하기 키워드/식별자를 자동으로 대소문자로 만들어준다.(개인적으로 오히려 번거롭다고 생각함) 도구 -> 환경설정 -> 코드 편집기 -> 완성 인사이트 -> 입력할 때 대소문자 변경: 체크 배경색을 사용하여 널(null)값 표시하기 널(null)값에 하이라이트를 주는 설정 도구 -> 환경설정 -> 데이터베이스 -> 고급 -> 배경색을 사용하여 널 표시: 색 지정 SQL 결과 갯수 제한하기 SQL..

    [Oracle] 오라클이 쿼리문을 이해하는 방식

    쿼리 실행 방식 알아보기 단순한 쿼리 문장이어도 오라클은 쿼리를 분석하는 방식은 다르다. ​ 전체적인 과정은, ​ 1. 구문분석(Parsing) 2. 최적화(Optimination) 3. Row source Generator 4. 실행(Execute) 1. 구문분석(Parsing) 작성한 쿼리가 문법적으로 틀리지 않은지 확인하는 단계. 해당 쿼리를 SQL 서버가 이해할 수 있는 단위로 분해하는 과정이다. 만약, 구문이 부정확(문법이 틀리다면)하다면 이 단계에서 처리를 중단한다. 또한, 이 문장이 일괄처리(batch)에 속해 있다면 일괄 처리 전체를 중단한다. 2. 최적화(Optimination) 쿼리 처리에서 매우 중요한 단계로 통계나 조각 정보 등을 바탕으로 실행계획(Execution Plan)을 만들..

    [Oracle] 리스너(Listener)와 리스너 명령어

    오라클 리스너란 오라클 리스너는 네트워크를 이용하여 클라이언트에서 오라클 서버로 연결하기 위한 오라클 네트워크 관리자입니다. 네트워크를 통한 연결은 모두 리스너가 담당하며 리스너와 연결되기 위해서는 클라이언트에 오라클 NET8(오라클 클라이언트)이 설치되어 가동중이어야 합니다. 즉, 클라이언트의 데이터베이스 접근에 대한 요청을 받아들일 수 있도록 리스너를 가동하고 있어야 합니다. ​ 이러한 리스너의 시작/종료/상태를 확인하는 오라클 데이터베이스 관리TOOL이 오라클 리스너(LSNRCTL)입니다. LSNRCTL은 리스너 컨트롤의 약자입니다. 리스너 명령어 -- lsnrctl 명령어 lsnrctl help lsnrctl status lsnrctl start lsnrctl stop lsnrctl reload ..

    [Oracle] DB 계정 생성/사용자 확인

    SQL*PLUS 실행하기 1. CMD 창에서 SQL을 실행 PC> sqlplus 2. 사용자 이름/비밀번호 적기 Enter user-name : [sys] Enter password : [password] 3. 패스워드는 오라클 Database 설치시 입력했던 패스워드 입력 ​ #만약 패스워드가 안된다면 'sys' 계정으로 들어간 후 비밀번호 부여해야함 ​ 연결메시지 확인 Connected to : Oracle database 12c Express Edition Realease 12.2.0.2.0 - 64bit Production 현재 DB에 생성된 계정 확인하기 SELECT * FROM ALL_users; // 모든 계정에 대한 정보 확인 SELECT * FROM DBA_users; // 모든 계정에 ..