반응형 sql oracle29 [Oracle]ORA-28000 : the account is locked 해결 목차 [Oracle]ORA-28000 : the account is locked 해결방법 계정이 lock된 경우의 수는 다양합니다. DBA가 직접 해당 계정을 잠궜을 수도 있고 비밀번호를 계속 틀렸거나 비밀번호 만료로 인한 잠금 제 경우는 3번 째 경우였고 터미널에서 직접 변경 처리를 했습니다. 계정이 잠길 경우 당연히 접속툴에서 접속이 안되기에 아래처럼 터미널에서 관리자로 접속 sqlplus / as sysdba 터미널에서 직접 쿼리문으로 계정 비밀번호 변경 ALTER USER TESTUSER ACCOUNT UNLOCK; commit; 위처럼 해서 해결 되는 경우도 있고 간혹 비밀번호를 변경해야 되는 경우도 있습니다. 이 경우도 관리자로 터미널 접속 후 직접 비밀번호를 변경 해주고 테스트 해보면 됩니다.. IT/DBMS 2022. 11. 28. [Oracle]oracle expdp 이용한 백업 정책 목차 # expd_script.sh # oracle home direcoty 설정 ORACLE_BASE=/oracle/app; export ORACLE_BASE ORACLE_HOME=/oracle/app/product/12.2.0.1; export ORACLE_HOME # oracle SID 설정 ORACLE_SID=TEST; export ORACLE_SID PATH=/usr/sbin:$PATH; export PATH PATH=$ORACLE_HOME/bin:$PATH; export PATH # oracle 소유자 설정 export ORACLE_OWNER=oracle # 백업파일뒤에 붙일 날짜 세팅 export DATE=`date +%Y%m%d` export DATE1=`date -d "-2 day" +%.. IT/DBMS 2022. 11. 28. [Oracle]oracle datapump data_pump_dir 경로 확인 및 변경 목차 oracle expdp의 덤프파일 저장경로인 data_pump_dir를 확인하는 방법 아래 쿼리로 확인하면 됨(당연히 dba권한 있는 계정으로 실행해야 함) SELECT * FROM DBA_DIRECTORIES ; 변경은 아래의 쿼리로 설정 그 후 실제 물리경로에 해당 폴더 생성 현재 회사에서는 오라클 11g만 사용하고 있어서 실제 생성 테스트는 하지 못했음 출처 : https://imbang.net/2019/05/19/datapump-data_pump_dir-%EA%B2%BD%EB%A1%9C-%ED%99%95%EC%9D%B8-%EB%B0%8F-%EB%B3%80%EA%B2%BD-%ED%95%98%EA%B8%B0/ IT/DBMS 2022. 11. 28. [Oracle]ORACLE TRUNC(시간이나 숫자 절사) 목차 Oracle TRUNC 시간이나 숫자를 절사할 때 쓰는 함수 ex) SELECT SYSDATE AS 현재시간, TRUNC(SYSDATE) AS 시간절사, TRUNC(SYSDATE, 'DD') AS 시간절사2, --TRUNC(SYSDATE)와 동일 TRUNC(SYSDATE, 'HH24') AS 분초자르기, TRUNC(SYSDATE, 'MI') AS 초자르기, TRUNC(SYSDATE, 'YEAR') AS 월일초기화, -- TRUNC(SYSDATE, 'YYYY')와 동일 TRUNC(SYSDATE, 'MM') AS 일초기화, --TRUNC(SYSDATE, 'MONTH')와 동일 TRUNC(SYSDATE, 'DAY') AS 요일초기화 --해당 주의 일요일로 초기화 FROM DUAL ; 시간절사 결과 ex).. IT/DBMS 2022. 11. 26. [Oracle]ORACLE 사용자가 생성한 테이블 전부 삭제 목차 내가 만든 DB를 삭제하고 싶을 때 아래처럼 쿼리 실행 후 결과값 복붙 해서 사용 SELECT 'DROP TABLE ' || object_name || ' CASCADE CONSTRAINTS;' FROM user_objects WHERE object_type = 'TABLE'; 중요한 점은 반드시 해당 테이블을 가진 사용자로 로그인 후 select 해 봐야 된다는 것임(system으로 로그인 하지 말고 해당 사용자로 로그인) IT/DBMS 2022. 11. 26. [Oracle]ORACLE DB DUMP(오라클 DB 백업) 목차 사진 출처 : https://fruitdev.tistory.com/40 사진 출처 : https://m.blog.naver.com/PostView.naver?isHttpsRedirect=true&blogId=sin160cm&logNo=220803132213 토드같은 툴을 이용하는 방법도 있지만 난 아직까지 이 cli 방식이 더 잘되는 듯 싶다. 핵심은 userid는 system으로 하고 parameter값으로 owner을 dump 뜨고 싶은 스키마명(test)으로 할 경우 system 계정으로 test 데이터베이스를 dump 뜨겠다는 소리, imp시에는 fromuser에 test를 넣고 touser에는 스키마명이 그대로 될 경우 똑같이 test를 넣으면 됨 그냥 cmd로 dump 뜨는게 테이블 스페.. IT/DBMS 2022. 11. 26. [Oracle]ORACLE 내(현재) 계정 권한 조회 목차 현재 내 계정에 있는 권한을 조회하는 방법임, 내계정으로 작업을 하기 위해서 어떤 권한이 부여되어 있는지 미리 체크하는게 좋다. SELECT * FROM USER_SYS_PRIVS; 사진 출처 :https://keichee.tistory.com/68 [오라클/oracle] 내(현재) 계정 권한 조회하기 DB작업을 하다가보면 내 계정에 어떤 권한이 있는지 확인해야할 때가 있다. 권한자체가 없으면 작업자체가 안될 수도 있으니까 말이다. 아래 쿼리문은 현재 접속한 계정의 권한을 보여준다. selec keichee.tistory.com IT/DBMS 2022. 11. 26. [Oracle]ORACLE INSERT ALL로 다른 테이블에 동시에 같은 데이터 입력 목차 -- 아래는 professor테이블에서 교수번호가 3000번에서 3999인 교수들의 교수번호와 이름을 prof_3, prof_4 테이블에 동시에 입력하는 쿼리 INSERT ALL INTO prof_3 values(profno, name) INTO prof_4 values(profno, name) SELECT profno, name FROM PROFESSOR WHERE profno BETWEEN 3000 AND 3999 INSERT ALL로 다른 테이블에 동시에 같은 데이터를 넣을 수 있음 출처 : 오라클 SQL과 PL/SQL 책 IT/DBMS 2022. 11. 25. [Oracle]ORACLE SELECT 결과값 별칭(alias) 사용 목차 아래처럼 사용하는 경우가 많음 학생 테이블에서 학생번호, 이름, 아이디, 주민번호, 생년월일을 조회하는 쿼리 결과값을 s라는 별칭을 줘서 하나의 테이블이 되는것임 바깥쪽 메인쿼리에서는 안쪽 결과를 테이블처럼 사용 IT/DBMS 2022. 11. 25. [Oracle]ORACLE SUB QUERY 목차 서브쿼리 서브쿼리는 하나의 메인쿼리안에 또 하나의 쿼리가 담겨있는 걸 의미 종류 : 스칼라 서브쿼리(SELECT절에 사용), 인라인뷰 서브쿼리(FROM절에 사용), 일반 서브쿼리(WHERE절에 사용) SELECT col1, (SELECT ...) -- 스칼라 서브쿼리(Scalar Sub Query): 하나의 컬럼처럼 사용 (표현 용도) FROM (SELECT ...) -- 인라인 뷰(Inline View): 하나의 테이블처럼 사용 (테이블 대체 용도) WHERE col = (SELECT ...) -- 일반 서브쿼리: 하나의 변수(상수)처럼 사용 (서브쿼리의 결과에 따라 달라지는 조건절) 출처: https://data-make.tistory.com/25 [Data Makes Our Future] --.. IT/DBMS 2022. 11. 25. [Oracle]오라클 SELECT 1 FROM '테이블명' 목차 주로 다중행 서브 쿼리문에서 WHERE절에 EXISTS(NOT) 함수안의 서브쿼리에 사용됨, EXISTS로 서브쿼리를 확인할 때는 데이터 값보다는 값의 존재유무가 더 중요하기 때문에 간단하게 사용하기 위해 SELECT 1 FROM emp 형태로 사용됨 IT/DBMS 2022. 11. 25. [Oracle]view(뷰) 목차 view는 가상의 테이블을 의미, view는 데이터는 없고 원본 테이블에 가서 데이터를 불러오는 SQL query만 저장되어 있음 사용자가 해당 view를 사용하는 SQL를 실행할 때만 view에 들어 있는 쿼리가 실행됨 -- 간단한 view 생성 CREATE OR REPLACE VIEW v_emp1 AS SELECT empno, ename, hiredate FROM emp; -- view 조회 시 아래처럼 결과가 표시됨(emp테이블에서 데이터를 조회해 ) SELECT * FROM v_emp1; view를 생성하면 오라클은 해당 view 정보를 딕셔너리에 저장한 다음 사용자가 view를 사용할 때만 view의 서브쿼리가 실행되어 원본 테이블에서 데이터를 가져옴 ※ 이 의미는 평소에 이 view에는 .. IT/DBMS 2022. 11. 25. 이전 1 2 3 다음 반응형