set
line 120
set
pagesize 50
col
name
for
a20
col value
for
a10
col deflt
for
a10
col type
for
a10
col description
for
a50
select
a.ksppinm
name
, b.ksppstvl value,b.ksppstdf deflt,
decode (a.ksppity, 1,
'boolean'
,
2,
'string'
,
3,
'number'
,
4,
'file'
,
a.ksppity) type,
a.ksppdesc description
from
sys.x$ksppi a, sys.x$ksppcv b
where
a.indx = b.indx
and
a.ksppinm
like
'\_%'
escape
'\'
order
by
name
강조부분을 빼야 all 조회
원하는것만 찾을려면 where절에 추가해넣으면 된다.
'Oracle > Administoration' 카테고리의 다른 글
오라클 Hidden 파라미터 조회 (0) | 2015.06.25 |
---|---|
tablespace에 속한 table 조회(owner) (0) | 2015.01.15 |
No archive mod에서 archive mode 변경하기 (0) | 2014.11.04 |
SGA size cannot be greater than maximum shared memory segment size (0) 에러 (0) | 2014.10.31 |
oracle dbca [ora-00119] invalid specification for system parameter local_listener 에러 (0) | 2014.10.31 |
vi hidden.sql
set lines 132
col KSPPINM for a50
col KSPPSTVL for a10
select a.ksppinm,b.ksppstvl from x$ksppi a, x$ksppsv b
where a.indx=b.indx
and a.ksppinm = '&a'
and substr(a.ksppinm,1,1)='_';
를 os상에 sql로 만들어놓고 oracle 접속후 실행
'_in_memory_undo' 입력
'Oracle > Administoration' 카테고리의 다른 글
전체 쿼리조회 (1) | 2015.06.25 |
---|---|
tablespace에 속한 table 조회(owner) (0) | 2015.01.15 |
No archive mod에서 archive mode 변경하기 (0) | 2014.11.04 |
SGA size cannot be greater than maximum shared memory segment size (0) 에러 (0) | 2014.10.31 |
oracle dbca [ora-00119] invalid specification for system parameter local_listener 에러 (0) | 2014.10.31 |
SQL> select table_name,tablespace_name 2 from dba_tables 3 where owner='SCOTT' SQL> / TABLE_NAME TABLESPACE_NAME ------------------------------ ------------------------------ DEPT USERS EMP USERS BONUS USERS SALGRADE USERS PROFESSOR USERS DEPARTMENT USERS STUDENT USERS EMP2 USERS DEPT2 USERS CAL USERS GIFT USERS TABLE_NAME TABLESPACE_NAME ------------------------------ ------------------------------ GOGAK USERS HAKJUM USERS EXAM_01 USERS P_GRADE USERS REG_TEST USERS P_01 USERS P_02 USERS PT_01 USERS PT_02 USERS P_TOTAL USERS TEST_NOVALIDATE USERS TABLE_NAME TABLESPACE_NAME ------------------------------ ------------------------------ TEST_VALIDATE USERS TEST_ENABLE USERS PRODUCT USERS PANMAE USERS MEMBER USERS REG_TEST2 USERS FRUIT USERS DAECHUL USERS JUMSU USERS TARAN SPIDER H_TARAN SPIDER 33 rows selected.찾았다....taran테이블과 h_taran테이블..
'Oracle > Administoration' 카테고리의 다른 글
전체 쿼리조회 (1) | 2015.06.25 |
---|---|
오라클 Hidden 파라미터 조회 (0) | 2015.06.25 |
No archive mod에서 archive mode 변경하기 (0) | 2014.11.04 |
SGA size cannot be greater than maximum shared memory segment size (0) 에러 (0) | 2014.10.31 |
oracle dbca [ora-00119] invalid specification for system parameter local_listener 에러 (0) | 2014.10.31 |
1. 별도의 저장공간이 필요합니다.
archive redo log는 online redo log file을 복사하는것이기 때문에 online redo log file 외 별도의 공간이 필요합니다.
2. Archive hang 이라는 문제가 발생하여 서비스가 중단 될 수도 있습니다.
여러 가지 이유로 Archiver Process 가 Archive Redo Log File 을 저장할 수 없게 될 경우
(예를 들어 저장 공간이 가득 찰 경우나 권한이 없을 경우 등) 전체 Database 가 중단이 되는 현상이 발
생하게 됩니다. 이런 현상을 Archive Hang 이라고 합니다.
3. 관리가 까다롭습니다.
Archive Log Mode의 원리를 정확히 모를 경우 관리하기가 힘들며 관리가 잘 못될 경우
장애가 발생해도 복구를 할 수 없게 됩니다.
SQL> archive log list; Database log mode No Archive Mode Automatic archival Disabled Archive destination /app/oracle/data/arc2 Oldest online log sequence 17 Current log sequence 19 SQL>현재 database open 상태에서 조회해보니 no archive log로 출력됩니다.
이제 archive redo log를 저장할 디렉토리를 만들고 archive mode로 변경해보겠습니다.
SQL> shutdown immediate Database closed. Database dismounted. ORACLE instance shut down. SQL>database를 종료시키고 parameter file에 archive log file을 저장할 경로를 지정해야 합니다.
SQL> !vi $ORACLE_HOME/dbs/initykdb.ora ---------------------------------------------------- *.log_archive_dest_1='location=/app/oracle/data/arc1' *.log_archive_dest_2='location=/app/oracle/data/arc2' *.log_archive_format=%s_%t_%r.arc해당 경로와 디렉토리 네임은 마음대로 지정해주셔도 됩니다
밑에 %s는 logfile의 시퀀스넘버, %t는 스레드, %r은 인카네이션(ex filename 1-1-2)이고
설정을 완료했으면 wq! 저장 종료하셔서 나오면 됩니다.
SQL> ! [oracle@dbserver ~]$ cd /app/oracle/ [oracle@dbserver oracle]$ [oracle@dbserver oracle]$ mkdir data원하시는 경로로 가서 원하는 네임으로 디렉토리(parameter file에 설정해놨던)를 생성하시면 됩니다.
[oracle@dbserver oracle]$ cd data/ [oracle@dbserver data]$ mkdir arc1 arc2data 디렉토리에 들어가서 arc1 arc2를 생성한다.
[oracle@dbserver data]$ sqlplus / as sysdba SQL*Plus: Release 11.2.0.1.0 Production on Tue Nov 4 17:59:37 2014 Copyright (c) 1982, 2009, Oracle. All rights reserved. Connected to an idle instance. SQL> startup mount ORACLE instance started. Total System Global Area 422670336 bytes Fixed Size 1336960 bytes Variable Size 276826496 bytes Database Buffers 138412032 bytes Redo Buffers 6094848 bytes Database mounted. SQL> SQL> alter database archivelog; Database altered. SQL> alter database open; Database altered. SQL> archive log list; Database log mode Archive Mode Automatic archival Enabled Archive destination /app/oracle/data/arc2 Oldest online log sequence 17 Next log sequence to archive 19 Current log sequence 19 SQL>세팅은 완료됐고 이제 mount로 database를 올려서 archive mode로 변경후 나머지 open하면 된다.
SQL> alter system switch logfile; System altered. SQL> / System altered. SQL> archive log list; Database log mode Archive Mode Automatic archival Enabled Archive destination /app/oracle/data/arc2 Oldest online log sequence 19 Next log sequence to archive 21 Current log sequence 21 SQL>
database를 올리고 archive 스퀀스 넘버를 확인해보니 17번이다.
좀 더 제대로 된 확인을 위해 강제로 log switch를 일으켜서 다시 확인해봤다.
확인해 보니가 시퀀스번호가 19번으로 올라가있다.
'Oracle > Administoration' 카테고리의 다른 글
오라클 Hidden 파라미터 조회 (0) | 2015.06.25 |
---|---|
tablespace에 속한 table 조회(owner) (0) | 2015.01.15 |
SGA size cannot be greater than maximum shared memory segment size (0) 에러 (0) | 2014.10.31 |
oracle dbca [ora-00119] invalid specification for system parameter local_listener 에러 (0) | 2014.10.31 |
오라클 사용자 권한생성 및 권한주기 (0) | 2014.10.31 |
해당 에러는 오라클을 인스톨하기전에
sysctl.conf 파일 맨 밑에 공유메모리 값을 넣어줬을텐데
최대 공유메모리 값보다 초과되서 출력된 에러다.
11g 기준으로 여러개 돌아다니는 공유메모리 설정값이 있을텐데
기본값으로 엔진 및 db를 install할때 참고하길 바란다.
kernel.shmall = 2097152
'Oracle > Administoration' 카테고리의 다른 글
tablespace에 속한 table 조회(owner) (0) | 2015.01.15 |
---|---|
No archive mod에서 archive mode 변경하기 (0) | 2014.11.04 |
oracle dbca [ora-00119] invalid specification for system parameter local_listener 에러 (0) | 2014.10.31 |
오라클 사용자 권한생성 및 권한주기 (0) | 2014.10.31 |
clonedb를 이용해서 dblink 하기 (0) | 2014.10.31 |
오라클 압축을 풀고 엔진을 무사히 설치한다음
리눅스 터널을 통해 DBCA를 날려주면 데이터베이스 인스톨창으로 넘어간다.
모든 과정을 마치고 설치를 하면 2%정도에서 에러를 띄운다.
ora-00119 invalid specification for system parameter local_listener
오라클 엔진 설치과정 전에
서버쪽 /etc/hosts에 아래와 같이 서버의 실제 아이피가 hostname으로 잡혀 있어야 함.
로컬호스트에 hostname이(리스너에서 사용한 이름) 물려 있으면 에러난다.
[oracle@dbserver ~]$ vi /etc/hosts 127.0.0.1 localhost localgist.localdomain localhost4 localhost4.localdomein4 localhost localgist.localdomain localhost6 localhost6.localdomein6 192.168.24.136 dbserver dbserver |
빨간색 된 부분을 추가해준다.
ip확인은 ifconfig eth0 날려주면 나오는 출력내용중에 inet부분이다.
다시 dbca 엔진설치를 하면 문제없이 설치가 된다.
'Oracle > Administoration' 카테고리의 다른 글
tablespace에 속한 table 조회(owner) (0) | 2015.01.15 |
---|---|
No archive mod에서 archive mode 변경하기 (0) | 2014.11.04 |
SGA size cannot be greater than maximum shared memory segment size (0) 에러 (0) | 2014.10.31 |
오라클 사용자 권한생성 및 권한주기 (0) | 2014.10.31 |
clonedb를 이용해서 dblink 하기 (0) | 2014.10.31 |
오라클 유저 만들기
CREATE USER [username] IDENTIFIED BY [password]
DEFAULT TABLESPACE [tablespace_name]
TEMPORARY TABLESPACE TEMP;
생성한 USER에 권한주기
GRANT connect, resource, dba TO [user_name];
(모든권한)
GRANT CREATE SESSION TO 유저명
GRANT CREATE DATABASE LINK TO 유저명
GRANT CREATE MATERIALIZED VIEW TO 유저명
GRANT CREATE PROCEDURE TO 유저명
GRANT CREATE PUBLIC SYNONYM TO 유저명
GRANT CREATE ROLE TO 유저명
GRANT CREATE SEQUENCE TO 유저명
GRANT CREATE SYNONYM TO 유저명
GRANT CREATE TABLE TO 유저명
GRANT DROP ANY TABLE TO 유저명
GRANT CREATE TRIGGER TO 유저명
GRANT CREATE TYPE TO 유저명
GRANT CREATE VIEW TO 유저명
GRANT
CREATE SESSION
,CREATE TABLE
,CREATE SEQUENCE
,CREATE VIEW
TO 유저명;
생성한 USER로 ORACLE에 접속하기
sqlplus nextree/nextree
계정 삭제하기
drop user 사용자계정 cascade;
'Oracle > Administoration' 카테고리의 다른 글
tablespace에 속한 table 조회(owner) (0) | 2015.01.15 |
---|---|
No archive mod에서 archive mode 변경하기 (0) | 2014.11.04 |
SGA size cannot be greater than maximum shared memory segment size (0) 에러 (0) | 2014.10.31 |
oracle dbca [ora-00119] invalid specification for system parameter local_listener 에러 (0) | 2014.10.31 |
clonedb를 이용해서 dblink 하기 (0) | 2014.10.31 |
dblink란
같은 host상의 1)클라이언트db와 2)서버db를 별명(alias)을 통해 두 db간의 다리를 만들어주는 기술
oracle dblink로 할수 있는건
서로 다른 컴퓨터로 export , import 명령어를 사용해서 옮기지만 dblink를 걸어주면 명령어만으로 쉽게 서버간 데이터이동을 할수있다.
그리고 backup & recovery 할때도 엄청 요긴하게 쓰이는 기술이니 알아두면 나중에 발목잡힐 일이 없다.
처음 리눅스 os를 깔고 oracle을 설치하면 리스너라는(listener.ora)파일이 없을것이다.
oracle 11g 기준으로 경로는 /app/oracle/product/11g/bin/에 있다.
cd /app/oracle/product/11g/bin/ 들어가서
터미널에
[oracle@dbserver ~ bin]$ ./netca 라고 치면 설치가능하다.
만약에 한글이 깨져보인다면 설치취소를 누르고
export LACG=C 명령어를 터미널에 쳐주고 다시 netca를 실행시켜주자.
*netca를 이용하지 않아도 vi로 해당위치의 파일을 만들어주고 내용을 입력해줘도 가능하다.
vi /app/oracle/product/11g/network/admin/listener.ora
vi /app/oracle/product/11g/network/admin/tnsnames.ora 이런식으로 새파일을 만들어 입력가능함
/app/oracle/product/11/network/admin/listener.ora를 열어보면
------------------------------------------------------------------------------------------------
# listener.ora Network Configuration File: /app/oracle/product/11g/network/admin/listener.ora
# Generated by Oracle configuration tools.
SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(SID_NAME = testdb)
(ORACLE_HOME = /app/oracle/product/11g)
(PROGRAM = extproc)
)
)
LISTENER =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = dbserver)(PORT = 1521))
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC0))
)
)
-------------------------------------------------------------------------------------------------
위에껀 기존부분이고 아래 listener2 부분을 기존내용 밑에 추가해주면 된다.(* 괄호주의)
-------------------------------------------------------------------------------------------------
LISTENER2 =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = dbserver)(PORT = 1522))
)
)
SID_LIST_LISTENER2 =
(SID_LIST =
(SID_DESC =
(SID_NAME = testdb2)
(ORACLE_HOME = /app/oracle/product/11g)
)
)
-------------------------------------------------------------------------------------------------
*참고로 HOST부분에 네임으로 적으려면 /etc/hosts에 아이피와 네임이 같이 적혀있어야한다.
vi를 열어서 살펴보자.
vi /etc/hosts
-------------------------------------------------------------------------------------------------
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
192.168.24.136 dbserver dbserver
-------------------------------------------------------------------------------------------------
빨간색부분의 아이피와 옆에 리눅스를 설치했던 네임을 적어주면 된다. 그리고 :wq! 종료
그리고 vi /app/oracle/product/11g/network/admin/tnsnames.ora를 열어보면
-------------------------------------------------------------------------------------------------
TESTDB =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.24.136)(PORT = 1521))
)
(CONNECT_DATA =
(SERVICE_NAME = testdb)
)
)
--------------------------------------------------------------------------------------------------
위의내용은 기존내용이고 이 부분아래서부터 밑의 clonedb를 추가해주자
--------------------------------------------------------------------------------------------------
clonedb =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.24.136)(PORT = 1522)) -<포트번호는 listener와 동일한 포트로
)
(CONNECT_DATA =
(SERVICE_NAME = testdb2) -<clonedb의 네임적어주셔야 합니다.
)
)
--------------------------------------------------------------------------------------------------
*중요한 몇가지
1.listener와 tnsnames의 본 클라이언트db(testdb), 서버db(testdb2)의 port 같은 서버끼리 똑같아야 한다.
2.분명히 clonedb(testdb2)안만들고 listener와 tnsnames만 건드시는 분들 분명히 계십니다~
다른서버가 분명히 하나 더 있어야 가능한 기술이니까 숙지하세요~
3.이건 주관적인건데 listener의 host는 아이피로 통일하거나 네임으로 통일하거나 같아야합니다
tnsnames.ora도 마찬가지로 네임으로 통일할려면 통일하고 안할려면 둘다 아이피로 적어주세요.
모두 :wq! 저장하고 나와서 리스너 명령어로 stop,start,status등 실행되는지 전부 확인해볼수 있습니다.
[oracle@dbserver ~]$lsnrctl -<리스너 접속명령어 확인을 누르면
--------------------------------------------------------------------------------------------------
LSNRCTL for Linux: Version 11.2.0.1.0 - Production on 16-JUL-2014 14:38:53
Copyright (c) 1991, 2009, Oracle. All rights reserved.
Welcome to LSNRCTL, type "help" for information.
LSNRCTL>
--------------------------------------------------------------------------------------------------
접속되었고 몇가지 명령어를 나열해 보자면 보통은
status listener(testdb꺼) ,status listener2(clonedb testdb2꺼) 이 명령어는 현재 리스너의 현재상태를 출력해주는 명령어다
그외에 멈추는 명령어 stop listener , 다시 재동가하는 명령어 start lestener 요 3가지만 알아도 많이 배운상태다 이미.
내용이 길어지기 때문에 현제 clonedb의 testdb만 정상적으로 재가동되는 결과 출력물만 기재하겠다.
LISTENER> 에서 나갈려면 EXIT 명령어를 써주면 나갈수가 있다.
제대로 작동되는지 확인해볼려면
[oracle@dbserver ~]#tnsping clonedb(testdb2용임)
--------------------------------------------------------------------------------------------------
TNS Ping Utility for Linux: Version 11.2.0.1.0 - Production on 16-JUL-2014 14:44:35
Copyright (c) 1997, 2009, Oracle. All rights reserved.
Used parameter files:
Used TNSNAMES adapter to resolve the alias
Attempting to contact (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)
(HOST = 192.168.24.136)(PORT = 1522))) (CONNECT_DATA = (SERVICE_NAME = testdb2)))
OK (10 msec)
-------------------------------------------------------------------------------------------------
위의 ok가 떨어졌으면 정상적으로 리스너가 작동한다는 뜻이다.
그리고 당연하겠지만 본 클라이언트(운영서버)에서 디비링크를 확인하려면 clonedb(복구서버testdb2)의 db가 켜져있어야한다.
exprot ORACLE_SID=testdb2 (클론서버로 접속)입력해주고 db를 키자. 그리고 다시 export ORACLE_SID=testdb로 실행경로를 바꿔준다.
이제 거의 tnsnames.ora와 listener.ora쪽은 건들일이 없고 본클라이언트 서버 들어가서 서로연결해줄 링크를 만들면 끝이다.
[oracle@dbserver ~]$sqlplus / as sysdba [oracle@dbserver ~]startup
명령어가 여러가지가 있는데 한번 살펴보자
<링크생성하기>
SQL>creata database link testdb02 /링크이름은 하고싶은걸로 하면된다. 2 connect to scott 3 identified by tiger /클론db와 연결할 계정과 암호 4 using 'testdb2'; /tnsnames.ora에 적어뒀던 걸로 하면된다. DATABASE LINK CREATE
이것으로 링크는 정상적으로 만들어졌고 실행해보자.
SQL> select * from scott.hwangyk@testdb02
해주면 결과가 출력이 된다. 성공적으로 링크가 됐다.
지금까지 만들었던 dblink를 조회해보는 명령어
SQL>SELECT * FROM ALL_DB_LINKS;
만들어놨던 DBLINK를 삭제하는 명령어
SQL>DROP DATABASE LINK 링크명
링크를 만들때 직접 만들수 있는 방법도 있다.
이래저래 안걸리면 직접넣기
SQL>CREATE DATABASE LINK 링크이름 2 CONNECT TO 아이디 IDENTIFIED BY 비번 3 USING '(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=호스트명)(PORT=1521)) (CONNECT_DATA=(SERVICE_NAME=SID)))';
'Oracle > Administoration' 카테고리의 다른 글
tablespace에 속한 table 조회(owner) (0) | 2015.01.15 |
---|---|
No archive mod에서 archive mode 변경하기 (0) | 2014.11.04 |
SGA size cannot be greater than maximum shared memory segment size (0) 에러 (0) | 2014.10.31 |
oracle dbca [ora-00119] invalid specification for system parameter local_listener 에러 (0) | 2014.10.31 |
오라클 사용자 권한생성 및 권한주기 (0) | 2014.10.31 |