https://community.oracle.com/thread/715458
'DB > sql' 카테고리의 다른 글
roles (0) | 2015.12.14 |
---|---|
datafile size 줄이는 방법 (0) | 2015.05.24 |
현재 접속한 계정 소유의 테이블명을 모두 조회하고 싶을 때 (0) | 2015.03.01 |
1장 select (0) | 2015.02.14 |
오라클 sqlplus 접속 관련 명령어 및 에러해결법 (0) | 2015.02.14 |
https://community.oracle.com/thread/715458
roles (0) | 2015.12.14 |
---|---|
datafile size 줄이는 방법 (0) | 2015.05.24 |
현재 접속한 계정 소유의 테이블명을 모두 조회하고 싶을 때 (0) | 2015.03.01 |
1장 select (0) | 2015.02.14 |
오라클 sqlplus 접속 관련 명령어 및 에러해결법 (0) | 2015.02.14 |
http://docs.oracle.com/cd/E11882_01/install.112/e24326/toc.htm
정리할것
alter database add logfile group 1
'/oradata/dbworks/redo01.log' size 100m
ㅊ
12
ndi 이기종 데이터베이스 정보 호환안되는 이유
11
이미지카피
데이터카드 사용하때 프라머리 스탠바이
1ㅊㅊㅊ능동적으로 밀어주는걸로 가져가는걸로바뀜
패스트 데이터베이스 리페어
프라미버리 페일시 스탠바이에서 푸시해서 됨
시점안맞을때
12c
서버는 하난데 여러개 디비가 돌아가는 것처럼 하는 것
oraenv 오라클 환경설정파일
---
em은 설치하지 말 것
용량만 먹으니까 설치하지 말자
영업팀에 사양 저장공간 모두 물어볼 것
어디에 저장하는지
SID는 어떻게 하는지
오라클 설치시
---
삭제
su - oracle
cd $ORACLE_HOME
cd deinstall/
./deinstall
계속 엔터 누르면 됨
---
username : oracle
groupname : dba
설치경로 : /oracle
datafile : /oradata
archive : /oraarch
archivelog mode
SID : dbworks
캐릭터셋 : KO16MSWIN949
Enterprise Edition
Partitioning
OLAP
Data Mining
Real Application Testing options
EM 구성 X
EM Repository구성 X
SAMPLE SCHEMA 설치 X
SGA : 1500M
PGA : 500M
-----
oraInst.loc 글로벌 인벤토리 센트럴 인벤토리 안에 오라클 제품군이 있어서
설치할때 이 경로를 주의하면 된다
OS마다 위의 경로가 다름
oratab 디비홈경로 y 디비를 켜면 올라오고 n하면 안올라옴
보통은 n으로 함
/usr/local/bin 아래에 있는 것들 dbhome, oraenv, coraenv 폴더 모두 삭제 할 것
--
유닉스에서는 chown -R oracle:dba /oracle
리눅스 chown -R oracle.dba /oracle
---
베이스경로는 보통 세번 설치할 것
oracd 나 폴더를 따로 만들어서 설치파일을 한 곳에 다 두자.
--
인터넷에서 찾은 거 붙이려면 메모장에서 붙여넣고 하기
---
DB name은 한 서버내에서 여러개 띄울수 있지만
유니크네임은 네트워크에서 유일하게 구분하는 값
---
설치 중에
카피 파일중에는 취소하면 그냥 설치하면되는데
링크바이너리는 삭제하고 다시 설치해야함
---
11g audit 를 꼭 꺼야함
---
프로파일 변경 후 적용을 한 것
그리고 env 들어가서 확인을 하고 그 경로로
.bash_profile로 맞춰주면 된다.
---
오패치 하는 방법
----
유니크디비
SID
DBNAME의 차이점을 알 것
---
배쉬프로파일을 적용하기 위해서는 나왔다가 다시 재접속을 하거나
배쉬프로파일이 있는 곳에서 . . /.bash_profile 로 적용을 한다.
--
11g 설치 후 꼭 해줘야 할 것
10g는 대소문자를 구분하지 않기때문에 가능
system/oracle
SYSTEM/ORACLE
11g는 대소문자 구분하기 때문에
show paremeter sec_case;
alter system set sec_case_sensitive_logon=false;
해주어야 함
http://blog.naver.com/PostView.nhn?blogId=firstpcb&logNo=220319407686
계정 만기된 것 푸는 sql
----
기본적으로 프로세스는 1000이상으로 해주자
alter system set processes=500 scope=spfile(memory, both)
캐릭터셋도 꼭 확인 할 것(메일로 보내준 내용을 최소한 확인해봐야함)
----
관리자와의 소통이 중요하며,
스스로를 포장해서 신뢰를 얻는 것이 중요하다.
그리고 어떤 작업을 하기전에 내가 이러한 작업을 하면 어떤 일이 벌어질 것인지를 생각해서 행
동을 해야한다.
데이터베이스를 종료하거나 다시 키려면 관리자에게 꼭 말해야한다.
----
특별한 일이 없는 이상 /etc/shadow /etc/passwd 를 건드리지 말고
useradd userdel
groupadd groupdel 로 삭제하거나 추가를 해 주자.
-----
awr report (0) | 2015.05.25 |
---|---|
11g 업그레이드시 방법 결정하는 법 (0) | 2015.04.29 |
정리하기 (0) | 2015.04.06 |
oracle 11g 삭제 (0) | 2015.04.06 |
oracle 11g 설치 (0) | 2015.04.06 |
오라클 계정을 만들면 자동적으로 /home/oracle 로 폴더가 생김
그 아래에 있는 .bash_profile에 들어가 설정을 해준다.
계정을 지우고 다시 만들어야 프로파일이 깨끗함
11g 업그레이드시 방법 결정하는 법 (0) | 2015.04.29 |
---|---|
oracle 설치 참고 (0) | 2015.04.06 |
oracle 11g 삭제 (0) | 2015.04.06 |
oracle 11g 설치 (0) | 2015.04.06 |
오라클 성능고도화 원리와 해법1 (0) | 2015.01.02 |
oracle 11g 삭제하는 방법
1. su - oracle
2. cd $ORACLE_HOME
3. cd deinstall/
4. ./deinstall 엔터
5. cd /etc
oraInst.loc
oratab 둘 다 삭제
6. cd /usr/local/bin
rm -rf dbhome, oraenv, coraenv 파일을 모두 삭제할 것
7. 사용자 계정 oracle 폴더 날리기
oracle 설치 참고 (0) | 2015.04.06 |
---|---|
정리하기 (0) | 2015.04.06 |
oracle 11g 설치 (0) | 2015.04.06 |
오라클 성능고도화 원리와 해법1 (0) | 2015.01.02 |
버퍼캐시 owi (0) | 2014.12.26 |
1. 파일을 다운로드 받는다.
설치파일의 경로를 어디든 상관이 없다.
2. 각 파라미터 값을 설정해준다.
3. 유저와 그룹을 생성한다.
4. manager의 passive를 실행 후
xclock 나 export DISPLAY=현재 내가 쓰는 ip:0.0
5. ./runInstaller
6. 다음 및 상황을 보고 설치를 한다.
각 화면별로 왜 하는지 정확히 알고 넘어갈 것
7. netca
8. dbca
설치시 프로세스를 1000 이상 줄 것
redolog file size를 100m~200m로 줄 것
관리자와 이야기를 해서 설정할 것
9. em
em 레버지토리 둘 다 체크하지 말 것
혹시 rman 을 사용할거면 fra 을 안해도 됨
10. 제일 마지막에 커스텀에서 제일 위에 것만 체크할 것
설치시 계속 oracle 계정과 root 계정으로 변경하면서 설치를 하면 꼬일 수 있으니,
터미널 창을 두 개 열어서 작업을 하자.
정리하기 (0) | 2015.04.06 |
---|---|
oracle 11g 삭제 (0) | 2015.04.06 |
오라클 성능고도화 원리와 해법1 (0) | 2015.01.02 |
버퍼캐시 owi (0) | 2014.12.26 |
10.2 오라클 구조 공식문서 홈페이지 주소 (0) | 2014.12.22 |
select table_name from tabs
datafile size 줄이는 방법 (0) | 2015.05.24 |
---|---|
nolog 하는 이유 (0) | 2015.04.08 |
1장 select (0) | 2015.02.14 |
오라클 sqlplus 접속 관련 명령어 및 에러해결법 (0) | 2015.02.14 |
sql*plus autotrace 기능 활성화 (0) | 2014.12.24 |
SQL
Structured Query Language의 약자이다.
구조화된 쿼리 언어이다.
사람이 원하는 바를 DBMS프로그램에게 알려주는 언어이다.
* 오라클에 연습용 계정으로 로그인하기
sqlplus scott/tiger
*오라클 서버가 꺼져 있을 때 켠 후 로그인하기
sys/oracle as sysdba
startup
conn scott/tiger
* 사용자 계정 모양으로 프롬프트 바꾸기
오라클의 sqlplus scott/tiger로 접속 한 후
SET sqlprompt "_USER>"
입력하면
현재 접속해 있는 계정이름으로 변경되어 있으므로,
편리하게 작업할 수 있다.
1. desc(Describe 의 약자) 명령어
특정 테이블에 어떤 칼럼이 있는 조회하는 명령어
대부분의 DBMS는 데이터를 표같은 공간에 저장을 하게된다.
이 표를 DBMS는 테이블이라고 부른다.
2. select
문법 : SELECT [칼럼명 또는 표현식] FROM [테이블명, 뷰 명];
- 모든 칼럼 조회하기
칼럼명/표현식 대신에 * 를 사용한다.
- 원하는 칼럼만 조회하기
select 뒤에 원하는 칼럼명을 넣고 조회를 하면 된다.
칼럼이 여러개일 경우 ,(콤마)로 구분하고 칼럼명을 여러개 적어주면 된다.
11g, 12c 오라클 버전에 따라서 약 1,2건 정도의 결과가 차이가 날 수 있으니 신경쓸 거 없다.
* 칼럼 길이 조정하는 방법
터미널 작업시에 한눈에 원하는 정보를 화면으로 보기를 원한다면 다음 명령어를 잘 사용하자.
- 데이터가 숫자일 경우
문법 : COL empno FOR 9999
empno의 칼럼의 길이를 숫자 4자리 까지 들어가게 설정한다.
- 데이터가 문자일 경우
문법 : COl ename FOR a8
ename이란 칼럼의 길이를 8바이트까지 보여주도록 설정한다.
- 한 화면에 출력 가능한 줄 길이 설정 (가로길이 설정)
문법 : SET LINE 200
한 화면을 가로로 200 바이트 까지 보여준다.
- 한 페이지에 출력 가능한 줄 수 설정(세로길이 설정)
문법: SET PAGES 50
한 페이지에 50줄까지 출력한다.
참고로 소문자로 써도 적용이 된다.
3 표현식을 사용해서 출력
표현식(Experssion)
칼럼 이름 외에 출력하기를 원하는 내용을 의미한다.
select 구문 뒤에 ' (홑따옴표)로 묶어서 사용한다.
'교수님''s 매너최고!!' 부분을 표현식이라고 하고 리터럴(literal) 상수(문자)' 라고 한다.
아주 많이 사용되므로 알아두자
여기서 주의할 점은 리터럴 안에 홑따옴표가 들어갈 경우 홑따옴표 1개의 출력을 위해서는
2개의 홑따옴표, 칼럼명에서 보면 알 수 있듯 '' 2개를 사용해야 한다는 점을 잊지말자.
4 칼럼별칭 사용하여 출력하기
컬럼 별칭 사용하기 전
칼럼 별칭 사용 후
아래 화면과 같이 칼럼이름을 임시적으로 볼 때 바꾸어서 보여줄 수 있는 기능을 칼럼별칭(column Alias)라고 한다.
반드시 쌍따옴표로 묶어줘야 할 때는 별명에 공백, 특수문자, 대소문자 구분이 필요할 때이다.
영어 AS 는 써도 되고 안써도 상관없기 때문에 주로 칼럼명 "원하는 칼럼명" 이렇게 사용한다.
5 distinct
중복된 값을 제거하고 출력한다.
데이터 조회시 중복된 데이터를 빼고 보고 싶을 때 사용한다.
원래는 13건이 나오는데 distinct 키워드를 사용하면 중복된 데이터가 제거되고 3건의 데이터만 볼 수 있다.
사용시 주의점!
distinct 키워드는 1개의 칼럼에만 사용해도 모든 칼럼에 적용된다.
이로 인해 뜻하지 않게 성능저하가 발생할 수 있으므로 주의해서 사용해야 한다.
oracel 9i 버전 : distinct 키워드 만나면 정렬을 자동으로 해서 심각한 속도 저하를 발생시켰다.
oracel 10g 버전 : HASH 알고리즘의 사용으로 정렬을 하지 않는다. 그래서 성능이 향상되었다.
HASH 알고리즘 : 1을 넣으면 1이 나오고, 결과가 1이면 입력이 1인 것을 할 수 있는, 입력과 결과가 같은 알고리즘이다.
반드시 select 키워드 다음에 와야한다. 그렇지 않으면 에러가 발생한다.
뭣 모르고 쓰면 속도가 엄청 느려지기때문에 반드시 꼭꼭 써야할 쿼리에만 적용을 하자!!!!!!욕먹기 싫으면!!!!
6 연결(합성 concatenation) 연산자로 칼럼을 붙여서 출력
데이터 조회시 서로 다른 칼럼을 마치 하나의 칼럼처럼 연결해서 출력해야 할 경우가 있다.
이때 사용하는 연산자
|| 파이프 기호를 두 번 사용한다.
연결 연산자를 사용한 컬럼은 오라클에서 1개의 컬럼으로 인식한다.
아래와 같이 리터럴과 함께 사용하는 경우가 많다.
오라클 백업/복구 관련작업이나 관리 작업할 때 아주 많이 사용한다.
7 원하는 조건만 골라내기 - where절 사용
데이터 조회시 원하는 데이터만 보기 위해서 where절을 사용한다.
SELECT [Column or Expression]
FROM [Table or View]
WHERE 원하는 조건;
사용시 주의
where 절에서 숫자는 상관없지만, 문자와 날짜를 조회할 때는 반드시 '' 홑따옴표를 붙여야 한다!!!
또, 문자 조회시 대소문자를 꼭 구분 해야 한다.
날짜는 홑따옴표를 사용해야하지만, 대소문자를 구분하지는 않는다.
오라클 날짜에서 주의해야 할 점
윈도우용 오라클/유닉스계열(리눅스포함) 날짜표시 형식이 서로 다르다.
윈도 : 80/12/17
유닉스 : 17-DEC-80 / 17-dec-80 도 같다.(대소문자 구분안함)
8 sql에서 기본 산술연산자 사용
+,-,*,/ 모두 다 사용 가능하다.
단, 산수에서처럼 덧셈, 곱셈 ,나눗셈이 동시에 나올 경우는 우선순위를 주의해서 사용해야한다.
9 다양한 연산자 활용 방법
부등호 사용
sal가 4000과 같거나 그 이상인 값은 조회해서 보여준다.
ename의 시작이 W하거나 그 이후에 오는 알파벳을 보여준다.
리눅스에서는 날짜형식이 아래와 같지만 , 아래 에러가 난 이유는 윈도우 형식의 날짜로 비교를 해주었기 때문이다.
아래와 같이 날짜형식을 동일하게 해서 조건을 주면 정상적인 값이 조회가 된다.
between 연산자 사용
반드시 작은 값을 앞, 큰 값을 뒤에 사용해야 한다.
두 값을 모두 포함하는 결과를 출력한다.
2000이상 3000이하!
하지만 특정 구간의 데이터 조회시 가급적 between 연산자 대신에 비교 연산자를 사용하는 것을 권장한다
둘 다 같은 결과를 출력해주지만, 비교 연산자가 훨씬 속도가 빠르다.
한글 검색시 기억할 사항
한글은 between 연산시 시작범위는 포함, 끝 범위는 제외
nolog 하는 이유 (0) | 2015.04.08 |
---|---|
현재 접속한 계정 소유의 테이블명을 모두 조회하고 싶을 때 (0) | 2015.03.01 |
오라클 sqlplus 접속 관련 명령어 및 에러해결법 (0) | 2015.02.14 |
sql*plus autotrace 기능 활성화 (0) | 2014.12.24 |
튜닝에 필요한 파일들 (0) | 2014.12.22 |
sqlplus scott/tiger
sqlplus에 scott계정으로 접속함
tiger은 비밀번호임
입력시,
ERROR:
ORA-01034: ORACLE not available
ORA-27101: shared memory realm does not exist
Linux Error : 2: No such file or directory
Process ID: 0
Session ID: 0 Serial number: 0
위와 같은 에러가 출력되면 데이터베이스가 켜지지 않았다는 말임
< 에러해결법 >
sys/oracle as sysdba
startup
conn scott/tiger
관리자용 계정인 sys로 접속 후
DB를 켠 후
scott 계정으로 접속하는 명령어임
show user
현재 접속해 있는 계정을 확인하는 명령어
SET sqlpormpt "_USER>"
현재 접속해 있는 계정명>
프롬프트 모양이
SCOTT> 이렇게 바뀜
매번 사용자를 확인하지 않아도 이렇게 설정해두면 쉽게 알아볼 수 있음
ORA-28000: the account is locked
계정이 잠겨 있으면 위와 같은 에러내용이 뜸
< 에러해결법 >
sys/oracle as sysdba
ALTER USER scott
IDENTIFIED BY tiger
ACCOUNT UNLOCK;
sys는 오라클에서 최상위 권한을 가진 계정
oracle은 오라클 사용시 내가 준 sys의 계정 암호를 말함
잠긴 계정을 풀어주는 명령어
현재 접속한 계정 소유의 테이블명을 모두 조회하고 싶을 때 (0) | 2015.03.01 |
---|---|
1장 select (0) | 2015.02.14 |
sql*plus autotrace 기능 활성화 (0) | 2014.12.24 |
튜닝에 필요한 파일들 (0) | 2014.12.22 |
인덱스 2 (0) | 2014.12.19 |
86페이지
아래 5번과 관련해서 참고해서 볼 사항
http://m.dbguide.net/knowledge.db?cmd=view&boardConfigUid=21&boardUid=168439
oracle 11g 삭제 (0) | 2015.04.06 |
---|---|
oracle 11g 설치 (0) | 2015.04.06 |
버퍼캐시 owi (0) | 2014.12.26 |
10.2 오라클 구조 공식문서 홈페이지 주소 (0) | 2014.12.22 |
sql trace 실행원리 보는 방법 (0) | 2014.12.17 |
원본출처 :
SQL> SELECT COUNT(*) FROM v$latch_children WHERE name = 'cache buffers chains' COUNT(*) ---------- 65536
SQL> ALTER SESSION SET evnets 'immediate trace name buffers level 1'; OR SQL> oradebug dump buffers 1
컬럼 | 내용 |
---|---|
HLADDR | 해당 버퍼를 관장하는 래치의 주소 V$LATCH_CHILDREN.ADDR 과 조인해서 원하는 래치정보를 얻을수 있다 |
TS# | 블록이 속한 테이블스페이스 번호 V$TABLESPACE.TS# 과 조인 |
DBARFIL | DBA 중 파일번호 |
DBABLK | DBA 중 블록번호 |
CLASS | 블록 클래스 |
STATE | 버퍼의 상태 |
0 | FREE no valid block image |
1 | XCUR a current mode block, exclusive to this instance |
2 | SCUR a current mode block, shared with other instances(RAC환경에서만 쓰임) |
3 | CR a consistent read (stale) block image |
4 | READ buffer is reserved for a block being read from disk |
5 | MREC a block in media recovery mode |
6 | IREC a block in instance (crash) recovery mode |
8 | PI past image(RAC환경에서만 쓰임) |
TCH | Touch Count |
oracle 11g 설치 (0) | 2015.04.06 |
---|---|
오라클 성능고도화 원리와 해법1 (0) | 2015.01.02 |
10.2 오라클 구조 공식문서 홈페이지 주소 (0) | 2014.12.22 |
sql trace 실행원리 보는 방법 (0) | 2014.12.17 |
mts 관련 정보 링크 (0) | 2014.12.16 |