리스너 커맨드(Listener Command) 리스너란 DB서버(네트워크)를 통해 클라이언트에서 DB서버로 접속하는 구성을 할 때 클라이언트로부터 DB로 연결 요청을 받는 프로세스를 의미한다. ⇒ 간단히 말해서 "클라이언트 요청을 듣는 사람" 리스너의 시작이나 정지, 각종 설정 등을 리스너 커맨드로 실시한다. lsnrctl 명령으로 리스터 프롬프트에 들어갈 수 있다. command 설명 lsnrctl 리스너 제어 유틸리티를 시작 exit 리스너 제어 유틸리티를 종료 help 리스너 제어 유틸리티의 HELP를 표시 start start : 리스너 시작 ex) lsnrctl start [리스너명] stop stop : 리스너 정지 ex) lsnrctl end [리스너명] reload listener.ora ..
■ 에러 ORA-12514: TNS:리스너가 현재 접속 기술자에 요청된 서비스를 알지 못함 리스너가 클라이언트에서 접속하려는 요청을 받았을 때, 접속처가 되는 서비스를 인식하지 못할 때 발생하는 에러이다. ■ 원인 - 리스너에 서비스가 등록되지 않음 - 클라이언트의 접속 정의가 잘못됨 ■ 대응방법1. 리스너에 서비스가 등록되어 있지 않음 cmd(명령 프롬프트)에서 Isnrctl services 명령으로 리스너에 등록된 서비스를 확인한다. c:\>lsnrctl SERVICES [listener_name] 서비스가 리스너에 등록되지 않은 일반적인 원인으로는 - 인스턴스가 시작되지 않음 : 인스턴스가 시작되지 않은 경우, 인스턴스를 실행시키면 된다. - 리스너 실행 직후 : 리스너 실행 후 서비스가 등록되는 ..
■ 에러 ORA-00942 : 테이블 또는 뷰가 존재하지 않습니다. 이 에러는 해당 테이블이나 뷰가 존재하지 않거나 테이블이나 뷰에 대한 액세스 권한이 부족할 때 발생한다. SQL> SELECT * FROM scott.emp2; SELECT * FROM scott.emp2 * 오류 행: 1: 오류가 발생했습니다. ORA-00942 : 테이블 또는 뷰가 존재하지 않습니다. ■ 원인 - 테이블 또는 뷰가 존재하지 않을 때 - 액세스에 필요한 권한 부족 ■ 대응방법1. 테이블 또는 뷰가 존재하지 않을 때 해당 테이블 또는 뷰가 존재하는지, FROM 절에 지정된 테이블 이름, 뷰 이름의 지정이 잘 되어있는지 확인해보자. 아래의 SQL문을 이용해 사용자 SCOTT이 소유하는 오브젝트 EMP2가 존재하는지 확인 가..
■ IMPORT(impdp)란? impdp는 Oracle10g에서 도입된 새로운 가져오기 유틸리티이다. 이전 imp에 비해 성능이 향상되어 빠르게 가져올 수 있다. ※ Oracle 11g 이상에서는 이전 명령인 imp는 더 이상 사용되지 X ■ impdp구문 impdp /@ ■ impdp옵션 impdp에서 주로 사용하는 옵션은 아래와 같다. - 하나만 지정 가능한 옵션 매개변수 설명 full 전체 데이터베이스를 가져올 때 y를 지정 (예) full=y tablespaces 대상 테이블스페이스 단위로 가져올 때 지정 (예) tablespaces=tbs01 schemas 스키마 단위로 가져올 때 지정합니다 (예) schemas=schema01 tables 테이블 단위로 가져올 때 지정 ※ 복수 지정하는 경우..
- 은행의 버전업 프로젝트를 진행하면서 데이터 이행을 할 때 사용했던 expdp에 대해서 메모한다. ■ EXPORT(expdp)란? expdp는 Oracle 10g에서 도입된 새로운 내보내기 유틸리티이다. 이전의 exp에 비해 성능이 향상되어 고속으로 내보낼 수 있고, 덤프 파일의 암호화나 압축화 등 많은 기능이 추가되어 있다. ※ Oracle 11g 이상에서는 이전 명령인 exp는 더 이상 사용되지 X ■ expdp 구문 expdp /@ ■ expdp 옵션 expdp에서 주로 사용하는 옵션은 아래와 같다. - 하나만 지정 가능한 옵션 매개변수 설명 full 전체 데이터베이스를 내보낼 때 y를 지정 (예) full=y tablespaces 대상 테이블스페이스 단위로 내보낼 때 지정 (예) tablespa..
■ 에러 ORA-00911: 문자가 부적합합니다 ■ 원인1 비인용 식별자의 선두 문자에 영자 이외의 기호나 수치, 한국어(일본어)를 사용 ■ 대응방법 인용 식별자와 비인용 식별자를 올바르게 구분한다. ⇒ 작은 따옴표 및 큰 따옴표 ■ 원인2 (일본어일 경우에 주로 발생함) SQL문 안에 전각 스페이스 등이 혼입되어 있다. ■ 대응방법 에러가 발생하지 않는 경우가 대부분이지만 전각 스페이스를 반각 스페이스처럼 사용하면 찾기가 어렵기 때문에 사용하면 안된다. 문자열을 반전 표시 등으로 확인하거나 보이지 않는 컨트롤 코드(탭 or 개행 이외)나 부적절한 개행이 포함되어 있지 않은지를 확인한다. ■ 원인3 SQL * Plus 이외의 SQL 실행 인터페이스를 사용하는 경우 SQL문 끝에 세미콜론(;)이 붙어서 e..
■에러 ORA-00904: 부적합한 식별자입니다. ■원인1 식별자는 큰 따옴표(")로 묶어 사용된다. 많은 개발 언어에서 작은 따옴표(')와 큰 따옴표(")를 같은 의미로 사용할 수 있으나, 오라클에서는 각각 다른 의미를 가지고 있다. 작은 따옴표는 리터럴을 나타내지만, 큰 따옴표는 객체명을 나타내므로 ORA-00904 에러가 발생한다. 큰 따옴표(")로 둘러싼 식별자는 대문자 소문자를 구별한다. 따옴표로 묶지 않은 식별자는 항상 대문자로 변환되어 관리된다. 예제 컬럼명 "abc" ≠ abc 컬럼명 "한국어a" ≠ "한국어A" 컬럼명 "ABC" = abc ■대응방법 큰 따옴표(")로 묶은 식별자를 사용하는 경우에는 대소문자까지 올바르게 기술한다. ■원인2 리터럴 항목을 작은 따옴표로 묶어 사용하지 않는다..
■에러 ORA-00001: 유일성(무결성) 제약조건에 위배됩니다. 이 에러의 주된 가능성으로서는 INSERT ~ SELECT ~를 사용했을 경우에 기본키(PK)나 고유키(UK)와 같은 데이터를 INSERT 하려고 했을 때 발생한다. ■원인 단순한 일의 제약 위반이므로 INSERT ~ VALUES (~)의 경우에는 문제가 되지 않는다. INSERT ~ SELECT ~를 사용했을 경우에 대상이 되는 데이터가 대량이 되는 일이 적지 않기 때문에 원인이 되는 레코드의 특정이 매우 번거롭다. 마찬가지로 MERGE에 의한 데이터의 조작도 원인 레코드의 특정이 매우 번거롭게 된다. ■(ver: 11gR2부터) 대응방법 1 : 오류 데이터를 무시하고 삽입하는 방법 IGNORE_ROW_ON_DUPKEY_INDEX 힌트 ..
- Total
- Today
- Yesterday
- in/out/ref
- grant
- vba
- VB.Net
- 후나빙
- rollback
- pl/sql
- 동기통신
- BEGIN절
- in/out/ref 차이점
- commit
- 유틸리티
- 에러
- TrimEnd
- PL/SQL 실행문
- REVOKE
- PL/SQL 예외처리문
- C#
- in/out/ref 예제
- USER_SYS_PRIVS
- 참조전달
- in/out/ref 공통점
- Oracle
- 시간차이
- 유틸리티에러
- DBA_SYS_PRIVS
- DECLARE절
- EXCEPTION절
- 초기화파라미터파일
- NLog
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |