【Oracle】8.Orecle体系结构分析
概念 什么是Oracle数据库? 基本上,有Oracle数据库的两个主要组成部分 - 实例和数据库本身。实例包括一些内存结构和后台进程,而数据库是指磁盘资源。图1会告诉你之间的关系。 实例 该实例分析(SGA + PGA +后台进程)交互过程。 内存结构和后台进程contitu
概念
什么是Oracle数据库?
基本上,有Oracle数据库的两个主要组成部分 - 实例和数据库本身。实例包括一些内存结构和后台进程,而数据库是指磁盘资源。图1会告诉你之间的关系。
实例
该实例分析(SGA + PGA +后台进程)交互过程。
内存结构和后台进程contitute一个实例。内存结构本身由系统全局区(SGA),程序全局区(PGA),以及一个可选的区域。在另一方面,强制性的后台进程数据库写进程(DBWn),日志写入(LGWR),检查点(CKPT)系统监视器(SMON)和进程监视器(PMON)。而另一可选的后台进程是归档程序(ARCn),恢复器(RECO)等。图将说明对一个实例这些组件之间的关系。
如图说明:
SGA
系统全局区(SGA),SGA是主要的内存结构。当Oracle数据库管理员谈记忆,他们通常指的SGA。这个区域被分成几部分的内存-缓冲区高速缓存,共享池,重做日志缓冲区,大池和Java池。
缓冲区高速缓存
缓冲区高速缓存来存储从数据文件检索到的数据块的副本。即,当用户从数据库中检索数据,该数据将被保存在高速缓冲存储器。它的大小可以通过DB_CACHE_SIZE参数init.ora中的初始化参数文件进行操作。
共享池
共享池分为两个小部分记忆-库高速缓存和字典高速缓存。库高速缓存用于对常用的SQL和PL / SQL语句的存储信息; 并且由一最近最少使用(LRU)算法来管理。它也使共享用户之间的那些statemens。在另一方面,字典高速缓存用于对数据库中的对象的定义,如列,表,索引,用户,权限等存储信息的共享池的大小可以通过init.ora中的初始化参数文件SHARED_POOL_SIZE参数来设置。
重做日志缓冲区
每个DML语句(插入,更新和删除),用户执行将产生重做条目。什么是重做条目?它是关于用户的所有数据更改信息。重做条目存储在重做日志缓冲区被写入到重做日志文件之前。操作重做日志缓冲区的大小,您可以使用init.ora中的初始化参数文件中的LOG_BUFFER参数。
大池
大池是SGA中的内存可选区域。它是用来 审查的共享池的负担地方。它也可用于I / O的处理。大池的大小可以通过init.ora中的初始化参数文件LARGE_POOL_SIZE参数进行设置。
Java池
正如其名,Java池是用来在Java的服务解析命令。它的大小可通过在INIT.ORA初始化参数文件。JAVA_POOL_SIZE参数设定
PGA
程序全局区(PGA),尽管SQL statemen的结果分析被存储在库中缓存,但结合可变的值将存储在PGA中。为什么?因为它必须是私人或不用户之间共享。该PGA还用于排序区。
软件区号
软件区号是内存中的一个位置,甲骨文应用软件的驻留。
后台进程
Oracle后台进程是幕后流程 的工作 与共同的回忆。
DBWn进程
数据库写( DBWn进程)工艺被用于从缓冲区高速缓存数据写入数据文件。从历史上看,数据库写被命名为DBWR。但是,由于一些Oracle版本可以让我们有多个数据库作家,名称更改为DBWn进程,其中n值是一个数字0到9
LGWR
日志写入器(LGWR)过程类似于DBWn进程。它从写入重做日志缓冲区重做项到重做日志文件。
CKPT
检查点(CKPT)是给一个信号,DBWn进程来写入数据的缓冲区高速缓存到数据文件的过程。它也将更新,当日志文件切换时的数据文件和控制文件头。
SMON
系统监视器(SMON)进程用于恢复系统通过应用条目在重做日志文件中的数据文件crach或实例失败。
PMON
进程监视器(PMON )过程中所使用的回滚事务并释放其他资源失败的进程后清理工作。
体系结构
数据库是指磁盘资源,和被分成两个主要结构:逻辑结构和物理结构。
逻辑结构
Oracle数据库被分成较小的逻辑单元effeciently管理,存储和检索数据。逻辑单元是表,段,区和数据块。图将说明这些单位之间的关系。
甲骨文逻辑结构之间的关系
表空间
表空间是一个逻辑分组的数据库对象。一个数据库必须有一个或多个表空间。在图3中,我们有三个表空间- SYSTEM表空间,表空间1和表空间2.表空间是由一个或多个数据文件组成。
段
表空间被进一步分解成段。一个段用于存储相同类型的对象。即,数据库中的每个表将存储到一个特定的段(称为数据段)和每一个索引数据库中的也将存储在其自己的段(称为索引段)。其他的段类型是临时段和回滚段。
程度一个段被进一步分成范围。在一定程度上由一个或多个数据块。当数据库对象被放大,一个范围将被分配。不同于表空间或段,在一定程度上不能被命名。
数据块数据块是存储在Oracle数据库中的最小单位。数据块的大小是表内字节的特定数目和它有相同的字节数。
物理结构的物理结构是Oracle数据库的结构(在这种情况下,磁盘的文件)不直接由用户操纵。物理结构包括数据文件,重做日志文件和控制文件。
数据文件数据文件是与一个表空间correspondens的文件。一个数据文件可以由一个表空间中使用,但是一个表空间可以有多个数据文件。
重做日志文件重做日志文件是存储由DML语句所产生的重做条目中的文件。它可用于恢复过程。
控制文件控制文件用于存储有关数据库的物理结构,例如数据文件的大小和位置的信息,重做日志文件位置等
Oracle数据库架构的图像,清晰的认识.....
业务思想
分析Oracle的体系结构,再次深入理解Oracle的运行机制,感受颇多,很容易学习的体系结构,都来了解了解吧!

