select userenv(‘language‘) from dual 其中NLS_CHARACTERSET 为server端字符集 NLS_LANGUAGE 为 server端字符显示形式 B、查询oracle client端的字符集 $echo $NLS_LANG 如果发现你select 出来的数据是乱码,请把client端的字符集配置成与linux操作系统相同的字符集。如果还是有乱码,则有可能是数据库中的数据存在问题,或者是oracle服务端的配置存在问题。 C、server端字符集修改 ***************************************************************** * 更改字符集步骤方法(WE8ISO8859P1 --> ZHS16GBK) * ***************************************************************** SQL> 将数据库启动到RESTRICTED模式下做字符集更改: SQL> conn /as sysdba Connected. SQL> shutdown immediate; Database closed. Database dismounted. ORACLE instance shut down. SQL> startup mount ORACLE instance started. Total System Global Area 236000356 bytes Fixed Size 451684 bytes Variable Size 201326592 bytes Database Buffers 33554432 bytes Redo Buffers 667648 bytes Database mounted. SQL> ALTER SYSTEM ENABLE RESTRICTED SESSION; System altered. SQL> ALTER SYSTEM SET JOB_QUEUE_PROCESSES=0; System altered. SQL> ALTER SYSTEM SET AQ_TM_PROCESSES=0; System altered. SQL> alter database open; Database altered. SQL> ALTER DATABASE CHARACTER SET ZHS16GBK; ALTER DATABASE CHARACTER SET ZHS16GBK * ERROR at line 1: ORA-12712: new character set must be a superset of old character set 提示我们的字符集:新字符集必须为旧字符集的超集,这时我们可以跳过超集的检查做更改: SQL> ALTER DATABASE character set INTERNAL_USE ZHS16GBK; Database altered. SQL> select * from v$nls_parameters; 略 19 rows selected. 重启检查是否更改完成: SQL> shutdown immediate; Database closed. Database dismounted. ORACLE instance shut down. SQL> startup ORACLE instance started. Total System Global Area 236000356 bytes Fixed Size 451684 bytes Variable Size 201326592 bytes Database Buffers 33554432 bytes Redo Buffers 667648 bytes Database mounted. Database opened. SQL> select * from v$nls_parameters; 略 19 rows selected. +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
怎么打开数据库,监听器?
1. linux下启动oracle su - oracle sqlplus /nolog conn /as sysdba startup exit lsnrctl start exit 2. linux下关闭oracle su - oracle sqlplus /nolog conn /as sysdba shutdown immediate exit lsnrctl stop exit 3、启动监听器 oracle@suse92:~> lsnrctl start 4、停止监听器 oracle@suse92:~> lsnrctl stop 5、查看监听器状态 oracle@suse92:~> lsnrctl LSNRCTL> status LSNRCTL> exit
怎样设置Oracle数据库最大链接?
找到 $ORACLE_HOME/network/admin/listener.ora,加上下面的
SID_LIST_LISTENER= (SID_LIST= (SID_DESC= #BEQUEATH CONFIG (GLOBAL_DBNAME=orcl) (SID_NAME=orcl) (ORACLE_HOME=/u01/oracle) #PRESPAWN CONFIG (PRESPAWN_MAX=20) (PRESPAWN_LIST= (PRESPAWN_DESC=(PROTOCOL=tcp)(POOL_SIZE=2)(TIMEOUT=1)) ) ))
设置还原点,闪回点,有现成的,我就不多费口舌了,有问题随时baidu.com
还原点简单的使用:http://blog.csdn.net/u012702547/article/details/46679095
闪回还原点:http://blog.itpub.net/29800581/viewspace-1314515/
Oracle数据库初探
标签:pen div 否则 http sid_name suse 使用 没有 ace
小编还为您整理了以下内容,可能对您也有帮助:
oracle体系结构的两个基本概念:数据库和实例
要了解oracle体系结构必须先了解两个基本的概念: 数据库和实例.
一: 数据库
数据库(database)是一个数据集合.
无论数据库是采用关系结构还是面向对象结构, oracle数据库都将其数据存放在数据文件中. 在其内部, 数据库结构数据对文件的逻辑映射, 使不同的数据分开存储, 这些逻辑划分称为表空间.
表空间和文件介绍:
1: 表空间
表空间(tablespace)是数据库的逻辑划分, 每个数据库至少有一个表空间,叫做系统表空间(system 表空间). 一个表空间只能属于一个数据库.
每个表空间由同一个磁盘上的一个或多个文件组成, 这些文件称为数据文件. 表空间的特性:
1)控制数据库数据磁盘分配
2)用户在表空间中可以使用的磁盘空间大小
3)表空间具有 online, offline, readonly, readwrite属性
修改表空间的属性:
SQL alter tablespace 表空间名称 属性;
查询表空间状态:
SQL select tablespace_name, status from dba_tablespaces;
注意: system, undo, temp表空间不能设为offline属性.
4)完成部分数据库的备份与恢复
5)表空间通过数据文件来扩大, 表空间的大小等于构成该表空间的所以数据文件的大小只和.
查询表空间与数据文件对应关系:
SQL select tablespace_name, bytes, file_name from dba_data_files;
基于表空间的几个操作:
1)查询用户缺省表空间:
SQL select username, default_tablespace from dba_users;
2)查询表与存储该表的表空间:
SQL select table_name, tablespace_name from user_tables;
3)修改用户缺省表空间:
SQL alter user username default tablespace tablespace_name;
4)将数据从一个表空间移动到另一个表空间:
SQL alter table table_name move tablespace tablespace_name;
2: 数据文件
每个表空间由同一个磁盘上的一个或多个文件组成, 这些文件叫做数据文件(datafile),数据文件只能属于一个表空间. 数据文件创建后可以改变大小. 创建新的表空间需要创建新的数据文件. 数据文件一旦加入到表空间中, 就不能从表空间中移走, 也不能与其他表空间发生联系.数据库必须的三类文件是 data file, control file, redolog file. 其他文件 prameter file,password file, archived log files并不是数据库必须的, 他们只是辅助数据库的.
查看数据库的物理文件组成:
1)查看数据文件: SQL select * from v$datafile;
2)查看控制文件: SQL select * from v$controlfile;
3)查看日志文件: SQL select * from v$logfile;
二: 实例
通俗的讲实例就是操作oracle数据库的一种手段.
数据库实例也称作服务器, 是用来访问数据库文件集的存储结构及后台进程的集合.
一个数据库可以被多个实例访问(称为真正的应用群集选项).
决定实例的大小及组成的各种参数或者存储在名称init.ora的初始化文件中, 或者隐藏在数据库内部的服务器参数文件中. 通过spfile引用该文件, spfile存储在spfile.ora文件中.
实例启动时读取初始化文件, 数据库系统管理员可以修改该文件, 对初始化文件的修改只有在下次启动时才有效.
Instance分为两部分:
1: memory structure(内存结构)
memory structure分为两部分:SGA(System Global Area)区是用于存储数据库信息的内存区,该信息为数据库进程所共享。它包含Oracle 服务器的数据和控制信息,
它是在Oracle 服务器所驻留的计算机的实际内存中得以分配,如果实际内存不够再往虚拟内存中写。
包括:
.share pool
.datafase buffer cache
.redo log buffer
.other structures
PGA(Program Global Area)区包含单个服务器进程或单个后台进程的数据和控制信息,与几个进程共享的SGA 正相反PGA 是只被一个进程使用的区域,PGA 在创建进程时分配在终止进程时回收
2: background process(后台进程)
包括: .PMON 负责在一个Oracle 进程失败时清理资源
.SMON 检查数据库的一致性如有必要还会在数据库打开时启动数据库的恢复
.DBWR 负责将更改的数据从数据库缓冲区高速缓存写入数据文件
.LGWR 将重做日志缓冲区中的更改写入在线重做日志文件
.CKPT 负责在每当缓冲区高速缓存中的更改永久地记录在数据库中时,更新控制文件和数据文件中的数据库状态信息。
浅谈应该如何理解Oracle的架构知识
1、物理结构
Oracle物理结构由控制文件、数据文件、重做日志文件、参数文件、归档文件、口令文件组成
一个数据库中的数据存储在磁盘上物理文件,被使用时,调入内存。其中控制文件、数据文件、重做日志文件、跟踪文件及警告日志(trace files,alert files)属于数据库文件;参数文件(parameter file)口令文件(password file)是非数据库文件。
数据文件:存储数据的文件.数据文件典型地代表了根据他们使用的磁盘空间和数量所决定的一个Oracle数据库的容积。
由于性能原因,每一种类型的数据放在相应的一个或一系列文件中,将这些文件放在不同的磁盘中。
types:
.data dictionary .data
.redo data .index
.temporary data 等等
控制文件:包含维护和验证数据库完整性的必要信息、例如,控制文件用于识别数据文件和重做日志文件,一个数据库至少需要一个控制文件.
控制文件内容
◆数据库名
◆表空间信息
◆所有数据文件的名字和位置
◆所有redo日志文件的名字和位置
◆当前的日志序列号
◆检查点信息
◆关于redo日志和归档的当前状态信息
控制文件的使用过程
控制文件把Oracle引导到数据库文件的其它部分。启动一个实例时,Oracle 从参数文件中读取控制文件的名字和位置。安装数据库时,Oracle 打开控制文件。最终打开数据库时,Oracle 从控制文件中读取数据文件的列表并打开其中的每个文件。
重做日志文件
含对数据库所做的更改记录,这样万一出现故障可以启用数据恢复。一个数据库至少需要两个重做日志文件.
跟踪文件及警告日志(Trace Files and Alert Files)
在instance 中运行的每一个后台进程都有一个跟踪文件(trace file)与之相连。Trace file 记载后台进程所遇到的重大事件的信息。
警告日志( Alert Log)是一种特殊的跟踪文件,每个数据库都有一个跟踪文件,同步记载数据库的消息和错误.
参数文件:包括大量影响Oracle数据库实例功能的设定,如以下设定:
◆数据库控制文件的定位
◆Oracle用来缓存从磁盘上读取的数据的内存数量
◆默认的优化程序的选择.
和数据库文件相关,执行两个重要的功能
1〉为数据库指出控制文件
2〉为数据库指出归档日志的目标
归档文件:是重做日志文件的脱机副本,这些副本可能对于从介质失败中进行恢复很必要。
口令文件:认证哪些用户有权限启动和关闭Oracle例程.
2、逻辑结构(表空间、段、区、块)
表空间:是数据库中的基本逻辑结构,一系列数据文件的集合。
段:是对象在数据库中占用的空间.
区:是为数据一次性预留的一个较大的存储空间.
块:ORACLE最基本的存储单位,在建立数据库的时候指定.
3、内存分配(SGA和PGA)
SGA:是用于存储数据库信息的内存区,该信息为数据库进程所共享。它包含Oracle 服务器的数据和控制信息,它是在Oracle服务器所驻留的计算机的实际内存中得以分配,如果实际内存不够再往虚拟内存中写。
PGA:包含单个服务器进程或单个后台进程的数据和控制信息,与几个进程共享的SGA 正相反,PGA 是只被一个进程使用的区域,PGA 在创建进程时分配,在终止进程时回收.
4、后台进程
包括数据写进程(Database Writer,DBWR)、日志写进程(Log Writer,LGWR)、系统监控(System Monitor,SMON)、进程监控(Process Monitor,PMON)、检查点进程(Checkpoint Process,CKPT)、归档进程、服务进程、用户进程)
数据写进程:负责将更改的数据从数据库缓冲区高速缓存写入数据文件
日志写进程:将重做日志缓冲区中的更改写入在线重做日志文件
系统监控:检查数据库的一致性如有必要还会在数据库打开时启动数据库的恢复
进程监控:负责在一个Oracle 进程失败时清理资源
检查点进程:负责在每当缓冲区高速缓存中的更改永久地记录在数据库中时,更新控制文件和数据文件中的数据库状态信息。该进程在检查点出现时,对全部数据文件的标题进行修改,指示该检查点。在通常的情况下,该任务由LGWR执行。然而,如果检查点明显地降低系统性能时,可使CKPT进程运行,将原来由LGWR进程执行的检查点的工作分离出来,由CKPT进程实现。对于许多应用情况,CKPT进程是不必要的。只有当数据库有许多数据文件,LGWR在检查点时明显地降低性能才使CKPT运行。CKPT进程不将块写入磁盘,该工作是由DBWR完成的。 init.ora文件中 CHECKPOINT_PROCESS 参数控制CKPT进程的使能或使不能。缺省时为FALSE,即为使不能。
归档进程:在每次日志切换时把已满的日志组进行备份或归档
服务进程:用户进程服务。
用户进程:在客户端,负责将用户的SQL语句传递给服务进程,并从服务器段拿回查询数据。
5、SCN(System ChangeNumber):
系统改变号,一个由系统内部维护的序列号。当系统需要更新的时候自动增加,他是系统中维持数据的一致性和顺序恢复的重要标志。
浅谈应该如何理解Oracle的架构知识
1、物理结构
Oracle物理结构由控制文件、数据文件、重做日志文件、参数文件、归档文件、口令文件组成
一个数据库中的数据存储在磁盘上物理文件,被使用时,调入内存。其中控制文件、数据文件、重做日志文件、跟踪文件及警告日志(trace files,alert files)属于数据库文件;参数文件(parameter file)口令文件(password file)是非数据库文件。
数据文件:存储数据的文件.数据文件典型地代表了根据他们使用的磁盘空间和数量所决定的一个Oracle数据库的容积。
由于性能原因,每一种类型的数据放在相应的一个或一系列文件中,将这些文件放在不同的磁盘中。
types:
.data dictionary .data
.redo data .index
.temporary data 等等
控制文件:包含维护和验证数据库完整性的必要信息、例如,控制文件用于识别数据文件和重做日志文件,一个数据库至少需要一个控制文件.
控制文件内容
◆数据库名
◆表空间信息
◆所有数据文件的名字和位置
◆所有redo日志文件的名字和位置
◆当前的日志序列号
◆检查点信息
◆关于redo日志和归档的当前状态信息
控制文件的使用过程
控制文件把Oracle引导到数据库文件的其它部分。启动一个实例时,Oracle 从参数文件中读取控制文件的名字和位置。安装数据库时,Oracle 打开控制文件。最终打开数据库时,Oracle 从控制文件中读取数据文件的列表并打开其中的每个文件。
重做日志文件
含对数据库所做的更改记录,这样万一出现故障可以启用数据恢复。一个数据库至少需要两个重做日志文件.
跟踪文件及警告日志(Trace Files and Alert Files)
在instance 中运行的每一个后台进程都有一个跟踪文件(trace file)与之相连。Trace file 记载后台进程所遇到的重大事件的信息。
警告日志( Alert Log)是一种特殊的跟踪文件,每个数据库都有一个跟踪文件,同步记载数据库的消息和错误.
参数文件:包括大量影响Oracle数据库实例功能的设定,如以下设定:
◆数据库控制文件的定位
◆Oracle用来缓存从磁盘上读取的数据的内存数量
◆默认的优化程序的选择.
和数据库文件相关,执行两个重要的功能
1〉为数据库指出控制文件
2〉为数据库指出归档日志的目标
归档文件:是重做日志文件的脱机副本,这些副本可能对于从介质失败中进行恢复很必要。
口令文件:认证哪些用户有权限启动和关闭Oracle例程.
2、逻辑结构(表空间、段、区、块)
表空间:是数据库中的基本逻辑结构,一系列数据文件的集合。
段:是对象在数据库中占用的空间.
区:是为数据一次性预留的一个较大的存储空间.
块:ORACLE最基本的存储单位,在建立数据库的时候指定.
3、内存分配(SGA和PGA)
SGA:是用于存储数据库信息的内存区,该信息为数据库进程所共享。它包含Oracle 服务器的数据和控制信息,它是在Oracle服务器所驻留的计算机的实际内存中得以分配,如果实际内存不够再往虚拟内存中写。
PGA:包含单个服务器进程或单个后台进程的数据和控制信息,与几个进程共享的SGA 正相反,PGA 是只被一个进程使用的区域,PGA 在创建进程时分配,在终止进程时回收.
4、后台进程
包括数据写进程(Database Writer,DBWR)、日志写进程(Log Writer,LGWR)、系统监控(System Monitor,SMON)、进程监控(Process Monitor,PMON)、检查点进程(Checkpoint Process,CKPT)、归档进程、服务进程、用户进程)
数据写进程:负责将更改的数据从数据库缓冲区高速缓存写入数据文件
日志写进程:将重做日志缓冲区中的更改写入在线重做日志文件
系统监控:检查数据库的一致性如有必要还会在数据库打开时启动数据库的恢复
进程监控:负责在一个Oracle 进程失败时清理资源
检查点进程:负责在每当缓冲区高速缓存中的更改永久地记录在数据库中时,更新控制文件和数据文件中的数据库状态信息。该进程在检查点出现时,对全部数据文件的标题进行修改,指示该检查点。在通常的情况下,该任务由LGWR执行。然而,如果检查点明显地降低系统性能时,可使CKPT进程运行,将原来由LGWR进程执行的检查点的工作分离出来,由CKPT进程实现。对于许多应用情况,CKPT进程是不必要的。只有当数据库有许多数据文件,LGWR在检查点时明显地降低性能才使CKPT运行。CKPT进程不将块写入磁盘,该工作是由DBWR完成的。 init.ora文件中 CHECKPOINT_PROCESS 参数控制CKPT进程的使能或使不能。缺省时为FALSE,即为使不能。
归档进程:在每次日志切换时把已满的日志组进行备份或归档
服务进程:用户进程服务。
用户进程:在客户端,负责将用户的SQL语句传递给服务进程,并从服务器段拿回查询数据。
5、SCN(System ChangeNumber):
系统改变号,一个由系统内部维护的序列号。当系统需要更新的时候自动增加,他是系统中维持数据的一致性和顺序恢复的重要标志。
oracle 数据库 是什么结构
Oracle数据库的体系结构包括四个方面:数据库的物理结构、逻辑结构、内存结构及进程。
1. 物理结构
物理数据库结构是由构成数据库的操作系统文件所决定,Oracle数据库文件包括:
数据文件(Data File)
数据文件用来存储数据库中的全部数据,例如数据库表中的数据和索引数据.通常以为*.dbf格式,例如:userCIMS.dbf 。
日志文件(Redo Log File)
日志文件用于记录数据库所做的全部变更(如增加、删除、修改)、以便在系统发生故障时,用它对数据库进行恢复。名字通常为Log*.dbf格式,如:Log1CIMS.dbf,Log2CIMS.dbf 。
控制文件(Control File)
每个Oracle数据库都有相应的控制文件,它们是较小的二进制文件,用于记录数据库的物理结构,如:数据库名、数据库的数据文件和日志文件的名字和位置等信息。用于打开、存取数据库。名字通常为Ctrl*ctl 格式,如Ctrl1CIMS.ctl。
配置文件
配置文件记录Oracle数据库运行时的一些重要参数,如:数据块的大小,内存结构的配置等。名字通常为init*.ora 格式,如:initCIMS.ora 。
2 逻辑结构
Oracle数据库的逻辑结构描述了数据库从逻辑上如何来存储数据库中的数据。逻辑结构包括表空间、段、区、数据块和模式对象。数据库的逻辑结构将支配一个数据库如何使用系统的物理空间.模式对象及其之间的联系则描述了关系数据库之间的设计.
一个数据库从逻辑上说是由一个或多个表空间所组成,表空间是数据库中物理编组的数据仓库,每一个表空间是由段(segment)组成,一个段是由一组区(extent)所组成,一个区是由一组连续的数据库块(database block)组成,而一个数据库块对应硬盘上的一个或多个物理块。一个表空间存放一个或多个数据库的物理文件(即数据文件).一个数据库中的数据被逻辑地存储在表空间上。
表空间(tablespace)
Oracle数据库被划分为一个或多个称为表空间的逻辑结构,它包括两类表空间,System表空间和非System表空间,其中,System表空间是安装数据库时自动建立的,它包含数据库的全部数据字典,存储过程、包、函数和触发器的定义以及系统回滚段。除此之外,还能包含用户数据。。
一个表空间包含许多段,每个段有一些可以不连续的区组成,每个区由一组连续的数据块组成,数据块是数据库进行操作的最小单位。
每个表空间对应一个或多个数据文件,每个数据文件只能属于一个表空间。
数据库块(database block)
数据库块也称逻辑块或ORACLE块,它对应磁盘上一个或多个物理块,它的大小由初始化参数db-block-size(在文件init.ora中)决定,典型的大小是2k。Pckfree 和pctused 两个参数用来优化数据块空间的使用。
区(extent)
区是由一组连续的数据块所组成的数据库存储空间分配的逻辑单位。
段(segment)
段是一个或多个不连续的区的集合,它包括一个表空间内特定逻辑结构的所有数据,段不能跨表空间存放。Oracle数据库包括数据段、索引段、临时段、回滚段等。
模式对象(schema object)
Oracle数据库的模式对象包括表、视图、序列、同意词、索引、触发器、存储.过程等,关于它们将重点在后面章节介绍。
3.Oracle Server系统进程与内存结构
当在计算机服务器上启动Oracle数据库后,称服务器上启动了一个Oracle实例(Instance)。ORACLE 实例(Instance)是存取和控制数据库的软件机制,它包含系统全局区(SGA)和ORACLE进程两部分。SGA是系统为实例分配的一组共享内存缓冲区,用于存放数据库实例和控制信息,以实现对数据库中数据的治理和操作。
进程是操作系统中一个极为重要的概念。一个进程执行一组操作,完成一个特定的任务.对ORACLE数据库治理系统来说,进程由用户进程、服务器进程和后台进程所组成。
当用户运行一个应用程序时,系统就为它建立一个用户进程。服务器进程处理与之相连的用户进程的请求,它与用户进程相通讯,为相连的用户进程的ORACLE请求服务。
为了提高系统性能,更好地实现多用户功能,ORACLE还在系统后台启动一些后台进程,用于数据库数据操作。
系统进程的后台进程主要包括:
SMON 系统监控进程:(system monitor)负责完成自动实例恢复和回收分类(sort)表空间。
PMON 进程监控进程:(PRocess monitor)实现用户进程故障恢复、清理内存区和释放该进程所需资源等。
DBWR 数据库写进程:数据库缓冲区的治理进程。
在它的治理下,数据库缓冲区中总保持有一定数量的自由缓冲块,以确保用户进程总能找到供其使用的自由缓冲块。
LGWR 日志文件写进程:是日志缓冲区的治理进程,负责把日志缓冲区中的日志项写入磁盘中的日志文件上。每个实例只有一个LGWR进程。
ARCH 归档进程:(archiver process)把已经填满的在线日志文件拷贝到一个指定的存储设备上。仅当日志文件组开关(switch)出现时,才进行ARCH操作。ARCH不是必须的,而只有当自动归档可使用或者当手工归档请求时才发出。
RECO 恢复进程:是在具有分布式选项时使用的一个进程,主要用于解决引用分布式事务时所出现的故障。它只能在答应分布式事务的系统中出现。
LCKn 封锁进程:用于并行服务器系统,主要完成实例之间的封锁。
内存结构(SGA)
SGA是Oracle为一个实例分配的一组共享内存缓冲区,它包含该实例的数据和控制信息。SGA在实例启动时被自动分配,当实例关闭时被收回。数据库的所有数据操作都要通过SGA来进行。
SGA中内存根据存放信息的不同,可以分为如下几个区域:Buffer Cache:存放数据库中数据库块的拷贝。它是由一组缓冲块所组成,这些缓冲块为所有与该实例相链接的用户进程所共享。缓冲块的数目由初始化参数DB_BLOCK_BUFFERS确定,缓冲块的大小由初始化参数DB_BLOCK_SIZE确定。大的数据块可提高查询速度。它由DBWR操作。
b. 日志缓冲区Redo Log Buffer:存放数据操作的更改信息。它们以日志项(redo entry)的形式存放在日志缓冲区中。当需要进行数据库恢复时,日志项用于重构或回滚对数据库所做的变更。日志缓冲区的大小由初始化参数LOG_BUFFER确定。大的日志缓冲区可减少日志文件I/O的次数。后台进程LGWR将日志缓冲区中的信息写入磁盘的日志文件中,可启动ARCH后台进程进行日志信息归档。
c. 共享池Shared Pool:包含用来处理的SQL语句信息。它包含共享SQL区和数据字典存储区。共享SQL区包含执行特定的SQL语句所用的信息。数据字典区用于存放数据字典,它为所有用户进程所共享。
Cursors:一些内存指针,执行待处理的SQL语句
其他信息区:除了上述几个信息区外,还包括一些进程之间的通讯信息(如封锁信息);在多线索服务器配置下,还有一些程序全局区的信息,请求队列和响应队列等。 本文来自: http://hi.baidu.com/ipbun/blog/item/3f75d7230a7f5ee698250a7c.html
oracle 数据库 是什么结构
Oracle数据库的体系结构包括四个方面:数据库的物理结构、逻辑结构、内存结构及进程。
1. 物理结构
物理数据库结构是由构成数据库的操作系统文件所决定,Oracle数据库文件包括:
数据文件(Data File)
数据文件用来存储数据库中的全部数据,例如数据库表中的数据和索引数据.通常以为*.dbf格式,例如:userCIMS.dbf 。
日志文件(Redo Log File)
日志文件用于记录数据库所做的全部变更(如增加、删除、修改)、以便在系统发生故障时,用它对数据库进行恢复。名字通常为Log*.dbf格式,如:Log1CIMS.dbf,Log2CIMS.dbf 。
控制文件(Control File)
每个Oracle数据库都有相应的控制文件,它们是较小的二进制文件,用于记录数据库的物理结构,如:数据库名、数据库的数据文件和日志文件的名字和位置等信息。用于打开、存取数据库。名字通常为Ctrl*ctl 格式,如Ctrl1CIMS.ctl。
配置文件
配置文件记录Oracle数据库运行时的一些重要参数,如:数据块的大小,内存结构的配置等。名字通常为init*.ora 格式,如:initCIMS.ora 。
2 逻辑结构
Oracle数据库的逻辑结构描述了数据库从逻辑上如何来存储数据库中的数据。逻辑结构包括表空间、段、区、数据块和模式对象。数据库的逻辑结构将支配一个数据库如何使用系统的物理空间.模式对象及其之间的联系则描述了关系数据库之间的设计.
一个数据库从逻辑上说是由一个或多个表空间所组成,表空间是数据库中物理编组的数据仓库,每一个表空间是由段(segment)组成,一个段是由一组区(extent)所组成,一个区是由一组连续的数据库块(database block)组成,而一个数据库块对应硬盘上的一个或多个物理块。一个表空间存放一个或多个数据库的物理文件(即数据文件).一个数据库中的数据被逻辑地存储在表空间上。
表空间(tablespace)
Oracle数据库被划分为一个或多个称为表空间的逻辑结构,它包括两类表空间,System表空间和非System表空间,其中,System表空间是安装数据库时自动建立的,它包含数据库的全部数据字典,存储过程、包、函数和触发器的定义以及系统回滚段。除此之外,还能包含用户数据。。
一个表空间包含许多段,每个段有一些可以不连续的区组成,每个区由一组连续的数据块组成,数据块是数据库进行操作的最小单位。
每个表空间对应一个或多个数据文件,每个数据文件只能属于一个表空间。
数据库块(database block)
数据库块也称逻辑块或ORACLE块,它对应磁盘上一个或多个物理块,它的大小由初始化参数db-block-size(在文件init.ora中)决定,典型的大小是2k。Pckfree 和pctused 两个参数用来优化数据块空间的使用。
区(extent)
区是由一组连续的数据块所组成的数据库存储空间分配的逻辑单位。
段(segment)
段是一个或多个不连续的区的集合,它包括一个表空间内特定逻辑结构的所有数据,段不能跨表空间存放。Oracle数据库包括数据段、索引段、临时段、回滚段等。
模式对象(schema object)
Oracle数据库的模式对象包括表、视图、序列、同意词、索引、触发器、存储.过程等,关于它们将重点在后面章节介绍。
3.Oracle Server系统进程与内存结构
当在计算机服务器上启动Oracle数据库后,称服务器上启动了一个Oracle实例(Instance)。ORACLE 实例(Instance)是存取和控制数据库的软件机制,它包含系统全局区(SGA)和ORACLE进程两部分。SGA是系统为实例分配的一组共享内存缓冲区,用于存放数据库实例和控制信息,以实现对数据库中数据的治理和操作。
进程是操作系统中一个极为重要的概念。一个进程执行一组操作,完成一个特定的任务.对ORACLE数据库治理系统来说,进程由用户进程、服务器进程和后台进程所组成。
当用户运行一个应用程序时,系统就为它建立一个用户进程。服务器进程处理与之相连的用户进程的请求,它与用户进程相通讯,为相连的用户进程的ORACLE请求服务。
为了提高系统性能,更好地实现多用户功能,ORACLE还在系统后台启动一些后台进程,用于数据库数据操作。
系统进程的后台进程主要包括:
SMON 系统监控进程:(system monitor)负责完成自动实例恢复和回收分类(sort)表空间。
PMON 进程监控进程:(PRocess monitor)实现用户进程故障恢复、清理内存区和释放该进程所需资源等。
DBWR 数据库写进程:数据库缓冲区的治理进程。
在它的治理下,数据库缓冲区中总保持有一定数量的自由缓冲块,以确保用户进程总能找到供其使用的自由缓冲块。
LGWR 日志文件写进程:是日志缓冲区的治理进程,负责把日志缓冲区中的日志项写入磁盘中的日志文件上。每个实例只有一个LGWR进程。
ARCH 归档进程:(archiver process)把已经填满的在线日志文件拷贝到一个指定的存储设备上。仅当日志文件组开关(switch)出现时,才进行ARCH操作。ARCH不是必须的,而只有当自动归档可使用或者当手工归档请求时才发出。
RECO 恢复进程:是在具有分布式选项时使用的一个进程,主要用于解决引用分布式事务时所出现的故障。它只能在答应分布式事务的系统中出现。
LCKn 封锁进程:用于并行服务器系统,主要完成实例之间的封锁。
内存结构(SGA)
SGA是Oracle为一个实例分配的一组共享内存缓冲区,它包含该实例的数据和控制信息。SGA在实例启动时被自动分配,当实例关闭时被收回。数据库的所有数据操作都要通过SGA来进行。
SGA中内存根据存放信息的不同,可以分为如下几个区域:Buffer Cache:存放数据库中数据库块的拷贝。它是由一组缓冲块所组成,这些缓冲块为所有与该实例相链接的用户进程所共享。缓冲块的数目由初始化参数DB_BLOCK_BUFFERS确定,缓冲块的大小由初始化参数DB_BLOCK_SIZE确定。大的数据块可提高查询速度。它由DBWR操作。
b. 日志缓冲区Redo Log Buffer:存放数据操作的更改信息。它们以日志项(redo entry)的形式存放在日志缓冲区中。当需要进行数据库恢复时,日志项用于重构或回滚对数据库所做的变更。日志缓冲区的大小由初始化参数LOG_BUFFER确定。大的日志缓冲区可减少日志文件I/O的次数。后台进程LGWR将日志缓冲区中的信息写入磁盘的日志文件中,可启动ARCH后台进程进行日志信息归档。
c. 共享池Shared Pool:包含用来处理的SQL语句信息。它包含共享SQL区和数据字典存储区。共享SQL区包含执行特定的SQL语句所用的信息。数据字典区用于存放数据字典,它为所有用户进程所共享。
Cursors:一些内存指针,执行待处理的SQL语句
其他信息区:除了上述几个信息区外,还包括一些进程之间的通讯信息(如封锁信息);在多线索服务器配置下,还有一些程序全局区的信息,请求队列和响应队列等。 本文来自: http://hi.baidu.com/ipbun/blog/item/3f75d7230a7f5ee698250a7c.html
Oracle11g数据库系统设计、开发、管理与应用的前 言
本书主要内容
本书共有19章,分4个部分,其中第1、2章属于基础篇,主要介绍数据库设计方面的内容;第3~11章属于开发篇,主要介绍Oracle数据库的开发;第12~15章属于管理篇,主要介绍Oracle 11g数据库的管理;第16~19章属于应用篇,主要介绍Oracle 11g数据库应用系统的开发知识。各个章节的具体内容安排如下:
篇名 章 名 主 要 内 容
基础篇 第1章 数据库技术基础 介绍了数据库技术的基本概念、数据模型、E-R模型、数据库的规范化和高级数据库技术
第2章 进入Oracle世界 介绍了Oracle产品的发展变迁、Oracle 11g的新特性、体系结构、安装过程、基本组件和Oracle服务的启动、关闭
开发篇 第3章 SQL语言与PL/SQL 介绍了SQL和PL/SQL的基本知识,以及PL/SQL运算符、控制结构和常用函数
第4章 数据库 介绍了数据库和数据库实例的基本知识、创建数据库、修改数据库、删除数据库和管理表空间的操作
第5章 数据表、约束和数据记录 介绍了管理数据表、数据库完整性的约束实现、数据记录操作、管理序列、管理同义词和管理评注等操作
第6章 数据查询 介绍了查询的基本语法、简单查询、连接查询、子查询和联合查询等操作
第7章 索引 介绍了索引的基本知识、管理索引和管理聚集等操作
第8章 视图 介绍了视图的基本知识、管理视图和使用视图等操作
第9章 存储过程、函数和包 介绍了存储过程的基本知识、管理存储过程、嵌套存储过程、管理函数和管理包等操作
第10章 触发器 介绍了触发器的基本知识、管理触发器和使用触发器的操作
第11章 游标、事务和锁 介绍了游标的基础知识和基本操作、事务和锁的基本知识
续表
篇名 章 名 主 要 内 容
管理篇 第12章 Oracle 11g企业管理器 介绍了OEM的基本环境和使用OEM监视Oracle 11g环境、管理数据库、管理部署和管理作业系统等操作
第13章 数据库安全性 介绍了数据库安全性基本知识、管理用户、管理角色、授权和数据库审计等操作
第14章 备份与恢复 介绍了数据库备份、恢复、数据导入、导出等操作
第15章 Oracle配置和管理工具 介绍了Oracle 11g配置和管理工具概况、配置和管理网络服务、配置本地规则和安装、配置客户端等操作
应用篇 第16章 Java访问Oracle数据库 介绍了JDBC的基本结构、ODBC连接数据库、JDBC连接数据库和访问数据库等操作
第17章 .NET访问Oracle数据库 介绍了ADO.NET模型、绑定连接数据库、ODBC连接数据库、手动连接数据库和调用存储过程等操作
第18章 开发J2EE应用 介绍了J2EE开发和部署环境、开发JSP程序、开发Servlet和开发EJB等内容
第19章 Oracle XML DB 介绍了Oracle XML DB的基本体系结构、XML模式、二进制XML表和XQuery查询等内容
本书特点
(1)本书内容根据数据库开发的一般特点进行讲解,内容通俗易懂。
(2)结合实际开发案例的大量例题,使读者可以直观感受Oracle 11g的内容。
(3)对每种Oracle技术均通过GUI方式和命令方式进行讲解,既方便初学者快速入门,也方便对Oracle有一定了解的读者更上一层楼。
本书既适合高职高专、本科院校或计算机培训机构作为Oracle数据库课程的教材或参考用书,也可以作为计算机爱好者和数据库管理员的参考用书。
本书由来自湖南铁道职业技术学院的希赛顾问团顾问冯向科(国家认证软件设计师、系统分析师)和邓莹担任主编。
由于作者水平有限,书中的错误和不妥之处在所难免,敬请读者批评指正。有关本书的反馈和咨询,读者可以发送邮件至(请见扩展阅读),也可以从(请见扩展阅读)免费下载书中所用到的软件、工具和源代码。
编 者
2009年3月
Oracle11g数据库系统设计、开发、管理与应用的前 言
本书主要内容
本书共有19章,分4个部分,其中第1、2章属于基础篇,主要介绍数据库设计方面的内容;第3~11章属于开发篇,主要介绍Oracle数据库的开发;第12~15章属于管理篇,主要介绍Oracle 11g数据库的管理;第16~19章属于应用篇,主要介绍Oracle 11g数据库应用系统的开发知识。各个章节的具体内容安排如下:
篇名 章 名 主 要 内 容
基础篇 第1章 数据库技术基础 介绍了数据库技术的基本概念、数据模型、E-R模型、数据库的规范化和高级数据库技术
第2章 进入Oracle世界 介绍了Oracle产品的发展变迁、Oracle 11g的新特性、体系结构、安装过程、基本组件和Oracle服务的启动、关闭
开发篇 第3章 SQL语言与PL/SQL 介绍了SQL和PL/SQL的基本知识,以及PL/SQL运算符、控制结构和常用函数
第4章 数据库 介绍了数据库和数据库实例的基本知识、创建数据库、修改数据库、删除数据库和管理表空间的操作
第5章 数据表、约束和数据记录 介绍了管理数据表、数据库完整性的约束实现、数据记录操作、管理序列、管理同义词和管理评注等操作
第6章 数据查询 介绍了查询的基本语法、简单查询、连接查询、子查询和联合查询等操作
第7章 索引 介绍了索引的基本知识、管理索引和管理聚集等操作
第8章 视图 介绍了视图的基本知识、管理视图和使用视图等操作
第9章 存储过程、函数和包 介绍了存储过程的基本知识、管理存储过程、嵌套存储过程、管理函数和管理包等操作
第10章 触发器 介绍了触发器的基本知识、管理触发器和使用触发器的操作
第11章 游标、事务和锁 介绍了游标的基础知识和基本操作、事务和锁的基本知识
续表
篇名 章 名 主 要 内 容
管理篇 第12章 Oracle 11g企业管理器 介绍了OEM的基本环境和使用OEM监视Oracle 11g环境、管理数据库、管理部署和管理作业系统等操作
第13章 数据库安全性 介绍了数据库安全性基本知识、管理用户、管理角色、授权和数据库审计等操作
第14章 备份与恢复 介绍了数据库备份、恢复、数据导入、导出等操作
第15章 Oracle配置和管理工具 介绍了Oracle 11g配置和管理工具概况、配置和管理网络服务、配置本地规则和安装、配置客户端等操作
应用篇 第16章 Java访问Oracle数据库 介绍了JDBC的基本结构、ODBC连接数据库、JDBC连接数据库和访问数据库等操作
第17章 .NET访问Oracle数据库 介绍了ADO.NET模型、绑定连接数据库、ODBC连接数据库、手动连接数据库和调用存储过程等操作
第18章 开发J2EE应用 介绍了J2EE开发和部署环境、开发JSP程序、开发Servlet和开发EJB等内容
第19章 Oracle XML DB 介绍了Oracle XML DB的基本体系结构、XML模式、二进制XML表和XQuery查询等内容
本书特点
(1)本书内容根据数据库开发的一般特点进行讲解,内容通俗易懂。
(2)结合实际开发案例的大量例题,使读者可以直观感受Oracle 11g的内容。
(3)对每种Oracle技术均通过GUI方式和命令方式进行讲解,既方便初学者快速入门,也方便对Oracle有一定了解的读者更上一层楼。
本书既适合高职高专、本科院校或计算机培训机构作为Oracle数据库课程的教材或参考用书,也可以作为计算机爱好者和数据库管理员的参考用书。
本书由来自湖南铁道职业技术学院的希赛顾问团顾问冯向科(国家认证软件设计师、系统分析师)和邓莹担任主编。
由于作者水平有限,书中的错误和不妥之处在所难免,敬请读者批评指正。有关本书的反馈和咨询,读者可以发送邮件至(请见扩展阅读),也可以从(请见扩展阅读)免费下载书中所用到的软件、工具和源代码。
编 者
2009年3月
Oracle大型数据库系统的前言
风,紧,
夜,深沉,
剑,已出鞘,
影,飘然前行!
本书的立意和内容
在服务器领域,IBM p系列服务器与AIX操作系统毫无疑问是UNIX服务器领域中的佼佼者,它代表着UNIX深刻的技术内涵和广泛的用户基础。同样地,Oracle是数据库领域事实上的市场领导者,众多IT应用系统采用了Oracle构架,运行Oracle数据库作为其数据支撑节点。目前Oracle用户已经可以升级其数据库到Oracle Database 11g Release 2版本。
实践上,运行在AIX上的Oracle数据库系统是诸多大中型系统的典型配置方式——用户得益于IBM AIX的坚固支撑,受惠于Oracle的可用性保证!
但凡事都有两面性,AIX是一套复杂的UNIX系统,Oracle则是一种“最难”的数据库。对于任何用户而言,了解、熟悉、运用、掌握两者的平台特征和工程技术手段,需要进行大量的学习、培训、实践以及长时间的磨练!广大数据库用户需要一种快捷的学习路径以及可参考资料来帮助他们构建、运行、维护乃至优化自己的系统!
本书的立意即在于此!本书以AIX UNIX平台为主线,以其他UNIX系统为参照,描述了数据库系统Oracle 10g、Oracle 11g的构架方法,说明了该数据库在AIX平台常用的诸多管理方面,提供了在AIX上实施Oracle集群的环境要素说明和实施方法,分析了服务器综合容灾的工程手段和技术方法,综合了在AIX系统上优化Oracle运行环境的诸多做法和要点。最后,本书还以AIX上Sybase ASE数据库系统为对比,论述了Oracle在AIX上的独到特征。
基于上述出发点,本书力争面向工程实践,并面向用户的实际需求展开论述。因此,本书并未刻意在学术上进行高、精、尖的探索,而是力争将复杂的事情简单化,把各技术要点以最简单的形式和大家能了解的方法摆在用户面前!
本书的读者群体
本书的目标读者是那些在UNIX上进行数据库开发、维护、管理、优化任务和高可用设置的工程技术人员,以及从事于这个尖端行业的人群。
从技术角度看,本书所涉及的内容全部是生产实践中必要的过程和阶段。因此,本书并没有试图去描绘一些新鲜热辣的炒作概念或遥不可及的无用内容,而是作为一种可以放在手边的技术专著面向大众,服务于系统用户95%的日常工作需求。正因如此,本书注重细节描述和过程说明,读者无须拥有非常深厚的专业技术基础。
当然,学习的热情和探索的精神是必不可少的!
本书的内容安排
本书共分为五篇,按照数据库项目实施中工作内容的不同方向进行了分组,各篇的内容分述如下。
第一篇 构架篇
本篇侧重在于系统的构架,以及构架中的相关要素和重点。 第1章 了解服务器运行环境
本章力图使读者站到一个足够高的层次和高度来看待服务器技术框架。站得高,则看得必远!
第2章 管理和维护服务器设备和服务
Oracle运行在AIX上,Oracle将使用AIX资源、调用AIX服务,受AIX的运行状态影响。
第3章 管理服务器存储
数据库服务器的一个典型特征就是大量使用磁盘空间来存储数据库数据。Oracle需要AIX提供的存储介质来存储数据。
第4章 构建Oracle环境
Oracle的环境构架相对复杂。用户需要掌握Oracle系统构架的具体工程细节,并获得动手能力。
第二篇 管理篇
本篇结合了AIX系统的诸多特点,综合论述了Oracle在AIX上管理的具体方法和实践行为规范。 第5章 在AIX中Oracle数据库管理
日常管理是一个管理员工作的大部分内容。本章描述了常用的管理内容和做法。
第6章 使用ASM跳过AIX卷空间管理
ASM是Oracle提出的存储管理最新的实施方法。Oracle推荐使用ASM来进行磁盘空间的管理。
第7章 管理AIX下Oracle的空间使用
空间管理是系统管理的重点。Oracle需要各种不同的空间要素,需要管理和维护。
第三篇 灾备篇
本篇站在服务器的层面,综合讲述了在AIX运行Oracle系统所需进行的备份管理工作,以及灾难恢复实施方法。 第8章 设计和实施AIX系统备份
服务器系统的备份工作必须能够兼顾操作系统、应用系统、数据库数据备份的各方面。AIX是备份中重要的一环。
第9章 设计Oracle系统备份
Oracle作为数据库系统,其备份方法和恢复手段与操作系统备份截然不同。按照规范的方法进行备份对恢复有着不言而喻的意义。
续表
第三篇 灾备篇
本篇站在服务器的层面,综合讲述了在AIX运行Oracle系统所需进行的备份管理工作,以及灾难恢复实施方法。 第10章 实施Oracle系统备份
工程上实施数据库备份的方法是百花齐放的。这里讨论了若干种具体实施方法和手段。
第11章 恢复崩溃的系统
防患于未然!好的备份系统是经过恢复测试的系统。让我们看看如何用备份进行系统恢复的!
第四篇 集群篇
在AIX平台上RAC集群是一种广泛使用的结构。本篇即针对集群展开讨论。 第12章 构建AIX下的Oracle集群环境
集群是实现Oracle系统网格与高可用的主要技术手段,尤其在AIX承担的关键业务系统中。
第13章 在AIX中管理Oracle集群环境
集群的管理有其自身特色,包括集群件管理、集群服务的管理。
第五篇 优化篇
好的系统需要进行预先的优化结构设计,并在系统运行中进行渐近的再优化。本篇以项目周期为阶段,描述了系统优化的各个过程和方面。 第14章 在AIX上综合设置Oracle环境
系统在构建时,要综合考虑可用性和性能之间的关系,并设置和优化系统。
第15章 AIX上Oracle系统的运行优化
在系统运行过程中,应用性能会随时变化,性能的检查和优化也需随时进行。动态地、渐进式地分析与调整也就十分必要。
第六篇 扩展篇
通过与Sybase ASE的对比来了解什么是Oracle。 第16章 AIX上Oracle与Sybase的比较
Sybase ASE与Oracle同为可在AIX上运行的数据库系统。两种产品中各有特点、各有优势、同样优秀。
本书从构思到最终完成,历时两年时间,其间更改数十稿。单独讲述UNIX不难,单独讲述Oracle不难,但把二者结合起来,站在整个系统的高度来说明问题,却让本书作者难以着手——千头万绪,该写的内容太多!
致谢
本书内容来源于实践,用户即是最佳的实践来源。感谢山东海化集团王凤鸣先生、中国电信青海公司陈宇峰先生、福建公司陈亮先生等人的鼎力支持。本书中若干技术观点和实践总结来源于作者为该单位提供数据库顾问服务的工作现场。感谢他们和作者在工作与技术领域上的不断探讨,这促进了本书内容的不断完善!
在本书编写过程中,很多复杂的、结构性的实验在北京时代朝阳数据库技术中心Trail实验室完成。北京时代朝阳数据库技术中心是一家有着17年企业历史的数据库专业技术机构,精于数据库产品与服务。这里有多样化的UNIX平台、各种集群构架、不同容灾环境等,这为本书所涉及的各项结构性实践提供了可能。感谢Trail实验室各位同事的配合。另外,考虑到本书在部分章节上存在一定难度,为保证本书的可读性,作者也请Trail实验室中参加Oracle职业/就业课程的若干学员试读了本书,感谢他们提出的诸多意见!
感谢本书策划编辑胡辛征先生的热心鼓励和积极推动,感谢文字编辑江立女士的细心编审和中肯点评。没有他们的细致工作和鼓励,本书不能顺利出版。
最后,感谢博文视点以知识传播的方式对中国IT产业的支持——以其广博文字选题,以其超然视点出版!
祝博文视点从成功走向辉煌!
本书作者:文平
2009-09-20于北京
目录第一篇 构架篇
第1章 了解服务器运行环境
1.1 AIX:一种成熟的UNIX
1.1.1 AIX系统构成要素
1.1.2 登录AIX系统
1.1.3 RS6000服务器结构
1.1.4 AIx系统管理界面
1.1.5 AIX中使用的Shell
1.1.6 AJx存储组织结构
1.1.7 AJx换页空间(交换区)
1.1.8 AIX文件系统结构
1.1.9 AJx对象数据管理
1.1.10 AIX当前进程运行
1.1.11 AIX用户访问过程
1.1.12 AIX各种服务提供
1.1.13 AIX网络通信设置
1.1.14 AIX中的常用操作
1.2 Oracle与AIx系统
1.2.1 Oracle与AIX的角色
1.2.2 Oracle系统典型特征
1.2.3 系统全局区SGA
1.2.4 程序全局区PGA
1.2.5 Oracle后台进程
1.2.6 Oracle数据库物理结构
1.2.7 数据库数据存放
1.2.8 数据库的用户访问
第2章 管理和维护服务器设备和服务
2.1 管理AIX中的设备
2.1.1 AIX使用设备类型
2.1.2 AIX的设备分层管理
2.1.3 ODM对象数据库
2.1.4 设备的状态特征查看
2.1.5 设备的配置和检测
2.1.6 设备属性信息查看
2.1.7 创建主机硬件配置档案
2.2 管理AIX中的服务
2.2.1 系统资源控制器的启动
2.2.2 系统资源的启动和关闭
2.2.3 系统资源的刷新
2.2.4 通常启动的资源
2.3 AIX系统错误处理
2.4 AIX系统硬件诊断
2.5 AIX系统日志查看
第3章 管理服务器存储
3.1 AIX存储基本框架
3.2 AIX的存储概念要素
3.2.1 物理卷和卷组
3.2.2 逻辑卷和逻辑分区
3.2.3 AIX日志文件系统
3.2.4 文件系统挂载和目录树
3.3 系统存储结构的管理
3.3.1 系统中的卷组定义信息
3.3.2 增加、删除和设置卷组
3.3.3 卷组中物理磁盘的改变
3.3.4 卷组重组提高磁盘性能
3.3.5 卷组的活动状态管理
3.3.6 卷组的导入导出管理
3.3.7 逻辑卷的创建和维护
3.3.8 通过镜像保护逻辑卷
3.3.9 通过条带优化逻辑卷
3.3.10 物理卷的设置和管理
第4章 构建Oracle环境
第二篇 管理篇
第5章 在AIX中Oracle数据库管理
第6章 使用ASM跳过AIX卷空间管理
第7章 管理AIX下Oracle的空间使用
第三篇 灾备篇
第8章 设计和实施AIX系统备份
第9章 设计Oracle系统备份
第10章 实施Oracle系统备份
第11章 恢复崩溃的系统
第四篇 集群篇
第12章 构建AIX下的Oracle集群环境
第13章 在AIX中管理Oracle集群环境
第五篇 优化篇
第14章 在AIX上综合设置Oracle环境
第15章 AIX上Oracle系统的运行优化
第六篇 扩展篇
第16章 AIX上Oracle与Sybase的比较
Oracle大型数据库系统的前言
风,紧,
夜,深沉,
剑,已出鞘,
影,飘然前行!
本书的立意和内容
在服务器领域,IBM p系列服务器与AIX操作系统毫无疑问是UNIX服务器领域中的佼佼者,它代表着UNIX深刻的技术内涵和广泛的用户基础。同样地,Oracle是数据库领域事实上的市场领导者,众多IT应用系统采用了Oracle构架,运行Oracle数据库作为其数据支撑节点。目前Oracle用户已经可以升级其数据库到Oracle Database 11g Release 2版本。
实践上,运行在AIX上的Oracle数据库系统是诸多大中型系统的典型配置方式——用户得益于IBM AIX的坚固支撑,受惠于Oracle的可用性保证!
但凡事都有两面性,AIX是一套复杂的UNIX系统,Oracle则是一种“最难”的数据库。对于任何用户而言,了解、熟悉、运用、掌握两者的平台特征和工程技术手段,需要进行大量的学习、培训、实践以及长时间的磨练!广大数据库用户需要一种快捷的学习路径以及可参考资料来帮助他们构建、运行、维护乃至优化自己的系统!
本书的立意即在于此!本书以AIX UNIX平台为主线,以其他UNIX系统为参照,描述了数据库系统Oracle 10g、Oracle 11g的构架方法,说明了该数据库在AIX平台常用的诸多管理方面,提供了在AIX上实施Oracle集群的环境要素说明和实施方法,分析了服务器综合容灾的工程手段和技术方法,综合了在AIX系统上优化Oracle运行环境的诸多做法和要点。最后,本书还以AIX上Sybase ASE数据库系统为对比,论述了Oracle在AIX上的独到特征。
基于上述出发点,本书力争面向工程实践,并面向用户的实际需求展开论述。因此,本书并未刻意在学术上进行高、精、尖的探索,而是力争将复杂的事情简单化,把各技术要点以最简单的形式和大家能了解的方法摆在用户面前!
本书的读者群体
本书的目标读者是那些在UNIX上进行数据库开发、维护、管理、优化任务和高可用设置的工程技术人员,以及从事于这个尖端行业的人群。
从技术角度看,本书所涉及的内容全部是生产实践中必要的过程和阶段。因此,本书并没有试图去描绘一些新鲜热辣的炒作概念或遥不可及的无用内容,而是作为一种可以放在手边的技术专著面向大众,服务于系统用户95%的日常工作需求。正因如此,本书注重细节描述和过程说明,读者无须拥有非常深厚的专业技术基础。
当然,学习的热情和探索的精神是必不可少的!
本书的内容安排
本书共分为五篇,按照数据库项目实施中工作内容的不同方向进行了分组,各篇的内容分述如下。
第一篇 构架篇
本篇侧重在于系统的构架,以及构架中的相关要素和重点。 第1章 了解服务器运行环境
本章力图使读者站到一个足够高的层次和高度来看待服务器技术框架。站得高,则看得必远!
第2章 管理和维护服务器设备和服务
Oracle运行在AIX上,Oracle将使用AIX资源、调用AIX服务,受AIX的运行状态影响。
第3章 管理服务器存储
数据库服务器的一个典型特征就是大量使用磁盘空间来存储数据库数据。Oracle需要AIX提供的存储介质来存储数据。
第4章 构建Oracle环境
Oracle的环境构架相对复杂。用户需要掌握Oracle系统构架的具体工程细节,并获得动手能力。
第二篇 管理篇
本篇结合了AIX系统的诸多特点,综合论述了Oracle在AIX上管理的具体方法和实践行为规范。 第5章 在AIX中Oracle数据库管理
日常管理是一个管理员工作的大部分内容。本章描述了常用的管理内容和做法。
第6章 使用ASM跳过AIX卷空间管理
ASM是Oracle提出的存储管理最新的实施方法。Oracle推荐使用ASM来进行磁盘空间的管理。
第7章 管理AIX下Oracle的空间使用
空间管理是系统管理的重点。Oracle需要各种不同的空间要素,需要管理和维护。
第三篇 灾备篇
本篇站在服务器的层面,综合讲述了在AIX运行Oracle系统所需进行的备份管理工作,以及灾难恢复实施方法。 第8章 设计和实施AIX系统备份
服务器系统的备份工作必须能够兼顾操作系统、应用系统、数据库数据备份的各方面。AIX是备份中重要的一环。
第9章 设计Oracle系统备份
Oracle作为数据库系统,其备份方法和恢复手段与操作系统备份截然不同。按照规范的方法进行备份对恢复有着不言而喻的意义。
续表
第三篇 灾备篇
本篇站在服务器的层面,综合讲述了在AIX运行Oracle系统所需进行的备份管理工作,以及灾难恢复实施方法。 第10章 实施Oracle系统备份
工程上实施数据库备份的方法是百花齐放的。这里讨论了若干种具体实施方法和手段。
第11章 恢复崩溃的系统
防患于未然!好的备份系统是经过恢复测试的系统。让我们看看如何用备份进行系统恢复的!
第四篇 集群篇
在AIX平台上RAC集群是一种广泛使用的结构。本篇即针对集群展开讨论。 第12章 构建AIX下的Oracle集群环境
集群是实现Oracle系统网格与高可用的主要技术手段,尤其在AIX承担的关键业务系统中。
第13章 在AIX中管理Oracle集群环境
集群的管理有其自身特色,包括集群件管理、集群服务的管理。
第五篇 优化篇
好的系统需要进行预先的优化结构设计,并在系统运行中进行渐近的再优化。本篇以项目周期为阶段,描述了系统优化的各个过程和方面。 第14章 在AIX上综合设置Oracle环境
系统在构建时,要综合考虑可用性和性能之间的关系,并设置和优化系统。
第15章 AIX上Oracle系统的运行优化
在系统运行过程中,应用性能会随时变化,性能的检查和优化也需随时进行。动态地、渐进式地分析与调整也就十分必要。
第六篇 扩展篇
通过与Sybase ASE的对比来了解什么是Oracle。 第16章 AIX上Oracle与Sybase的比较
Sybase ASE与Oracle同为可在AIX上运行的数据库系统。两种产品中各有特点、各有优势、同样优秀。
本书从构思到最终完成,历时两年时间,其间更改数十稿。单独讲述UNIX不难,单独讲述Oracle不难,但把二者结合起来,站在整个系统的高度来说明问题,却让本书作者难以着手——千头万绪,该写的内容太多!
致谢
本书内容来源于实践,用户即是最佳的实践来源。感谢山东海化集团王凤鸣先生、中国电信青海公司陈宇峰先生、福建公司陈亮先生等人的鼎力支持。本书中若干技术观点和实践总结来源于作者为该单位提供数据库顾问服务的工作现场。感谢他们和作者在工作与技术领域上的不断探讨,这促进了本书内容的不断完善!
在本书编写过程中,很多复杂的、结构性的实验在北京时代朝阳数据库技术中心Trail实验室完成。北京时代朝阳数据库技术中心是一家有着17年企业历史的数据库专业技术机构,精于数据库产品与服务。这里有多样化的UNIX平台、各种集群构架、不同容灾环境等,这为本书所涉及的各项结构性实践提供了可能。感谢Trail实验室各位同事的配合。另外,考虑到本书在部分章节上存在一定难度,为保证本书的可读性,作者也请Trail实验室中参加Oracle职业/就业课程的若干学员试读了本书,感谢他们提出的诸多意见!
感谢本书策划编辑胡辛征先生的热心鼓励和积极推动,感谢文字编辑江立女士的细心编审和中肯点评。没有他们的细致工作和鼓励,本书不能顺利出版。
最后,感谢博文视点以知识传播的方式对中国IT产业的支持——以其广博文字选题,以其超然视点出版!
祝博文视点从成功走向辉煌!
本书作者:文平
2009-09-20于北京
目录第一篇 构架篇
第1章 了解服务器运行环境
1.1 AIX:一种成熟的UNIX
1.1.1 AIX系统构成要素
1.1.2 登录AIX系统
1.1.3 RS6000服务器结构
1.1.4 AIx系统管理界面
1.1.5 AIX中使用的Shell
1.1.6 AJx存储组织结构
1.1.7 AJx换页空间(交换区)
1.1.8 AIX文件系统结构
1.1.9 AJx对象数据管理
1.1.10 AIX当前进程运行
1.1.11 AIX用户访问过程
1.1.12 AIX各种服务提供
1.1.13 AIX网络通信设置
1.1.14 AIX中的常用操作
1.2 Oracle与AIx系统
1.2.1 Oracle与AIX的角色
1.2.2 Oracle系统典型特征
1.2.3 系统全局区SGA
1.2.4 程序全局区PGA
1.2.5 Oracle后台进程
1.2.6 Oracle数据库物理结构
1.2.7 数据库数据存放
1.2.8 数据库的用户访问
第2章 管理和维护服务器设备和服务
2.1 管理AIX中的设备
2.1.1 AIX使用设备类型
2.1.2 AIX的设备分层管理
2.1.3 ODM对象数据库
2.1.4 设备的状态特征查看
2.1.5 设备的配置和检测
2.1.6 设备属性信息查看
2.1.7 创建主机硬件配置档案
2.2 管理AIX中的服务
2.2.1 系统资源控制器的启动
2.2.2 系统资源的启动和关闭
2.2.3 系统资源的刷新
2.2.4 通常启动的资源
2.3 AIX系统错误处理
2.4 AIX系统硬件诊断
2.5 AIX系统日志查看
第3章 管理服务器存储
3.1 AIX存储基本框架
3.2 AIX的存储概念要素
3.2.1 物理卷和卷组
3.2.2 逻辑卷和逻辑分区
3.2.3 AIX日志文件系统
3.2.4 文件系统挂载和目录树
3.3 系统存储结构的管理
3.3.1 系统中的卷组定义信息
3.3.2 增加、删除和设置卷组
3.3.3 卷组中物理磁盘的改变
3.3.4 卷组重组提高磁盘性能
3.3.5 卷组的活动状态管理
3.3.6 卷组的导入导出管理
3.3.7 逻辑卷的创建和维护
3.3.8 通过镜像保护逻辑卷
3.3.9 通过条带优化逻辑卷
3.3.10 物理卷的设置和管理
第4章 构建Oracle环境
第二篇 管理篇
第5章 在AIX中Oracle数据库管理
第6章 使用ASM跳过AIX卷空间管理
第7章 管理AIX下Oracle的空间使用
第三篇 灾备篇
第8章 设计和实施AIX系统备份
第9章 设计Oracle系统备份
第10章 实施Oracle系统备份
第11章 恢复崩溃的系统
第四篇 集群篇
第12章 构建AIX下的Oracle集群环境
第13章 在AIX中管理Oracle集群环境
第五篇 优化篇
第14章 在AIX上综合设置Oracle环境
第15章 AIX上Oracle系统的运行优化
第六篇 扩展篇
第16章 AIX上Oracle与Sybase的比较
Oracle 数据库 数据文件 表 表空间 用户的关系
呵呵,问的好,这涉及到数据库的物理结构和逻辑结构。
首先,你需要明白的一点是:数据库的物理结构是由数据库的操作系统文件所决定,每一个Oracle数据库是由三种类型的文件组成:数据文件、日志文件和控制文件。数据库的文件为数据库信息提供真正的物理存储。
每一个Oracle数据库有一个或多个物理的数据文件(data file)。一个数据库的数据文件包含全部数据库数据。逻辑数据库结构(如表、索引等)的数据物理地存储在数据库的数据文件中。数据文件通常为*.dbf格式,例如:userCIMS.dbf。数据文件有下列特征:①、一个数据文件仅与一个数据库联系;②、一旦建立,数据文件只增不减;③、一个表空间(数据库存储的逻辑单位)由一个或多个数据文件组成。
其次,我们再来叙述一下Oracle的逻辑结构:Oracle的逻辑结构包括表空间(tablespace),段(segment),数据块(data block)以及模式对象(schema object)。
Oracle数据库在逻辑上是由多个表空间组成的,表空间在物理上包含一个或多个数据文件。而数据文件大小是块大小的整数倍;表空间中存储的对象叫段,比如数据段,索引段和回退段。段由区组成,区是磁盘分配的最小单位。段的增大是通过增加区的个数来实现的。每个区的大小是数据块大小的整数倍,区的大小可以不相同;数据块是数据库中的最小的I/O单位,同时也是内存数据缓冲区的单位,及数据文件存储空间单位。块的大小由参数DB_BLOCK_SIZE设置,其值应设置为操作系统块大小的整数倍。
⑴、表空间(tablespace)
表空间是数据库中最大的逻辑单位,每一个表空间由一个或多个数据文件组成,一个数据文件只能与一个表空间相联系。每一个数据库都有一个SYSTEM表空间,该表空间是在数据库创建或数据库安装时自动创建的,用于存储系统的数据字典表,程序系统单元,过程函数,包和触发器等,也可用于存储用户数据表,索引对象。表空间具有在线(online)和离线(offline)属性,可以将除SYSTME以外的其他任何表空间置为离线。
⑵、段(segment)
数据库的段可以分为四类:数据段、索引段、回退段和临时段。
⑶、区
区是磁盘空间分配的最小单位。磁盘按区划分,每次至少分配一个区。区存储与段中,它由连续的数据块组成。
⑷、数据块
数据块是数据库中最小的数据组织单位与管理单位,是数据文件磁盘存储空间单位,也是数据库I/O的最小单位,数据块大小由DB_BLOCK_SIZE参数决定,不同的Oracle版本DB_BLOCK_SIZE的默认值是不同的。
⑸、模式对象
模式对象是一种应用,包括:表、聚簇、视图、索引序列生成器、同义词、哈希、程序单元、数据库链等。
最后,在来说一下Oracle的用户、表空间和数据文件的关系:
一个用户可以使用一个或多个表空间,一个表空间也可以供多个用户使用。用户和表空间没有隶属关系,表空间是一个用来管理数据存储的逻辑概念,表空间只是和数据文件发生关系,数据文件是物理的,一个表空间可以包含多个数据文件,而一个数据文件只能隶属一个表空间。
总结一下:解释数据库、表空间、数据文件、表、数据的最好办法就是想象一个装满东西的柜子。数据库其实就是柜子,柜中的抽屉是表空间,抽屉中的文件夹是数据文件,文件夹中的纸是表,写在纸上的信息就是数据。
oracle中如何新建一个数据库
1、首先点击桌面左下角的开始菜单按钮在打开的选择窗口中找到图中的选项,点击打开窗口界面即可。
2、然后在如图所示的界面中选择创建数据库的选项,再点击next即可即可。
3、然后打开图中的设置窗口,选择第一项使用默认的配置然后按照提示输入对应的选项和验证信息即可。
4、这里是刚刚设置的信息选项,可以检查一些主要的信息确认后即可点击next按钮继续就是说开始创建了。
5、等待即可,中途不需要手动设置修改。数据库创建完成后,点击关闭按钮关闭创建向导界面,即可新建一个数据库。