버그를 피하자! (Novell SUSE Linux에만 해당)
SLES8 및 SLES9 운영체제에는 /etc/services에 예약된 포트 설정으로 인해 Oracle Enterprise Manager 10g 의 설치가 실패하는 버그가 존재합니다. OEM DBConsole은 포트 1830을 필요로 하며, SUSE 환경에는 이 포트가 이미 /etc/services에 예약되어 있습니다. 이 버그에 대한 문서는 MetaLink(bug# 3513603)에서 확인하실 수 있습니다.
설치 과정에서의 문제를 예방하기 위해, Oracle Database 10g 소프트웨어를 설치하기 전에 root로 로그인하여 /etc/services 파일의 포트 1830~1849 부분을 코멘트 처리합니다. (변경 내용이 확실히 반영되도록 하기 위해 서버를 리부팅하는 것이 바람직합니다.)
oracle 계정을 위한 환경변수
오라클 제품을 사용하기 위해서 몇 가지 환경변수의 설정이 필요합니다. 데이타베이스 서버에서 설정해야 하는 환경변수가 아래와 같습니다:
ORACLE_BASE
ORACLE_HOME
ORACLE_SID
PATH
하나의 서버에 여러 가지의 오라클 제품 또는 데이타베이스를 운영하는 경우에는, ORACLE_HOME, ORACLE_SID, PATH 변수를 변경해야 합니다. ORACLE_BASE 변수는 변경되어서는 안되며, 변경이 필요한 경우 로그인 프로파일에서 설정해야 합니다. 오라클은 환경변수의 설정을 위한 유틸리티(oraenv)를 제공하고 있습니다.
ORACLE_BASE 변수를 로그인 프로파일에 추가하기 위해, oracle 계정으로 로그인한 뒤 (bash 또는 ksh을 사용하는 경우) bash_profile 또는 .profile 파일에 아래 라인을 추가합니다:
ORACLE_BASE=/u01/app/oracle; export ORACLE_BASE
또는 (csh을 사용하는 경우) .login 파일에 아래 라인을 추가합니다:
setenv ORACLE_BASE /u01/app/oracle
변경 내역은 oracle 계정으로 다시 로그인하는 시점에 반영됩니다. 현재 세션의 변경 내역을 활성화하려면, 커맨드 라인에서 명령을
실행하면 됩니다.
제 III 부: 오라클의 설치 Oracle Database 10g는 OTN에서 다운로드할 수 있습니다. 오라클은 개발 및 테스트용 라이센스를 무료로 제공합니다. 하지만 기술지원은 제공되지 않으며, 운영 환경에서의 사용은 허용되지 않습니다. 상세한 라이센스 조건은 OTN에서 확인하실 수 있습니다.
먼저 Oracle Database 10g 소프트웨어의 배포본을 서버에 직접 다운로드하는 방법을 설명합니다.
로그인 UI를 통해 oracle 계정으로 로그인합니다.
Oracle Database 10g 배포본을 저장할 디렉토리를 생성합니다:
mkdir 10g _db
OTN으로부터 Oracle Database 10g 를 다운로드하기 위해, 브라우저에서 다음 URL을 입력합니다. (Mozilla를 통해서도 다운로드 가능합니다.) http://www.oracle.com/technology/software/products/database/oracle10g /htdocs/linuxsoft.html. Eligibility Export Restrictions 페이지를 작성하고 OTN License Agreement를 숙지합니다. 조건에 동의하는 경우, I Accept를 클릭합니다.
ship.db.cpio.gz 링크를 클릭하고, 위에서 생성한 디렉토리(10g _db)에 파일을 저장합니다. OTN에 로그인하지 않은 경우에는,
로그인이 필요하다는 프롬프트가 뜨게 됩니다.
파일의 압축을 풉니다:
cd 10g _dbgunzip ship.db.cpio.gzcpio -idmv < ship.db.cpio
소프트웨어의 설치
오라클 계정을 사용하여 로그인 합니다.
database name(ORACLE_SID)을 입력합니다. 일반적으로 5 문자 이하의 이름이 사용되며, 여기에서는 demo1이라는 이름을 사용하기로 합니다.
환경변수를 설정합니다:
- Bourne and Korn shells
ORACLE_BASE=/u01/app/oracle; export ORACLE_BASEORACLE_SID=demo1; export ORACLE_SID
RHEL4 / SLES9의 경우: LD_ASSUME_KERNEL=2.4.19; export LD_ASSUME_KERNEL
- C shell
setenv ORACLE_BASE /u01/app/oraclesetenv ORACLE_SID demo1
RHEL4 / SLES9의 경우: setenv LD_ASSUME_KERNEL 2.4.19
RHEL4 관련 주의 사항: Oracle Universal Installer는 설치 전에 운영체제의 버전을 점검하고 지원 가능 여부를 검증합니다.
Oracle Database 10g 10.1.0.3의 Installer는 RHEL4가 지원 가능한 버전임을 인식하지 못합니다. 이 경우, runInstaller를 실행하기 전에
아래 작업을 수행해야 합니다. cp /etc/redhat-release /etc/redhat-release.origcat > /etc/redhat-release << EOFRed Hat Enterprise Linux AS release 3 (Taroon)EOF
Oracle Database 10g 소프트웨어의 압축을 푼 디렉토리로 이동합니다. Ex:$ cd $HOME/10g _db
Disk1 디렉토리로 이동합니다.
Ex:$ cd Disk1
Oracle Universal Installer를 시작합니다.
$ ./runInstaller
- Welcome
- Specify Inventory Directory and Credentials
- 이 가이드의 설명을 그대로 따라 했다면, 디폴트 설정을 사용해도 무방합니다. 그렇지 않은 경우, 올바른 inventory directory를 입력합니다.
- operating system group name으로 oinstall을 입력합니다.
- Oracle을 서버에 처음 설치한 경우라면, orainstRoot.sh 스크립트를 root 계정에서 실행해야 한다는 팝업 창이 표시됩니다.
root로 로그인한 뒤, 팝업 창에 명시된 디렉토리로 이동하여 스크립트를 실행합니다. - Specify File Locations
- 이 가이드의 설명을 그대로 따라 했다면, 디폴트 설정을 사용해도 무방합니다.
그렇지 않은 경우, Source 경로와 Destination 경로가 올바르게 설정되었는지 확인합니다.
- Select Installation Type
- 디폴트 설정(Enterprise Edition)을 그대로 사용합니다.
- Product-specific Prerequisite Checks
- 이 가이드의 설명을 그대로 따라 했다면, 점검 작업에서 아무런 문제가 발생되지 않을 것입니다. 점검 작업이 실패한 경우,
다음 단계로 진행하기 전에 문제의 원인을 확인합니다. (RHEL4 운영체제에서 binutils, gcc, openmotif에 대한 점검작업이 실패한 경우에는 경고 메시지를 무시하고 다음 단계로 진행합니다. SLES9에서 openmotif에 대한 점검작업이 실패한 경우에는 경고 메시지를 무시하고 다음 단계로 진행합니다.)
- Select Database Configuration
- 디폴트 설정(Create a starter database, General Purpose)을 그대로 사용합니다.
- Specify Database Configuration Options
- 데이타베이스의 Global Database Name을 입력합니다. ORACLE_SID와 서버의 domain name을 연결하여 명명해야 합니다. (예를 들어 ORACLE_SID가 demo1이고 domain name이 orademo.org라면, Global Database Name은 demo1.orademo.org가 됩니다.)
- Global Database Name를 입력하면, SID는 자동으로 입력됩니다.
- 디폴트 Database Character Set을 그대로 사용합니다.
- Create database with sample schemas을 선택합니다.
- Select Database Management Option
- Use Database Control for Database Management을 사용합니다.
- Specify Database File Storage Option
- File System을 선택하고, 데이타베이스가 사용할 경로를 입력합니다 (예: /u02/oradata)
- Specify Backup and Recovery Options
- Do not enable Automated backups를 선택합니다.
- Specify Database Schema Passwords
- Use the same password for all the accounts를 선택합니다.
- Summary
- Install
- 오라클 소프트웨어의 설치가 진행되는 과정에 여러 단계의 스크린이 표시됩니다.
- 설치 과정의 마지막 단계에서 팝업 창을 통해 설정 정보가 표시됩니다. Enterprise Manager URL을 확인한 후 OK를 클릭하여 창을 닫습니다.
- "Setup Privileges" 팝업 창을 통해 root 계정으로 configuration script를 실행해야 한다는 메시지가 표시됩니다.
root로 로그인하여 팝업 창에 명시된 디렉토리로 이동한 뒤 root.sh 스크립트를 실행합니다. 스크립트에서 local bin directory의 위치를 묻는 프롬프트가 뜨면, 디폴트 값을 승인하고 Enter를 누릅니다. 스크립트의 실행이 완료되면 Setup Privileges 창으로 돌아가 OK를 클릭합니다 (아래 그림 참조.)
- End of Installation
- 요약 화면에 표시된 URL을 확인하고 Exit를 클릭합니다.
- 축하합니다! 이것으로 Oracle 10g 데이타베이스의 설치가 완료되었습니다.
|
제 IV 부: 스토리지의 설정 제 3부에서 생성한 데이타베이스는 하나의 파일시스템(/u02/oradata)만을 사용합니다. 하지만 오라클 데이타베이스의 실제 스토리지 설정에는 여러 가지 방법이 가능합니다.
제 4부에서는 데이타베이스의 디스크 스토리지를 설정하는 방법에 대해 설명합니다. 특히 파일시스템을 추가하는 구성과 Automatic Storage Management (ASM)을 중점적으로 설명하게 될 것입니다. 로우 디바이스(raw device)를 사용한 구성과 Oracle Cluster File System (OCFS)에 대한 설명은 향후 작성될 Oracle Real Application Clusters 가이드 문서에 포함될 예정입니다.
파일시스템
파일시스템은 오라클 데이타베이스의 데이타 파일, 리두 로그, 컨트롤 파일을 저장하는 가장 일반적인 방법으로 활용됩니다.
파일시스템은 구현이 쉽고 써드 파티 소프트웨어를 이용한 관리가 불필요하다는 장점을 제공합니다.
대부분의 경우, 파일시스템은 Linux 운영체제의 최초 설치과정에서 생성됩니다. 하지만 설치가 완료된 이후에 새로운 파일시스템을
생성해야 하는 상황(예: 새로운 디스크 드라이브를 설치하는 경우)이 종종 발생하기도 합니다.
이 섹션에서는 새로운 파일 시스템을 생성하고, 오라클 데이타베이스에서 이를 활용하는 방법을 설명합니다. (별도로 명시되지 않는 한, 모든 명령은 root 계정으로 실행하는 것으로 가정합니다.)
디스크 파티셔닝
파일 시스템을 생성하려면 빈 디스크 파티션이 필요합니다. 이미 빈 디스크 파티션이 구성되어 있다면, 아래 과정을 생략해도 무방합니다.
아래 내용은 Linux 파일시스템을 위한 새로운 파티션을 생성하는 방법을 설명하고 있습니다. (주의: 디스크 파티셔닝 과정에서의 실수로 인해 하드 디스크의 모든 데이타가 삭제될 수도 있습니다.)
아래 예제에서는 /dev/sdb(파티션이 구성되지 않은 빈 SCSI 디스크)를 사용하여 전체 디스크(36 GB)를 하나의 파티션으로 설정합니다.
Ex:# fdisk /dev/sdbDevice contains neither a valid DOS partition table, nor Sun, SGI or OSF disklabelBuilding a new DOS disklabel. Changes will remain in memory only,until you decide to write them. After that, of course, the previouscontent won't be recoverable.The number of cylinders for this disk is set to 4427.There is nothing wrong with that, but this is larger than 1024,and could in certain setups cause problems with:1) software that runs at boot time (e.g., old versions of LILO)2) booting and partitioning software from other OSs (e.g., DOS FDISK, OS/2 FDISK)Command (m for help): pDisk /dev/sdb: 255 heads, 63 sectors, 4427 cylindersUnits = cylinders of 16065 * 512 bytes Device Boot Start End Blocks Id SystemCommand (m for help): nCommand action e extended p primary partition (1-4)pPartition number (1-4): 1First cylinder (1-4427, default 1):Using default value 1Last cylinder or +size or +sizeM or +sizeK (1-4427, default 4427):Using default value 4427Command (m for help): wThe partition table has been altered!Calling ioctl() to re-read partition table.WARNING: If you have created or modified any DOS 6.xpartitions, please see the fdisk manual page for additionalinformation.Syncing disks.
생성된 파티션을 확인합니다:
Ex:# fdisk /dev/sdb The number of cylinders for this disk is set to 4427.There is nothing wrong with that, but this is larger than 1024,and could in certain setups cause problems with:1) software that runs at boot time (e.g., old versions of LILO)2) booting and partitioning software from other OSs (e.g., DOS FDISK, OS/2 FDISK)Command (m for help): pDisk /dev/sdb: 255 heads, 63 sectors, 4427 cylindersUnits = cylinders of 16065 * 512 bytes Device Boot Start End Blocks Id System/dev/sdb1 1 4427 35559846 83 LinuxCommand (m for help): q
파일시스템의 생성
ext3를 사용하여 새로운 파일시스템을 생성합니다. 다른 파일시스템도 정상적으로 동작하지만, ext3의 경우 시스템 크래시가 발생했을 때 가장 빠른 복구가 가능하다는 장점이 있습니다.
Ex:# mke2fs -j /dev/sdb1mke2fs 1.26 (3-Feb-2002)Filesystem label=OS type: LinuxBlock size=4096 (log=2)Fragment size=4096 (log=2)4447744 inodes, 8889961 blocks444498 blocks (5.00%) reserved for the super userFirst data block=0272 block groups32768 blocks per group, 32768 fragments per group16352 inodes per groupSuperblock backups stored on blocks: 32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208, 4096000, 7962624Writing inode tables: doneCreating journal (8192 blocks): doneWriting superblocks and filesystem accounting information: doneThis filesystem will be automatically checked every 23 mounts or180 days, whichever comes first. Use tune2fs -c or -i to override.
마운트 포인트의 생성
파일 시스템에는 마운트 포인트(mount point)가 필요합니다. 마운트 포인트란 파일시스템을 시스템의 디렉토리 트리에 “연결(attach)”하는데 사용되는 빈 디렉토리를 의미합니다. 마운트 포인트는 Oracle Flexible Architecture (OFA) 표준에 따라 명명되어야 합니다.
OFA 표준에 대한 자세한 설명은 Oracle 10g Database Installation Guide의 Appendix D를 참고하시기 바랍니다 .
이미 1 부에서 “/u01”, “/u02”를 디렉토리 명으로 사용했으므로, 여기에서는 “/u03”을 사용하기로 합니다.
Ex:# mkdir /u03
새로운 파일시스템을 /etc/fstab에 추가
시스템이 부팅될 때 파일시스템이 자동으로 마운트 되도록 하려면, /etc/fstab 파일에 파일시스템과 마운트 포인트에 대한 설정 항목을
추가해야 합니다. 텍스트 편집기를 사용하여 /etc/fstab 파일에 아래와 같이 라인을 추가합니다.
/dev/sdb1 /u03 ext3 defaults 1 1
파일시스템의 마운트
마운트된 파일시스템은 사용이 가능합니다. 파일시스템이 마운트 되기 전에는 파일의 저장이 불가능합니다. 아래 명령을 사용하여
파일시스템을 마운트하고, 사용가능 여부를 확인합니다.
mount /u03df -h /u03Ex:# mount /u03# df -h /u03Filesystem Size Used Avail Use% Mounted on/dev/sdb1 33G 33M 31G 1% /u03
Oracle 디렉토리의 생성 및 권한 설정
이제 오라클 파일을 저장할 디렉토리를 생성할 차례입니다. 디렉토리 명은 OFA 표준 명명법을 따르며, ORACLE_SID=demo1의 설정을
사용합니다.
mkdir -p /u03/oradata/demo1chown -R oracle:oinstall /u03/oradatachmod -R 775 /u03/oradata
파일시스템에 테이블스페이스 생성
이제 파일시스템을 사용할 준비가 완료되었습니다. 다음으로 파일시스템에 데이타베이스 오브젝트를 저장할 테이블스페이스를 생성합니다. SYSTEM 계정으로 데이타베이스에 연결한 뒤, CREATE TABLESPACE 구문을 실행합니다.
Ex:$ sqlplusSQL*Plus: Release 10.1.0.2.0 - Production on Sun Jun 13 15:01:08 2004Copyright (c) 1982, 2004, Oracle. All rights reserved.Enter user-name: systemEnter password:Connected to:Oracle Database 10g Enterprise Edition Release 10.1.0.2.0 - ProductionWith the Partitioning, OLAP and Data Mining optionsSQL> create tablespace data1 2 datafile '/u03/oradata/demo1/data1_01.dbf' size 100M 3 extent management local 4 segment space management auto;Tablespace created.
이제 새로운 테이블스페이스에 테이블, 인덱스 등의 데이타베이스 오브젝트를 저장할 수 있습니다.
Ex:SQL> create table demotab (id number(5) not null primary key, 2 name varchar2(50) not null, 3 amount number(9,2)) 4 tablespace data1; Table created.
Automatic Storage Management (ASM) 이제 마지막으로 가장 흥미로운 부분에 대해 설명할 차례입니다. ASM은 Oracle Database 10g 에 추가된 새로운 기능으로, 플랫폼 독립적인 환경에서 파일시스템, 논리적 볼륨 관리자, 소프트웨어 RAID 등의 서비스를 제공합니다. ASM을 이용하여 디스크 스트라이핑(striping) 또는 미러링(mirroring)을 구성하거나, 데이타베이스가 운영 중인 상태에서 디스크를 추가하거나 제거할 수 있으며, 성능병목 요소(hot spot)를 제거하기 위해 자동으로 I/O 로드 밸런싱을 수행하는 것이 가능합니다. ASM은 direct I/O와 asynchronous I/O를 지원하며, Oracle9i에서 처음 구현된 Oracle Data Manager API(단순화된 I/O system call interface)를 통해 구현되었습니다.
AASM은 범용적인 파일시스템이 아니며, 오라클 데이타 파일, 리두 로그, 컨트롤 파일이 저장된 환경에서만 사용 가능합니다.
ASM의 파일의 생성/명명 작업은 데이타베이스(Oracle Managed Files 기능)에 의해 자동 수행될 수도 있고, DBA에 의해 수작업으로
수행될 수도 있습니다. ASM에 저장된 파일은 운영체제에서 접근할 수 없으며, ASM 파일의 백업/복구를 수행하려면 RMAN(Recovery Manager)을 사용해야 합니다.
ASM은 다른 데이타베이스가 접근 가능한 별도의 오라클 인스턴스에 구현됩니다. Linux에서 ASM을 사용하려면 OCSSD 서비스(Oracle Universal Installer에 의해 디폴트로 설치됩니다)가 실행되고 있어야 합니다. ASM의 메모리 요구사항은 매우 낮으며, 대부분의 시스템
환경에서 64 MB만을 사용합니다.
ASM의 설치
Linux 플랫폼에서 ASM을 구성하는 경우, 로우 디바이스(raw device)를 사용하거나, ASMLib 인터페이스를 통해 관리되는 디바이스를
사용할 수 있습니다. 오라클은 사용편의성 및 성능을 고려했을 때 로우 디바이스 대신 ASMLib을 사용하는 것을 권장합니다. ASMLib은 OTN에서 무료로 다운로드 가능합니다. 이 섹션에서는 ASMLib을 사용하여 단순한 형태의 ASM 인스턴스를 설정하고 ASM을 사용한
데이타베이스를 구현하는 방법을 설명합니다.
ASMLib 버전의 확인
ASMLib은 세 가지 Linux 패키지의 형태로 제공됩니다:
- oracleasmlib - ASM 라이브러리
- oracleasm-support - ASMLib 관리 유틸리티
- oracleasm - ASM 라이브러리를 위한 커널 모듈
오라클은 각각의 Linux 배포판 별로 서로 다른 ASMLib 패키지를 제공합니다. 또 운영체제의 각 커널 버전 별로 서로 다른 oracleasm
패키지가 사용됩니다. 어떤 패키지를 사용해야 하는지 확인하기 위해 아래에 설명된 것과 같이 작업을 수행합니다. 먼저, 현재 사용 중인 커널 버전을 확인하기 위해 root 계정으로 로그인하고 아래 명령을 실행합니다:
uname -rmEx:# uname -rm2.4.9-e.27smp i686
위 실행 예의 경우, Intel i686 CPU 기반 SMP (multiprocessor) 시스템을 위한 2.4.9 커널 버전이 사용되고 있음을 확인할 수 있습니다.
ASMLib 패키지를 적용하기 위해 아래와 같이 작업을 수행합니다:
- 웹 브라우저에서 다음 URL을 입력합니다: http://www.oracle.com/technology/tech/linux/asmlib
- 사용 중인 Linux 버전의 링크를 클릭합니다.
- 사용 중인 Linux 버전의 oracleasmlib, oracleasm-support 패키지를 다운로드 합니다.
- 사용 중인 커널 버전의 oracleasm 패키지를 다운로드합니다.
위 실행 예의 경우 oracleasm-2.4.9-e-smp-1.0.0-1.i686.rpm 패키지를 다운로드해야 합니다. 다음으로, root 계정으로 아래 명령을 실행하여 패키지를 설치합니다:
rpm -Uvh oracleasm-kernel_version-asmlib_version.cpu_type.rpm \oracleasmlib-asmlib_version.cpu_type.rpm \oracleasm-support-asmlib_version.cpu_type.rpmEx:# rpm -Uvh \> oracleasm-2.4.9-e-smp-1.0.0-1.i686.rpm \> oracleasmlib-1.0.0-1.i386.rpm \> oracleasm-support-1.0.0-1.i386.rpmPreparing... #################################### [100%] 1:oracleasm-support #################################### [ 33%] 2:oracleasm-2.4.9-e-smp #################################### [ 66%]Linking module oracleasm.o into the module path [ OK ] 3:oracleasmlib #################################### [100%]
ASMLib의 설정
ASMLib을 사용하기 전에, 먼저 구성 스크립트를 실행하여 드라이버를 설정해야 합니다. 아래에 설명된 것과 같이 명령을 실행합니다.
# /etc/init.d/oracleasm configureConfiguring the Oracle ASM library driver.This will configure the on-boot properties of the Oracle ASM librarydriver. The following questions will determine whether the driver isloaded on boot and what permissions it will have. The current valueswill be shown in brackets ('[]'). Hitting without typing ananswer will keep that current value. Ctrl-C will abort.Default user to own the driver interface []: oracleDefault group to own the driver interface []: dbaStart Oracle ASM library driver on boot (y/n) [n]: yFix permissions of Oracle ASM disks on boot (y/n) [y]: yWriting Oracle ASM library driver configuration [ OK ]Creating /dev/oracleasm mount point [ OK ]Loading module "oracleasm" [ OK ]Mounting ASMlib driver filesystem [ OK ]Scanning system for ASM disks [ OK ]
ASMLib 드라이버를 아래와 같이 활성화합니다.
# /etc/init.d/oracleasm enableWriting Oracle ASM library driver configuration [ OK ]Scanning system for ASM disks [ OK ]
ASM 디스크의 구성
다음으로, ASM 드라이버가 사용할 디스크를 설정합니다. 여기에서는 파티션도 설정되지 않은 빈 디스크를 사용하고 있음에 주의하시기
바랍니다. ASM에 디스크 파티션을 사용하는 것도 가능하지만 권장되지는 않습니다.
root 계정으로 아래 명령을 실행하여, ASMLib에서 사용할 디스크를 설정합니다:
/etc/init.d/oracleasm createdisk DISK_NAME device_name
(주의: DISK_NAME은 대문자로 입력합니다. 소문자를 사용하는 경우 ASM 인스턴스에서 디스크를 인식하지 못하는 버그가 존재합니다.)
Ex:# /etc/init.d/oracleasm createdisk VOL1 /dev/sdbMarking disk "/dev/sdb" as an ASM disk [ OK ]# /etc/init.d/oracleasm createdisk VOL2 /dev/sdcMarking disk "/dev/sdc" as an ASM disk [ OK ]# /etc/init.d/oracleasm createdisk VOL3 /dev/sddMarking disk "/dev/sdd" as an ASM disk [ OK ]# /etc/init.d/oracleasm createdisk VOL4 /dev/sdfMarking disk "/dev/sdf" as an ASM disk [ OK ]# /etc/init.d/oracleasm createdisk VOL5 /dev/sdgMarking disk "/dev/sdg" as an ASM disk [ OK ]# /etc/init.d/oracleasm createdisk VOL6 /dev/sdhMarking disk "/dev/sdh" as an ASM disk [ OK ]
TASMLib에서 사용하도록 설정된 디스크의 목록을 확인하는 예가 아래와 같습니다.
# /etc/init.d/oracleasm listdisksVOL1VOL2VOL3VOL4VOL5VOL6
이것으로 ASMLib의 설치 및 디스크 설정이 완료되었습니다. 이제 ASM 인스턴스를 생성하고, ASM을 사용하는 데이타베이스를 구현할 수 있습니다. Data Base Configuration Assistant (DBCA)을 이용하면 이 작업을 간단하게 수행할 수 있습니다.
oracle 계정으로 로그인하고 DBCA를 실행합니다:
$ dbca
- Welcome
- Operations
- Create a Database를 선택합니다.
- Database Templates
- Database Identification
- Global Database Name을 입력합니다.
- Management Options
- Configure the Database with Enterprise Manager를 선택합니다.
- Use Database Control for Database Management를 선택합니다.
- Database Credentials
- Use Same Password for All Accounts를 선택합니다.
- Storage Options
- Automatic Storage Management (ASM)를 선택합니다.
- Create ASM Instance
- 9. DBCA가 ASM 인스턴스를 생성 및 시작한다는 팝업 창이 표시됩니다.
- 10. ASM 인스턴스가 생성되는 동안 팝업 진행 창이 표시됩니다.
- ASM Disk Groups
- ASM 인스턴스가 아직 생성되지 않은 상태이므로, 사용 가능한 디스크 그룹이 없다는 메시지 창이 표시됩니다.
- Create Disk Group
- Disk Group Name
- 디스크 그룹 명(예: DATA1)을 입력합니다.
- Redundancy
- High는 데이타를 2중으로 미러링 합니다.
- Normal은 기본적인 미러링 구성입니다.
- External은 ASM의 디스크를 미러링 하지 않습니다. 이 옵션은 일반적으로 하드웨어 RAID 어레이가 구성된 경우에
사용됩니다. - Select Member Disks
- ASMLib 디스크의 위치를 수작업으로 지정해 주어야 합니다. Change Disk Discovery Path를 클릭합니다.
- 팝업 창을 통해 Disk Discovery Path를 입력합니다. 아래와 같이 Disk Discovery Path를 'ORCL:*'로 변경합니다.
- OK를 클릭합니다.
- 다시 Selected Member Disks 윈도우로 돌아갑니다. 사용할 ASMLib 디스크가 목록에 포함되었는지 확인합니다.
체크박스를 클릭하여 디스크 그룹에 사용할 디스크를 선택합니다. 작업이 완료되면 OK를 클릭합니다.
- ASM Disk Groups
- ASM Disk Groups 윈도우로 돌아갑니다. 앞 단계에서 생성한 디스크 그룹이 목록에 포함되었는지 확인합니다.
- 디스크 그룹의 체크박스를 클릭합니다. (여기에서는 하나의 디스크 그룹만을 사용하는 것으로 합니다.)
- Database File Locations
- Use Oracle-Managed Files를 선택합니다.
- 생성된 디스크 그룹에 Database Area가 설정되었는지 확인합니다. (플러스 기호로 시작됩니다. 예: “+DATA1”)
- Recovery Configuration
- Specify Flash Recovery Area를 선택합니다.
- Flash Recovery Area?Flash Recovery를 위해 사용할 ASM 디스크 그룹을 입력합니다.
- Flash Recovery Area Size?디폴트 설정(2048)을 그대로 사용합니다.
- 아카이브로그 모드를 사용하려는 경우 Enable Archiving을 선택합니다. 테스트 용도로만 사용하려는 경우라면 선택하지
않고 다음 단계로 진행합니다.
- Database Content
- Custom Script를 사용하지 않으므로 Next를 클릭합니다.
- Initialization Parameters
- Database Storage
- Creation Options
- 디폴트 설정(Create Database)을 그대로 사용하고 Finish를 클릭합니다.
- Confirmation
- Database Details 정보를 확인한 후 OK를 클릭합니다.
- DBCA가 수행할 작업 목록과 진행 상황을 표시합니다. 데이타베이스를 생성하는 작업은 하드웨어 환경에 따라 수 분에서 수
시간이 소요됩니다. - 데이타베이스 생성이 완료되었다는 메시지와 함께 요약 정보가 표시됩니다. Enterprise Manager URL을 확인한 후 Exit를
클릭합니다.
|
결론 이제 데이타베이스를 실행하고 Oracle Database 10g 가 제공하는 새로운 기능을 체험해 보기 위한 모든 준비가 완료되었습니다.
제일 먼저, 웹 인터페이스를 기반으로 전혀 새롭게 재작성된 Oracle Enterprise Manager를 확인해 보시기 바랍니다.
오라클 데이타베이스의 사용 방법에 익숙하지 않은 경우, Oracle Database 10g Concepts Guide 와 2-Day DBA 가이드 를 참고하시면 도움이 됩니다. OTN은 10g 의 활용도를 극대화하기 위한 다양한 가이드를 제공하고 있습니다.
필자는 개인적으로, Arup Nanda의 "Oracle Database 10g : DBA를 위한 20가지 기능"을 추천합니다.
부록 SQL*Plus를 이용한 데이타베이스의 접근
oracle 계정으로 Linux 시스템에 로그인하고 아래와 같이 환경 변수를 설정합니다.
Set the Oracle environment variables:
$ export ORACLE_BASE=/u01/app/oracle$ export ORACLE_SID=demo1$ export ORACLE_HOME=$ORACLE_BASE/product/10.1.0/db_1$ export PATH=$PATH:$ORACLE_HOME/bin
SQL*Plus를 실행합니다:
$ sqlplusSQL*Plus: Release 10.1.0.2.0 - Production on Sat Jun 5 16:59:21 2004Copyright (c) 1982, 2004, Oracle. All rights reserved.Enter user-name: / as sysdbaConnected to:Oracle Database 10g Enterprise Edition Release 10.1.0.2.0 - ProductionWith the Partitioning, OLAP and Data Mining optionsSQL>
Oracle Enterprise Manager 10g Database Control의 사용
웹 브라우저에서 설치과정에서 제공된 URL을 입력합니다.
Ex:
http://ds1.orademo.org:5500/em (데이타베이스에 DNS가 설정되지 않은 경우, 호스트 네임 대신 IP 주소를 입력해야 합니다.)
User Name: SYS
Password: <설치과정에서 입력한 패스워드>
Connect As: SYSDBA
을 클릭합니다
Oracle Enterprise Manager 10g Database Control의 놀라운 세계에 오신 것을 환영합니다!
Oracle Enterprise Manager Database Control의 시작 및 중단:
$ emctl start dbconsole$ emctl stop dbconsole
iSQL*Plus를 이용한 데이타베이스 접근
iSQL*Plus는 SQL*Plus의 웹 기반 버전입니다. iSQL*Plus를 사용하려면, OEM 콘솔의 Related Links 섹션에 있는 iSQL* Plus 링크를
클릭하거나, 설치 과정에서 제공된 iSQL*Plus URL을 브라우저에 입력합니다.
Ex:
http://ds1.orademo.org:5560/isqlplus (데이타베이스에 DNS가 설정되지 않은 경우, 호스트 네임 대신 IP 주소를 입력해야 합니다.)
User Name: SYSTEM
Password: <설치과정에서 입력한 패스워드>
을 클릭합니다.
Workspace 박스에 SQL 명령을 입력한 뒤 Execute를 클릭합니다.
iSQL*Plus의 시작 및 중단:
$ isqlplusctl start$ isqlplusctl stop
Listener의 시작 및 중단:
리스너(listener)는 클라이언트의 요청을 접수하고 인증 과정을 거친 후 데이타베이스 연결을 생성하는 역할을 담당합니다.
OEM과 ISQL*Plus를 사용하려면 리스너가 실행되고 있어야 합니다.
$ lsnrctl start$ lsnrctl stop
데이타베이스의 시작 및 중단:
데이타베이스를 시작/중단하는 가장 간단한 방법은 OEM 콘솔을 이용하는 것입니다. 같은 작업을 커맨드 라인에서 수행하려면 SQL*Plus에 oracle 계정으로 로그인하고 아래와 같이 실행합니다:
데이타베이스의 시작:
$ sqlplusSQL*Plus: Release 10.1.0.2.0 - Production on Sun Jun 13 22:27:48 2004Copyright (c) 1982, 2004, Oracle. All rights reserved.Enter user-name: / as sysdbaConnected to an idle instance.SQL> startupORACLE instance started.Total System Global Area 188743680 bytesFixed Size 778036 bytesVariable Size 162275532 bytesDatabase Buffers 25165824 bytesRedo Buffers 524288 bytesDatabase mounted.Database opened.SQL> exit
데이타베이스의 중단:
$ sqlplusSQL*Plus: Release 10.1.0.2.0 - Production on Sun Jun 13 22:25:55 2004Copyright (c) 1982, 2004, Oracle. All rights reserved.Enter user-name: / as sysdbaConnected to:Oracle Database 10g Enterprise Edition Release 10.1.0.2.0 - ProductionWith the Partitioning, OLAP and Data Mining optionsSQL> shutdown immediateDatabase closed.Database dismounted.ORACLE instance shut down.SQL> exit
오라클 프로세스의 목록 조회:
$ ps ?fuoracle
ocssd.bin 프로세스란 무엇인가?
Oracle Cluster Synchronization Services (OCSSD)는 ASM을 사용하는 RAC 및 단일 인스턴스 데이타베이스에서 요구되는 서비스입니다. OCCSD는 디폴트로 설치되며, 매우 적은 시스템 리소스만을 사용합니다. OCCSD는 /etc/inittab을 통해 설정 가능합니다.
이 프로세스는 시스템이 부팅될 때마다 자동으로 시작됩니다. 오라클은 ASM을 사용하지 않는 경우라도 OCCSD를 비활성화하는 것을
권장하지 않습니다.
댓글을 달아 주세요