오라클 (데이터베이스)
오라클(Oracle)은 미국 오라클 회사가 만든 관계형 데이터베이스 관리 시스템(Relational DataBase Management System; RDBMS)이다. 오라클은 마이에스큐엘(MySQL) 또는 엠에스에스큐엘(MS-SQL)과 마찬가지로 구조화 질의어인 에스큐엘(SQL) 기반으로 되어 있다.
목차
개요
오라클은 현재 유닉스 체제에서 가장 많이 사용된다. 데이터베이스 관리 시스템(DataBase Management System; DBMS)은 데이터를 효과적으로 이용할 수 있도록 정리하고 보관하기 위한 기본 소프트웨어이다. 그리고 전사적 자원 관리(Enterprise resource planning; ERP), 공급망 관리(Supply Chain Management; SCM), 고객 관계 관리(Customer Relationship Management; CRM) 소프트웨어도 개발한다. 관계형 데이터베이스 관리 시스템제품을 필두로 전 세계 데이터베이스 관리 시스템 시장 점유율 1위를 기록하고 있으며 소프트웨어, 서버, 네트워크, 스토리지 등의 부문에서 뛰어난 기술력을 보유하고 있다.[1]
오라클 데이터베이스
종류
- 퍼스널 에디션(Personal Edition)
- 개인에게 적합한 DB이다.
- DB 하나당 최대 하나의 NUP를 제공한다.
- 인터넷 / 네트워크 사용이 없어야만 가능한 제품이다.
- 교육용, 개발용으로 사용한다.
- 만약 Desktop장비에 또 다른 Device가 장착 될 경우에는 SE2 이상 에디션을 구매해야 한다.
- 익스프레스 에디션(Express Edition)
- 개발 용도로 무료 사용하여도 문제가 되지 않음, 단 그 목적이 상업적인 목적에는 사용불가
- 물리적 하드웨어의 제한이 있음 - 단일 인스턴스로 제한
- 여러 CPU서버에 설치는 될수 있으나, 하나의 프로세서(CPU)에서 실행된다. 사용자는 데이터를 11GB까지 사용할 수 있다.
- 라이선스 무료 사용 범위
- 프로그램을 사용하기 위해서는 다음과 같은 비 독점적, 양도 불가한 제한적인 라이선스 부여
- 개발, 프로토타임, 내부 데이터 처리에 대한 응용프로그램 실행 목적
- 귀하의 응용프로그램과 프로그램을 배포가능
- 데모 및 교육용 프로그램 사용
- 본 계약조건에 동의하는 조건으로 복사 제공
용어
- 라이선스 마이그레이션(License Migration)
- NUP(Named user plus) -> PL(processor License)로 옮기는 작업이다.
- 기존의 소프트웨어 라이선스를 수정하는 것이다.
- 플랫폼 간 자유자재로 소프트웨어 이동이 가능하다.
- 네트워크로 연결된 환경에서 실행할 수 있다.
- 새로운 라이선스와 새로운 주문서를 받게 되며 추가 라이선스 및 기술 지원 요금이 발생할 수 있다
- 신규 요금은 신규 라이선스 및 지원으로부터 얻은 추가 가치에 대한 비용이다.
- 라이선스 업그레이드(License Upgrade)
- Ex) DBSE -> DBEE 등으로 변경 가능하다.
- 원래의 라이센스로 지불한 순 라이센스 요금에 대한 크레딧을 받아, 업그레이드된 라이센스에 지불할 순 라이센스 요금을 이 크레딧으로 일부 또는 전액을 충당할 수 있다.
- 추가 업그레이드 비용이 부가될 수 있다.
- 서포트는 고객의 기존 지원 구성과 업그레이드된 라이센스에 대한 현행 지원 가격을 기준으로 계산한다.
- 라이선스 어사인먼트(License Assignment)
- 회사에서 회사로 라이선스를 옮기는 작업이며, 서포트 계약이 되어있을 경우만 가능하다.
- 2위의 사항은 라이선스 및 유지보수를 구매한 고객의 경우에 해당한다.
- 유지보수를 구매한 고객이 오라클 최신 기술의 혜택을 누릴 수 있도록 지원하는 것이다.
- 대부분의 License Assignment는 라이선스 영업대표가 진행한다.
항목
오라클을 설치하게 되면 아래와 같은 서비스들이 생기게 된다. 처음 서비스 중 중요 서비스들은 자동으로 시작하게 되어 있는데 그럴 경우 PC 상에서 부팅이 오래 걸리게 된다. 따라서 아래의 서비스들을 모두 수동으로 설정하여 필요하면 시작할 수 있도록 하는 것이 좋다. 윈도우7기준 아래 서비스를 하러 가기 위해서는 '제어판->시스템 및 보안->관리 도구->서비스'로 이동하면 된다.
- Oracle ORCL VSS Writer Service : Oracle VSS(Volume Shadow Copy Service)로 백업과 복원을 위한 서비스
- OracleDBConsoleorcl : Oracle Enterprise Manager Database Control을 위한 서비스
- OracleJobSchedulerORCL : Oracle Job Schedule을 위한 서비스
- OracleMTSRecoveryService : MTS(Microsoft Transaction Server)의 Recovery Service
- OracleOraDb11g_home1ClrAgent : .net으로 확장하기 위한 Oracle Service
- OracleOraDb11g_home1TNSListener : 원격상의 Client에게 Oracle Service를 제공하기 위한 TNSListener (필수 시작)
- OracleServiceORCL : Database를 시작하기 위한 필수 Service (필수 시작)[2]
작동 방법
윈도우
윈도우 서비스 목록에서 보면 아래의 두 이름을 가진 서비스가 있는데, 이 서비스를 시작/중지하면 된다.
- OracleOraDb10g_home1TNSListener → 오라클 리스너
- OracleService"DB명" → 오라클 DB (TESTDB : DB 명)
이 두 프로그램을 시작하고 중지하면 된다. 이 두 프로그램을 시작하고 중지하려면 매번 윈도우 서비스를 열어야 하는 불편함이 있는데, 배치파일을 만들어서 사용하면 간편하다.
- 오라클 시작 (Start_TestDB.bat)
net start OracleOraDb10g_home1TNSListener net start OracleServiceTestDB
- 오라클 중지 (Stop_TestDB.bat)
net stop OracleOraDb10g_home1TNSListener net stop OracleServiceTestDB
리눅스
명령어
오라클 DB는 인스턴스와 리스너를 따로 시작하게 되어 있다.
- 인스턴스 시작/중지
- sqlplus를 시작하여 나오는 SQL> 프롬프트에서 인스턴스를 시작/중지할 수 있다.
sqlplus '/as sysdba'
startup shutdown
- 리스너 시작/중지
lsnrctl start lsnrctl stop
예시
- 인스턴스 시작
oracle@jmnote:/oracle> sqlplus '/as sysdba'
SQL*Plus: Release 10.2.0.1.0 - Production on 화 5월 7 13:04:31 2013
Copyright (c) 1982, 2005, Oracle. All rights reserved.
Connected to an idle instance.
SQL> startup
ORACLE instance started.
Total System Global Area 1241513984 bytes
Fixed Size 1219136 bytes
Variable Size 234882496 bytes
Database Buffers 989855744 bytes
Redo Buffers 15556608 bytes
Database mounted.
Database opened.
SQL> exit
Disconnected from Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Production
With the Partitioning, OLAP and Data Mining options
oracle@jmnote:/oracle>
- 인스턴스 중지
SQL> shutdown immediate
Database closed.
Database dismounted.
ORACLE instance shut down.
SQL> exit
Disconnected from Oracle Database 10g Release 10.2.0.1.0 - 64bit Production
oracle@jmnote:/oracle>
- 리스너 시작
oracle@jmnote:/oracle> lsnrctl start
LSNRCTL for Linux: Version 10.2.0.1.0 - Production on 07-5월 -2013 12:31:59
Copyright (c) 1991, 2005, Oracle. All rights reserved.
Starting /oracle/product/10.2.0/db_1/bin/tnslsnr: please wait...
TNSLSNR for Linux: Version 10.2.0.1.0 - Production
System parameter file is /oracle/product/10.2.0/db_1/network/admin/listener.ora
Log messages written to /oracle/product/10.2.0/db_1/network/log/listener.log
Listening on: (DESCRIPTION=(ADDRESS=(PROTOCOL=jmn)(KEY=EXTPROC1)))
Listening on: (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=jmnote)(PORT=1521)))
Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=JMP)(KEY=EXTPROC1)))
STATUS of the LISTENER
------------------------
Alias LISTENER
Version TNSLSNR for Linux: Version 10.2.0.1.0 - Production
Start Date 07-5월 -2013 12:32:01
Uptime 0 days 0 hr. 0 min. 0 sec
Trace Level off
Security ON: Local OS Authentication
SNMP OFF
Listener Parameter File /oracle/product/10.2.0/db_1/network/admin/listener.ora
Listener Log File /oracle/product/10.2.0/db_1/network/log/listener.log
Listening Endpoints Summary...
(DESCRIPTION=(ADDRESS=(PROTOCOL=jmn)(KEY=EXTPROC1)))
(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=jmnote)(PORT=1521)))
Services Summary...
Service "PLSExtProc" has 1 instance(s).
Instance "PLSExtProc", status UNKNOWN, has 1 handler(s) for this service...
The command completed successfully
oracle@jmnote:/oracle> netstat -anp | grep 1521 | grep LISTEN (Not all processes could be identified, non-owned process info will not be shown, you would have to be root to see it all.) tcp 0 0 0.0.0.0:1521 0.0.0.0:* LISTEN 3534/tnslsnr
- →리스너가 1521 포트를 LISTEN 한다.[4]
- 리스너 중지
oracle@jmnote:/oracle> lsnrctl stop
LSNRCTL for Linux: Version 10.2.0.1.0 - Production on 07-5월 -2013 12:33:02
Copyright (c) 1991, 2005, Oracle. All rights reserved.
Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC1521)))
The command completed successfully
오라클 클라우드 플랫폼
오라클 클라우드 플랫폼(Oracle Cloud Platform)은 오라클 기술과 오픈 소스 기술이 결합된 표준 기반의 종합 플랫폼으로, 엔터프라이즈 애플리케이션을 더욱 효율적으로 구축, 배포, 통합, 보호 및 관리할 수 있다. 또한, 하이브리드 및 다중 클라우드 환경에도 최적화되어 있다. 데이터 레지던시, 규제준수 또는 대기시간 요구사항이 엄격한 조직의 경우, 오라클이 전담 관리하는 오라클 클라우드 플랫폼을 데이터 센터 내에서 사용할 수 있으므로 온프레미스 및 프라이빗 클라우드에 구축해도 오라클 클라우드 플랫폼의 민첩성과 혁신, 구독 기반 가격의 이점을 누릴 수 있다.
특징
- 가장 종합적인 통합 솔루션
- 클라우드 공급업체 중 최대 규모의 PaaS(Platform as a Service) 포트폴리오를 자랑하는 오라클은 민첩성을 높이고 비용을 절감하며 IT 복잡성을 줄이도록 설계된 다양한 기술적 통합 플랫폼 솔루션을 제공한다.
- 개방형 표준 솔루션
- 오라클은 고객이 급변하는 비즈니스 요구사항에 적응하고, 상호 운용성을 높이고, 종속성을 방지할 수 있도록 다양한 서비스와 유연성을 제공한다. 오라클 클라우드 플랫폼은 고객이 클라우드에서 애플리케이션을 쉽게 구축, 배포, 통합, 확장할 수 있도록 다양한 개방형 표준(SQL, HTML5, REST 등) 오픈 소스 솔루션(예: Kubernetes, Hadoop 및 Kafka)과 광범위한 프로그래밍 언어, 데이터베이스, 통합 프레임워크를 제공한다.
- 더 적은 소유 비용
- 개발 및 통합에서 보안 및 관리에 이르기까지, 오라클 클라우드 플랫폼은 프로비저닝, 패치, 백업, 조정, 확장 등과 같은 종합적인 자동화를 통해 직원의 생산성을 높여 준다.
- SaaS의 손쉬운 통합 및 확장
- SaaS(Software as a Service)와 온프레미스 애플리케이션의 경계를 뛰어넘는 비즈니스 프로세스를 실현한다. 오라클 클라우드 플랫폼은 바로 사용할 수 있는 수백 가지의 어댑터 및 커넥터를 통해 오라클 및 비오라클 SaaS와 온프레미스 애플리케이션 전반에서 데이터 및 프로세스를 쉽게 통합하여 애플리케이션 사일로를 제거한다.
- 최고의 보안, 확장성 및 성능
- 다층적인 보안, 기본적으로 실행되는 데이터 암호화, 최첨단 데이터 센터를 활용하여 고성능의 미션 크리티컬 애플리케이션도 간편하게 배포할 수 있다. 오라클 클라우드 플랫폼은 업계 최고의 오라클 클라우드 인프라스트럭처(Oracle Cloud Infrastructure)에서 실행되고 하이브리드 클라우드 환경 전반에 통합 ID 및 보안 관리를 제공하여 보안, 확장성, 가용성 및 성능이 탁월하다.[6]
각주
- ↑ 〈오라클〉, 《네이버 지식백과》
- ↑ 커피코더, 〈오라클 서비스 항목〉, 《티스토리》, 2015-08-20
- ↑ 〈윈도우/리눅스 오라클 서비스 시작/중지〉, 《이글루스》
- ↑ 〈리눅스 오라클 시작/중지〉, 《제타위키》
- ↑ 나비와꽃기린, 〈ORACLE DB 시작 및 중지 / 리스너 시작 및 중지 하는방법〉, 《티스토리》, 2016-10-26
- ↑ Oracle Cloud 공식 홈페이지 - https://cloud.oracle.com/ko_KR/paas
참고자료
- 〈리눅스 오라클 시작/중지〉, 《제타위키》
- 나비와꽃기린, 〈ORACLE DB 시작 및 중지 / 리스너 시작 및 중지 하는방법〉, 《티스토리》, 2016-10-26
- 〈윈도우/리눅스 오라클 서비스 시작/중지〉, 《이글루스》
- 커피코더, 〈오라클 서비스 항목〉, 《티스토리》, 2015-08-20
- 〈오라클〉, 《네이버 지식백과》
- Oracle Cloud 공식 홈페이지 - https://cloud.oracle.com/ko_KR/paas
같이 보기