핫 AI 도구

Undresser.AI Undress
사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover
사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

AI Hentai Generator
AI Hentai를 무료로 생성하십시오.

인기 기사

뜨거운 도구

메모장++7.3.1
사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전
중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기
강력한 PHP 통합 개발 환경

드림위버 CS6
시각적 웹 개발 도구

SublimeText3 Mac 버전
신 수준의 코드 편집 소프트웨어(SublimeText3)

뜨거운 주제











Oracle Environment 변수 구성 안내서 : Oracle_home 환경 변수를 생성하여 Oracle Home 디렉토리를 가리 킵니다. 경로 환경 변수에 Oracle Binary Directory를 추가하십시오. TNS_ADMIN 환경 변수를 설정하십시오 (파일의 TNS를 사용하여 이름이 지정된 경우). 환경 변수 설정을 확인하여 출력이 설정 변수를 표시하는지 확인하십시오.

Oracle은 여러 가지 중복 제거 쿼리 방법을 제공합니다. 별개의 키워드는 각 열에 고유 한 값을 반환합니다. 그룹 별 조항은 결과를 그룹화하고 각 그룹에 대해 비 반복 값을 반환합니다. 고유 한 키워드는 고유 한 행만 포함 된 인덱스를 만드는 데 사용되며 인덱스 쿼리는 자동으로 망상됩니다. row_number () 함수는 고유 한 숫자를 할당하고 1 행 만 포함하는 결과를 필터링합니다. 최소 () 또는 max () 함수는 숫자 열의 비 반복 값을 반환합니다. 교차 연산자는 두 결과 세트의 공통 값을 반환합니다 (중복 없음).

데이터베이스 문자 세트를 확인하여 데이터와 일치하는지 확인하여 Oracle Garbled 문제를 해결할 수 있습니다. 클라이언트 문자 세트를 데이터베이스와 일치하도록 설정하십시오. 데이터베이스 문자 세트와 일치하도록 데이터 변환 또는 열 문자 세트를 수정하십시오. 유니 코드 문자 세트를 사용하고 멀티 바이트 문자 세트를 피하십시오. 데이터베이스 및 클라이언트의 언어 설정이 올바른지 확인하십시오.

저장된 절차는 데이터베이스에 저장 될 수 있으며 별도의 단위로 반복적으로 호출 될 수있는 SQL 문의 세트입니다. 매개 변수 (In, Out, Inout)를 수락하고 코드 재사용, 보안, 성능 및 모듈성의 장점을 제공 할 수 있습니다. 예 : 저장된 프로 시저를 작성하여 Calculate_sum 두 숫자의 합을 계산하고 Out 매개 변수에 저장하십시오.

Oracle 테이블 스페이스 크기를 쿼리하려면 다음 단계를 따르십시오. 쿼리를 실행하여 테이블 스페이스 이름을 결정하십시오. 쿼리를 실행하여 테이블 스페이스 크기를 쿼리하십시오. sum (bytes)을 total_size, sum (bytes_free)으로 sum (bytes_free), sum (bytes) - sum (bytes_free)으로 dba_data_fices where tablespace_.

Alter Table 문을 사용하십시오. 특정 구문은 다음과 같습니다. Alter Table_Name Add Column_name Data_Type [제한 조건 -Clause]. 여기서 : table_name은 테이블 이름, column_name은 필드 이름, data_type는 데이터 유형이며, 제한 조건은 선택적 제한 조건입니다. 예 : Alter Table 직원 이메일 추가 Varchar2 (100) 직원 테이블에 이메일 필드를 추가합니다.

기본 키는 테이블의 각 행을 고유하게 식별하는 특수 열 또는 열의 조합입니다. 테이블의 레코드가 고유하고 다음과 같이 작성할 수 있습니다. Alter Table 문을 사용하여 테이블 이름을 지정합니다. 기본 키어 키워드 다음 열 이름을 추가하여 기본 키로 지정하십시오. 주요 주요 제약 조건은 데이터 고유성을 보장하고, 쿼리 속도를 개선하며, 중복 레코드를 방지하며 테이블 조인을 단순화하는 데 도움이됩니다.

Oracle 테이블에서 필드 이름을 수정하는 단계는 다음과 같습니다. 데이터베이스에 연결하십시오. Alter Table 문을 사용하여 필드 이름을 수정하십시오. 테이블 이름과 이전 필드 이름을 지정하십시오. 새 필드 이름을 지정합니다. 변경 사항을 제출하십시오.
