
完整的Oracle数据库通常由两部分组成 Oracle数据库实例和数据库
)数据库是一系列物理文件的集合(数据文件 控制文件 联机日志 参数文件等)
)Oracle数据库实例则是一组Oracle后台进程/线程以及在服务器分配的共享内存区
在启动Oracle数据库服务器时 实际上是在服务器的内存中创建一个Oracle实例(即在服务器内存中分配共享内存并创建相关的后台内存) 然后由这个Oracle数据库实例来访问和控制磁盘中的数据文件 Oracle有一个很大的内存快 成为全局区(SGA)
一 数据库 表空间 数据文件
数据库
数据库是数据集合 Oracle是一种数据库管理系统 是一种关系型的数据库管理系统
通常情况了我们称的 数据库 并不仅指物理的数据集合 他包含物理数据 数据库管理系统 也即物理数据 内存 *** 作系统进程的组合体
数据库的数据存储在表中 数据的关系由列来定义 即通常我们讲的字段 每个列都有一个列名 数据以行(我们通常称为记录)的方式存储在表中 表之间可以相互关联 以上就是关系模型数据库的一个最简单的描述
当然 Oracle也是提供对面象对象型的结构数据库的最强大支持 对象既可以与其它对象建立关系 也可以包含其它对象 关于OO型数据库 以后利用专门的篇幅来讨论 一般情况下我们的讨论都基于关系模型
表空间 文件
无论关系结构还是OO结构 Oracle数据库都将其数据存储在文件中 数据库结构提供对数据文件的逻辑映射 允许不同类型的数据分开存储 这些逻辑划分称作表空间
表空间(tablespace)是数据库的逻辑划分 每个数据库至少有一个表空间(称作SYSTEM表空间) 为了便于管理和提高运行效率 可以使用一些附加表空间来划分用户和应用程序 例如 USER表空间供一般用户使用 RBS表空间供回滚段使用 一个表空间只能属于一个数据库
每个表空间由同一磁盘上的一个或多个文件组成 这些文件叫数据文件(datafile) 一个数据文件只能属于一个表空间 在Oracle 以后 数据文件创建可以改变大小 创建新的表空间需要创建新的数据文件 数据文件一旦加入到表空间中 就不能从这个表空间中移走 也不能与其它表空间发生联系
如果数据库存储在多个表空间中 可以将它们各自的数据文件存放在不同磁盘上来对其进行物理分割 在规划和协调数据库I/O请求的方法中 上述的数据分割是一种很重要的方法
Oracle数据库的存储结构分为逻辑存储结构和物理存储结构
)逻辑存储结构 用于描述Oracle内部组织和管理数据的方式
)物理存储结构 用于描述Oracle外部即 *** 作系统中组织和管理数据的方式
二 Oracle数据库实例
为了访问数据库中的数据 Oracle使用一组所有用户共享的后台进程 此外 还有一些存储结构(统称为System Gloabl Area 即SGA) 用来存储最近从数据库查询的数据 数据块缓存区和SQL共享池(Shared SQL Pool)是SGA的最大部分 一般占SGA内存的 %以上 通过减少对数据文件的I/O次数 这些存储区域可以改善数据库的性能
Oracle数据库实例(instance)也称作服务器(server) 是用来访问数据库文件集的存储结构及后台进程的集合 一个数据库可以被多个实例访问(这是Oracle并行服务器选项)
lishixinzhi/Article/program/Oracle/201311/17362
配置详细信息 转载
在本文提供的示例中,源服务器配置有控制域和一个托管 Oracle 数据库的来宾域(名为 ldg1)。控制域名为
primary,也是一个 I/O 域。此外,控制域还用作服务域,为来宾域提供虚拟设备服务(虚拟磁盘和虚拟网络)。
作为服务域,控制域提供以下虚拟设备服务:
一个虚拟磁盘服务 (primary-vds0),将物理磁盘作为虚拟磁盘导出到来宾域。
一个虚拟控制台集中器服务 (primary-vcc0),提供对来宾域虚拟控制台的访问。此服务使用端口范围 5000–5100
来访问虚拟控制台。
一个虚拟交换机服务 (primary-vsw0),与主网络接口 (nxge0)
关联。
软件安装和配置
按照以下步骤配置您的环境以便进行实时迁移。
安装 Oracle Solaris *** 作系统
新的 SPARC 服务器上预先安装了 Oracle Solaris。对于这些系统,应确保安装了相应的 Oracle Solaris
版本,并验证打了所需的补丁。
要在 SPARC 系统上重新安装 Oracle
Solaris,请参见 Oracle
Solaris 10 文档或 Oracle
Solaris 11 文档。在本文的示例中, *** 作系统安装在服务器的第一个内部磁盘上。
安装 Oracle Solaris 之后,可以配置并启用系统以使用 Oracle VM Server for SPARC 21 软件。
安装 Oracle VM
Server for SPARC 软件
新的 SPARC 服务器上也预先安装了 Oracle VM Server for SPARC 软件。对于这些系统,应确保安装了相应的 Oracle VM
Server for SPARC 版本,并验证打了所有需要的补丁。
如果在服务器上重新安装了 Oracle
Solaris,您可能必须重新安装 Oracle VM Server for SPARC 软件。参见 Oracle
VM 下载页面。
以下示例显示了在每台物理服务器上执行的 *** 作。每台服务器已经安装了 Oracle Solaris 和所需的补丁。
应确保系统固件与您计划安装的 Oracle VM
Server for SPARC 版本匹配。参见文档的 Oracle VM
Server for SPARC 21 版本说明 中的“所需软件和补丁”以及 Oracle VM Server for SPARC 21
管理指南 中的“升级系统固件”。
从 Oracle
VM 下载页面下载 Oracle VM Server for SPARC 21 软件。
解压缩存档文件。
安装 SUNWldmv
程序包。参见 Oracle VM Server for SPARC 21 管理指南 中的“在新系统上安装 Oracle VM Server
for SPARC 软件”。
primary# pkgadd -d OVM_Server_SPARC-2_1/Product SUNWldmv
配置存储阵列
Sun Storage 2540-M2 存储阵列连接到控制域,控制域将两个 LUN(LUN 0 和 LUN 1)作为虚拟磁盘导出到来宾域。
来宾域使用第一个 LUN (LUN 0) 作为 *** 作系统的系统磁盘,使用第二个 LUN (LUN 1) 作为存储 Oracle 数据库数据文件的磁盘。
配置控制域
安装 Oracle VM Server for SPARC 软件之后,重新配置当前系统使其成为控制域。在每台物理服务器上执行以下 *** 作:
创建一个虚拟控制台集中器 (vcc)
服务以供虚拟网络终端服务器后台程序 (vntsd) 使用,并作为所有逻辑域控制台的集中器。
primary# ldm add-vcc port-range=5000-5100 primary-vcc0 primary
创建虚拟磁盘服务器
(vds)。
primary# ldm add-vds primary-vds0 primary
创建一个虚拟交换机服务 (vsw)
以便在逻辑域中的虚拟网络 (vnet) 设备之间实现联网。
primary# ldm add-vsw net-dev=igb0 primary-vsw0 primary
使用 ldm
list-services 命令验证已经创建了这些服务,如清单 1 所示。
清单 1 验证服务
primary# ldm list-services primary
VDS
NAME VOLUME OPTIONS DEVICE
primary-vds0
VCC
NAME PORT-RANGE
primary-vcc0 5000-5100
VSW
NAME MAC NET-DEV DEVICE MODE
primary-vsw0 02:04:4f:fb:9f:0d nxge0 switch@0 prog,promisc
VCC
NAME LDOM PORT-RANGE
primary-vcc0 primary 5000-5100
VSW
NAME LDOM MAC NET-DEV ID DEVICE LINKPROP DEFAULT-VLAN-ID PVID VID
primary-vsw0 primary 00:14:4f:f8:28:c2 igb0 0 switch@0 1 1 1500 on
VDS
NAME LDOM VOLUME OPTIONS MPGROUP DEVICE
primary-vds0 primary
Oracle VM Server for SPARC 使用 SSL
对迁移流量进行加密,以保护敏感数据免受利用,并消除了对额外硬件和专用网络的需求;
当源计算机和目标计算机上的主域具有分配的加密单元时,迁移 *** 作的速度会增加。速度增加的原因在于可以将 SSL *** 作分流到加密单元。
注:SPARC T4 CPU
具有内置的加密指令,因此您不需要为 CPU 分配这些指令。
确定控制域中是否有加密设备。
primary# ldm list -o crypto primary
为控制域分配加密资源。
primary# ldm set-crypto 1 primary
为控制域分配 CPU 和内存。
您可以通过向源计算机上的主域中添加更多 CPU 来减少整体迁移时间。最好为每个主域至少分配 8 个 CPU。例如,以下命令为控制域分配 8 个 CPU 和
4 GB 内存。
primary# ldm start-reconf primary
primary# ldm set-vcpu 8 primary
primary# ldm set-memory 4G primary
重新启动系统。
primary# init 6
重新启动系统之后,启用 Oracle VM Server for SPARC 并为系统配置一个域:控制域
primary。在控制域中,您可以创建和配置其他域。
确保启用 Logical Domains Manager
(ldmd) 和虚拟网络终端服务器 (vntsd) 服务。
primary# svcadm enable ldmd
primary# svcadm enable vntsd
向服务处理器 (SP)
添加逻辑域计算机配置。例如,以下命令添加名为 initial 的配置。
primary# ldm add-config initial
验证该配置可以使用。
primary# ldm list-config
factory-default
initial [current]
配置来宾域
配置控制域之后,创建来宾域以用作 Oracle 数据库节点。在作为源计算机的物理服务器上,仅创建一个来宾域。另一台物理服务器最终将成为目标计算机。
最初使用以下资源创建来宾域 ldg1:
8 GB 内存。
24 个 CPU。
一个虚拟网络接口 (vnet0),它连接到虚拟交换机 primary-vsw0。
一个虚拟磁盘,它在来宾域中显示为 c0d0 并且是存储阵列中的一个 LUN。域 ldg1
使用存储阵列的 LUN 0 (c2t6d0)。
另一个虚拟磁盘,它在来宾域中显示为 c0d1 并且是存储阵列中的一个 LUN。域 ldg1
使用存储阵列的 LUN 1 (c2t6d1)。此虚拟磁盘用于存储 Oracle 数据库文件。
执行以下步骤创建每个来宾域:
在源计算机上,从控制域创建
ldg1 来宾域。
注:如果您的服务器不是基于
SPARC T4 的系统,则仅执行 ldm set-crypto 命令。
primary# ldm create ldg1
primary# ldm set-vcpu 24 ldg1
primary# ldm set-memory 8G ldg1
primary# ldm set-crypto 3 ldg1
primary# ldm add-vnet vnet0 primary-vsw0 ldg1
primary# ldm add-vdsdev /dev/dsk/c2t6d0s2 vol1@primary-vds0
primary# ldm add-vdisk vol1 vol1@primary-vds0 ldg1
primary# ldm add-vdsdev /dev/dsk/c2t6d1s2 oradata@primary-vds0
primary# ldm add-vdisk oradata oradata@primary-vds0 ldg1
创建域之后,在源计算机上使用以下命令从控制域绑定并启动来宾域。
primary# ldm bind ldg1
primary# ldm start ldg1
确定域的控制台端口。
primary# ldm ls ldg1
NAME STATE FLAGS CONS VCPU MEMORY UTIL UPTIME
ldg1 active -n---- 5000 24 8G 00% 1h 1m
使用 telnet 命令访问
ldg1 域的控制台。
primary# telnet localhost 5000
启动来宾域之后,确保在来宾域中安装了相应的 Oracle Solaris *** 作系统和补丁。您可以通过网络、从 DVD 或使用 DVD ISO
映像来执行安装。参见 Oracle VM Server for SPARC 21 管理指南。
注:LUN
通常在不同服务器上以不同名称显示。控制域中的 LUN 名称不需要相同。但是,两个系统上的控制域必须使用相同的卷名(vol1 和
oradata)对相同的 LUN(LUN 0 和 LUN 1)进行虚拟化。
清单 2 的示例显示了如何为名为 ldg1 的域配置 8 个 CPU、24 GB 内存以及 Sun Storage
2540-M2 存储阵列中的两个 LUN。
清单 2 域配置示例 primary# ldm ls -l ldg1
NAME STATE FLAGS CONS VCPU MEMORY UTIL UPTIME
ldg1 active -n---- 5000 24 8G 00% 1h 1m
SOFTSTATE
Solaris running
MAC
00:14:4f:fb:96:89
HOSTID
0x84fb9689
CONTROL
failure-policy=ignore
DEPENDENCY
master=
VCPU
VID PID UTIL STRAND
0 16 02% 100%
1 17 00% 100%
2 18 05% 100%
3 19 00% 100%
4 20 00% 100%
5 21 00% 100%
6 22 01% 100%
7 23 00% 100%
8 24 01% 100%
9 25 00% 100%
10 26 00% 100%
11 27 00% 100%
12 28 00% 100%
13 29 00% 100%
14 30 00% 100%
15 31 00% 100%
16 32 00% 100%
17 33 00% 100%
18 34 00% 100%
19 35 00% 100%
20 36 00% 100%
21 37 00% 100%
22 38 00% 100%
23 39 01% 100%
MEMORY
RA PA SIZE
0x8000000 0x408000000 8G
VARIABLES
boot-device=vdisk1
keyboard-layout=US-English
NETWORK
NAME SERVICE ID DEVICE MAC MODE PVID VID MTU LINKPROP
vnet1 primary-vsw0@primary 0 network@0 00:14:4f:f9:c0:62 1 1500
DISK
NAME VOLUME TOUT ID DEVICE SERVER MPGROUP
vdisk1 vol1@primary-vds0 0 disk@0 primary
oradata oradata@primary-vds0 1 disk@1 primary
VCONS
NAME SERVICE PORT
ldg1 primary-vcc0@primary 5000
清单 3 的示例显示了控制域的配置。使用 ldm list-services
命令验证已经创建了这些服务。
清单 3 控制域配置示例 primary# ldm ls-services primary
VCC
NAME LDOM PORT-RANGE
primary-vcc0 primary 5000-5100
VSW
NAME LDOM MAC NET-DEV ID DEVICE LINKPROP DEFAULT-VLAN-ID
primary-vsw0 primary 00:14:4f:f9:32:b0 nxgeg0 0 switch@0 1 1
VDS
NAME LDOM VOLUME OPTIONS MPGROUP DEVICE
primary-vds0 primary vol1 /dev/dsk/c2t6d0s2
oradata /dev/dsk/c2t6d1s2
在来宾域中安装 Oracle Solaris
确保在来宾域中安装了相应的 Oracle Solaris 版本,并验证打了所需的补丁。
在来宾域中安装 Oracle Solaris 之后,可以配置并启用系统使其使用 Oracle 数据库。
安装 Oracle Database
Oracle Database 软件的安装类似于标准 Oracle Database 安装。首先安装 Oracle
Database,然后应用最新补丁集。使用第二个 LUN 创建 UFS 或 ZFS 文件系统用于存储 Oracle 数据库数据文件。
有关针对 Oracle 数据库使用 ZFS
的更多信息,请参见针对
Oracle 数据库配置 Oracle Solaris ZFS。
准备目标服务器
按如下方式准备目标服务器。
执行以下各节中所述的步骤来准备目标计算机:
安装 Oracle VM
Server for SPARC 软件
配置控制域
确保在目标服务器上提供了供待迁移域使用的所有虚拟 I/O 服务。
确保目标服务器有权访问同一存储中的 LUN 0 和 LUN
1。
要将第一个 LUN (LUN 0) 和第二个 LUN (LUN 1) 添加到目标计算机,从目标服务器的控制域执行以下命令:
# ldm add-vdsdev /dev/dsk/c2t6d0s2 vol1@primary-vds0
# ldm add-vdsdev /dev/dsk/c2t6d1s2 oradata@primary-vds0
注:LUN
通常在不同服务器上以不同名称显示。控制域中的 LUN 名称不需要相同。但是,两个系统上的控制域必须使用相同的卷名(vol1 和
oradata)对相同的 LUN(LUN 0 和 LUN 1)进行虚拟化。
确保待迁移域中的每个虚拟网络设备在目标计算机上都有一个对应的虚拟网络交换机:
# ldm add-vsw net-dev=nxge0 primary-vsw0 primary
Oracle数据库的三种标准的备份方法:
1导出/导入(EXP/IMP)。
2热备份。
3冷备份。
注释:导出备件是一种逻辑备份,冷备份和热备份是物理备份。
一、导出/导入(Export/Import)
利用Export可将数据从数据库中提取出来,利用Import则可将提取出来的数据送回到Oracle数据库中去。
1、简单导出数据(Export)和导入数据(Import)
Oracle支持三种方式类型的输出:
(1)、表方式(T方式),将指定表的数据导出。
(2)、用户方式(U方式),将指定用户的所有对象及数据导出。
(3)、全库方式(Full方式),瘵数据库中的所有对象导出。
数据导入(Import)的过程是数据导出(Export)的逆过程,分别将数据文件导入数据库和将数据库数据导出到数据文件。
2、增量导出/导入
增量导出是一种常用的数据备份方法,它只能对整个数据库来实施,并且必须作为SYSTEM来导出。在进行此种导出时,系统不要求回答任何问题。导出文件名缺省为exportdmp,如果不希望自己的输出文件定名为exportdmp,必须在命令行中指出要用的文件名。
增量导出包括三种类型:
(1)、“完全”增量导出(Complete)
即备份三个数据库,比如:
expsystem/==040731dmp
(2)、“增量型”增量导出
备份上一次备份后改变的数据,比如:
expsystem/==040731dmp
(3)、“累积型”增量导出
累计型导出方式是导出自上次“完全”导出之后数据库中变化了的信息。比如:
expsystem/==040731dmp
数据库管理员可以排定一个备份日程表,用数据导出的三个不同方式合理高效的完成。
比如数据库的被封任务可以做如下安排:
星期一:完全备份(A)
星期二:增量导出(B)
星期三:增量导出(C)
星期四:增量导出(D)
星期五:累计导出(E)
星期六:增量导出(F)
星期日:增量导出(G)
如果在星期日,数据库遭到意外破坏,数据库管理员可按一下步骤来回复数据库:
第一步:用命令重新生成数据库结构;
第二步:创建一个足够大的附加回滚。
第三步:完全增量导入A:
impsystem/=RESTOREFULL=yFILE=A
第四步:累计增量导入E:
impsystem/=RESTOREFULL=YFILE=E
第五步:最近增量导入F:
impsystem/=RESTOREFULL=YFILE=F
二、冷备份
冷备份发生在数据库已经正常关闭的情况下,当正常关闭时会提供给我们一个完整的数据库。冷备份时将关键性文件拷贝到另外的位置的一种说法。对于备份Oracle信息而言,冷备份时最快和最安全的方法。冷备份的优点是:
1、是非常快速的备份方法(只需拷文件)
2、容易归档(简单拷贝即可)
3、容易恢复到某个时间点上(只需将文件再拷贝回去)
4、能与归档方法相结合,做数据库“最佳状态”的恢复。
5、低度维护,高度安全。
但冷备份也有如下不足:
1、单独使用时,只能提供到“某一时间点上”的恢复。
2、再实施备份的全过程中,数据库必须要作备份而不能作其他工作。也就是说,在冷备份过程中,数据库必须是关闭状态。
3、若磁盘空间有限,只能拷贝到磁带等其他外部存储设备上,速度会很慢。
4、不能按表或按用户恢复。
如果可能的话(主要看效率),应将信息备份到磁盘上,然后启动数据库(使用户可以工作)并将备份的信息拷贝到磁带上(拷贝的同时,数据库也可以工作)。冷备份中必须拷贝的文件包括:
1、所有数据文件
2、所有控制文件
3、所有联机REDOLOG文件
4、Initora文件(可选)
值得注意的使冷备份必须在数据库关闭的情况下进行,当数据库处于打开状态时,执行数据库文件系统备份是无效的。
下面是作冷备份的完整例子。
(1)关闭数据库
sqlplus/nolog
sql
sql
(2)用拷贝命令备份全部的时间文件、重做日志文件、控制文件、初始化参数文件
sql
(3)重启Oracle数据库
sql
三、热备份
热备份是在数据库运行的情况下,采用方式备份数据库的方法。所以,如果你有昨天夜里的一个冷备份而且又有今天的热备份文件,在发生问题时,就可以利用这些资料恢复更多的信息。热备份要求数据库在Archivelog方式下 *** 作,并需要大量的档案空间。一旦数据库运行在archivelog状态下,就可以做备份了。热备份的命令文件由三部分组成:
1数据文件一个表空间一个表空间的备份。
(1)设置表空间为备份状态
(2)备份表空间的数据文件
(3)回复表空间为正常状态
2备份归档log文件
(1)临时停止归档进程
(2)log下那些在目标目录中的文件
(3)重新启动archive进程
(4)备份归档的redolog文件
3用命令来备份控制文件
热备份的优点是:
1可在表空间或数据库文件级备份,备份的时间短。
2备份时数据库仍可使用。
3可达到秒级恢复(恢复到某一时间点上)。
4可对几乎所有数据库实体做恢复
5恢复是快速的,在大多数情况下爱数据库仍工作时恢复。
热备份的不足之处:
1不能出错,否则后果不堪设想。
2假如热备份不成功,所得结果则不能用于时间点的恢复。
3因为难于维护,所以需要特别仔细小心,不允许在 *** 作时半途而废。
关于Oracle数据库的备份方式就为大家讲解到这里,以后大家需要进行数据库备份工作时可以参照上文中讲解的,从上文中任选一种,就可以完成Oracle数据库的备份,希望上文中涉及到的内容对大家能够有所帮助。
会。
开启强制日志模式后,Oracle数据库会将所有的修改 *** 作都写入重做日志文件(RedoLog),以确保数据的持久性和安全性。当数据库发生宕机等异常情况时,可以通过回放重做日志来恢复数据,保证数据不丢失。因此,在强制日志模式下,Oracle数据库会写日志。
在Oracle数据库中,强制日志模式(FORCELOGGING)是一种设置,它可以强制所有的数据库 *** 作都写入日志文件中。
以上就是关于Oracle数据库实例及其相关概念全部的内容,包括:Oracle数据库实例及其相关概念、如何使用Sqluldr2将Oracle数据直接导入其它数据库、ORACLE数据库如何备份数据最好是备份哪些东西(oracle怎么备份数据库)等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)