当前位置首页 > 百科> 正文

Oracle资料库

2019-10-28 04:24:29 百科
Oracle资料库

Oracle资料库

Oracle Database,又名Oracle RDBMS,或简称Oracle。是甲骨文公司的一款关係资料库管理系统。它是在资料库领域一直处于领先地位的产品。可以说Oracle资料库系统是目前世界上流行的关係资料库管理系统,系统可移植性好、使用方便、功能强,适用于各类大、中、小、微机环境。它是一种高效率、可靠性好的 适应高吞吐量的资料库解决方案。

基本介绍

  • 中文名:Oracle资料库
  • 外文名:Oracle Database
  • 别名:Oracle RDBMS
  • 简称:Oracle
  • 优点:数据安全性强,稳定性强

系统简介

ORACLE资料库系统是美国ORACLE公司(甲骨文)提供的以分散式资料库为核心的一组软体产品,是目前最流行的客户/伺服器(CLIENT/SERVER)或B/S体系结构的资料库之一。比如SilverStream就是基于资料库的一种中间件。ORACLE资料库是目前世界上使用最为广泛的资料库管理系统,作为一个通用的资料库系统,它具有完整的数据管理功能;作为一个关係资料库,它是一个完备关係的产品;作为分散式资料库它实现了分散式处理功能。但它的所有知识,只要在一种机型上学习了ORACLE知识,便能在各种类型的机器上使用它。
Oracle资料库最新版本为Oracle Database 12c。Oracle资料库12c 引入了一个新的多承租方架构,使用该架构可轻鬆部署和管理资料库云。此外,一些创新特性可最大限度地提高资源使用率和灵活性,如Oracle Multitenant可快速整合多个资料库,而Automatic Data Optimization和Heat Map能以更高的密度压缩数据和对数据分层。这些独一无二的技术进步再加上在可用性、安全性和大数据支持方面的主要增强,使得Oracle资料库12c 成为私有云和公有云部署的理想平台。

支持平台

在2001年发布的Oracle9i之前,甲骨文公司把他们的资料库产品广泛的移植到了不同的平台上。近期,甲骨文公司巩固了一小部分的作业系统平台。
截止至2015年01月,甲骨文公司的Oracle10g/11g/12c支持以下的作业系统和硬体:
· AppleMac OS X Server:PowerPC
· HPHP-UX:PA-RISC,Itanium
· HPTru64 UNIX:Alpha
· HPOpenVMS: Alpha, Itanium
· IBMAIX5L:IBM POWER
· IBMz/OS:zSeries
· Linux:x86,x86-64, PowerPC, zSeries, Itanium
· MicrosoftWindows: x86, x86-64, Itanium
· SunSolaris:SPARC, x86, x86-64

特点

1、完整的数据管理功能:
1)数据的大量性
2)数据的保存的持久性
3)数据的共享性
4)数据的可靠性
2、完备关係的产品:
1)信息準则---关係型DBMS的所有信息都应在逻辑上用一种方法,即表中的值显式地表示;
2)保证访问的準则
3)视图更新準则---只要形成视图的表中的数据变化了,相应的视图中的数据同时变化
4)数据物理性和逻辑性独立準则
3、分散式处理功能:
ORACLE资料库自第5版起就提供了分散式处理能力,到第7版就有比较完善的分散式资料库功能了,一个ORACLE分散式资料库由oraclerdbms、sql*Net、SQL*CONNECT和其他非ORACLE的关係型产品构成。
4、用ORACLE能轻鬆的实现数据仓库的操作。
这是一个技术发展的趋势,不在这里讨论。
优点
■ 可用性强
■ 可扩展性强
■ 数据安全性强
■ 稳定性强

工具简介

·Navicat for Oracle是一套专为Oracle设计的强大资料库管理及开发工具。它可以用于任何版本的Oracle资料库,并支持大部分Oracle的功能,包括触发器、索引、检视等。
·Toad for Oracle是一款老牌的Oracle开发管理工具,比任何一款Oracle开发管理工具功能更多,并针对使用者不同的角色有多个分支版本。版本包括:Toad DBA Suite for Oracle是一款专门为Oracle DBA管理Oracle资料库工具, Toad Development Suite for Oracle是一款专门为Oracle开发工具, Toad DBA Suite for Oracle – Exadata Edition是一款专门为Oracle Exadata一体伺服器及Oracle资料库管理工具, Toad DBA Suite for Oracle - RAC Edition是一款专门为Oracle搭建集群RAC的DBA管理工具

比较

在了解了ORACLE资料库后,我们有必要对ORACLE和Sybase SQL Server的比较, Oracle採用的是并行伺服器模式,而Sybase SQL Server採用的是虚拟伺服器模式,它没有将一个查询分解成多个子查询,再在不同的CPU上同时执行这些子查询。我们可以说在对称多处理方面Oracle的性能优于Sybase的性能。业务量往往在系统运行后不断提高,如果资料库数量达到GB以上时,我们在提高系统的性能方面可以从两方面入手,一种是提高单台伺服器的性能,还有就是增加伺服器数目。基于此,如果我们是提高单台伺服器的性能,选择Oracle 资料库较好,因为它们能在对称多CPU的系统上提供并行处理。相反,由于Sybase的导航伺服器使网上的所有用户都注册到导航伺服器并通过导航服务提出数据访问请求,导航伺服器则将用户的请求分解,然后自动导向由它所控制的多台SQL Server,从而在分散数据的基础上提供并行处理能力,我们可以选择它。这些都是在其他条件和环境相同的情况下比较的,这样才有可比性。在数据的分布更新方面,Oracle採用的是基于伺服器的自动的2PC(两阶段提交),而Sybase採用的则是基于客户机DB-Library或CT-Library的可程式的2PC,因此我们在选择资料库方面,必须根据需要进行选择,比如,从事的社会保险软体的开发,考虑到数据量大,并发操作比较多,实时性要求高,我们后台基本採取的是ORACLE资料库。Oracle伺服器由Oracle资料库和Oracle实例组成。Oracle实例由系统全局区记忆体结构和用于管理资料库的后台进程组成。

就业前景

从就业与择业的角度来讲,计算机相关专业的大学生从事oracle方面的技术是职业发展中的最佳选择。
其一、就业面广:ORACLE帮助拓展技术人员择业的广度,全球前100强企业99家都在使用ORACLE相关技术,中国政府机构,大中型企事业单位都能有ORACLE技术的工程师岗位,大学生在校期间兴趣广泛,每个人兴趣特长各异,不论你想进入金融行业还是电信行业或者政府机构,ORACLE都能够在你的职业发展中给你最强有力的支撑,成为你最贴身的金饭碗。
其二、技术层次深:如果期望进入IT服务或者产品公司(类似毕博、DELL、IBM等),Oracle技术能够帮助提高就业的深度。Oracle技术已经成为全球每个IT公司必选的软体技术之一,熟练掌握Oracle技术能够为从业人员带来技术套用上的优势,同时为IT技术的深入套用起到非常 关键的作用。掌握 Oracle技术,是IT从业人员了解全面信息化整体解决方案的基础。
其三、职业方向多:Oracle资料库管理方向、Oracle开发及系统架构方向、Oracle数据建模数据仓库等方向.

逻辑结构

它由至少一个表空间和资料库模式对象组成。这里,模式是对象的集合,而模式对象是直接引用资料库数据的逻辑结构。模式对象包括这样一些结构:表、视图、序列、存储过程、同义词、索引、簇和资料库链等。逻辑存储结构包括表空间、段和範围,用于描述怎样使用资料库的物理空间。
总之,逻辑结构由逻辑存储结构(表空间,段,範围,块)和逻辑数据结构(表、视图、序列、存储过程、同义词、索引、簇和资料库链等)组成,而其中的模式对象(逻辑数据结构)和关係形成了资料库的关係设计。
oracle 资料库逻辑结构oracle 资料库逻辑结构
段(Segment):
是表空间中一个指定类型的逻辑存储结构,它由一个或多个範围组成,段将占用并增长存储空间。
其中包括:
数据段:用来存放表数据;
索引段:用来存放表索引;
临时段:用来存放中间结果;
回滚段:用于出现异常时,恢复事务。
範围(Extent):是资料库存储空间分配的逻辑单位,一个範围由许多连续的数据块组成,範围是由段依次分配的,分配的第一个範围称为初始範围,以后分配的範围称为增量範围。
数据块(Block):
是资料库进行IO操作的最小单位,它与作业系统的块不是一个概念。oracle资料库不是以作业系统的块为单位来请求数据,而是以多个Oracle资料库块为单位。

档案结构

资料库的物理存储结构是由一些多种物理档案组成,主要有数据档案、控制档案、重做日誌档案、归档日誌档案、参数档案、口令档案、警告档案等。
控制档案:存储实例、数据档案及日誌档案等信息的二进制档案。alter system set control_files=‘路径’。V$CONTROLFILE。
数据档案:存储数据,以.dbf做后缀。一句话:一个表空间对多个数据档案,一个数据档案只对一个表空间。dba_data_files/v$datafile。
日誌档案:即Redo Log Files和Archivelog Files。记录资料库修改信息。ALTER SYSTEM SWITCH LOGFILE; 。V$LOG。
参数档案:记录基本参数。spfile和pfile。
警告档案:show parameter background_dump_dest---使用共享伺服器连线
跟蹤档案:show parameter user_dump_dest---使用专用伺服器连线

恢复技术

恢复意义

当我们使用一个ORACLE资料库时,总希望资料库的内容是可靠的、正确的,但由于计算机系统的故障(硬体故障、网路故障、进程故障和系统故障)影响资料库系统的操作,影响资料库中数据的正确性,甚至破坏资料库,使资料库中全部或部分数据丢失。因此当发生上述故障后,希望能重新建立一个完整的资料库,该处理称为资料库恢复。恢复子系统是资料库管理系统的一个重要组成部分。恢复处理随时随地所发生的故障类型所影响的结构而变化。

恢複方法

IMPORT方法:
利用IMPORT,将最后一次EXPORT出来的数据档案IMPORT到新的资料库中,这种方式可以将任何资料库对象恢复到它被导出时的状态,此后的变化将无法挽回。IMPORT的命令可以互动式进行,各参数的具体含义见Oracle EXP/IMP参数详解。这种方式适用于没有採用archive 模式的环境。
安全的恢複方法:
如果资料库运行在archive 模式下,那幺一旦资料库损坏则可以通过冷备份(热备份)和归档备份将资料库恢复到断点状态。
资料库控制档案恢复(假设所有控制档案均被破坏):
资料库基于档案系统: 利用作业系统的tar、cp等命令即可。
资料库基于裸设备:dd if=$ORACLE_BASE/con.bak of=/dev/rdrd/drd1 seek=12
资料库数据档案恢複数据及索引表空间、系统表空间的恢复:回拷相关的资料库档案和该数据档案备份以来所有生成的所有逻辑日誌档案并执行如下命令:
svrmgrl>startupmountsvrmgrl>alterdatabaserecoverautomatic
如果控制档案被破坏,则:
svrmgrl>alterdatabaserecoverusingbackupcontrofile;#按照提示输入log档案名称和redolog档案名称svrmgrl>alterdatabaseopenresetlogs;
资料库临时档案和回滚表空间的恢复:简单地offline drop 并重建即可 。
注意:如果资料库不运行在archive 模式下,则恢复只能恢复到上次备份时的状态。

安装过程

一、準备安装
基本都是按部就班。
使用的OS版本:OEL4
[oracle@ractestorcl]$cat/etc/redhat-releaseEnterpriseLinuxEnterpriseLinuxASrelease4(OctoberUpdate5)[oracle@ractestorcl]$cat/etc/enterprise-releaseEnterpriseLinuxEnterpriseLinuxASrelease4(OctoberUpdate5)
安装程式路径:
/mnt/Oracle11g_linux_x86_64/database
创建用户
groupadd-g1001dbagroupadd-g1002oinstalluseradd-u10000-gdba-Goinstall,dba-d/home/oracle-s/bin/bashoraclechownRoracle:dba/home/oracleusermod-gdba-Goinstall,dbaoracle
使用的.bash_profile
exportORACLE_BASE=/home/oracleexportORACLE_HOME=$ORACLE_BASE/11gexportORA_CRS_HOME=$ORACLE_BASE/crsexportORACLE_PATH=$ORACLE_BASE/common/oracle/sql:.:$ORACLE_HOME/rdbms/adminexportORACLE_SID=orcl1exportPATH=$ORACLE_HOME/bin:$ORA_CRS_HOME/bin:${PATH}:$HOME/binexportPATH=${PATH}:/usr/bin:/bin:/usr/bin/X11:/usr/local/binexportPATH=${PATH}:$ORACLE_BASE/common/oracle/binexportORACLE_TERM=xtermexportTNS_ADMIN=$ORACLE_HOME/network/adminexportORA_NLS10=$ORACLE_HOME/nls/dataexportLD_LIBRARY_PATH=${LD_LIBRARY_PATH}:/lib:/usr/lib:/usr/local/lib:$ORACLE_HOME/oracm/lib:$ORACLE_HOME/libexportLIBPATH=$LIBPATH:$ORA_CRS_HOME/lib:$ORACLE_HOME/libexportCLASSPATH=${CLASSPATH}:$ORACLE_HOME/rdbms/jlib:$ORACLE_HOME/jlib:$ORACLE_HOME/network/jlib:$ORACLE_HOME/JREexportTHREADS_FLAG=nativeexportTEMP=/tmpexportTMPDIR=/tmpexportNLS_LANG=american_america.WE8ISO8859P1exportDISPLAY=10.198.90.55:2aliassysdba="sqlplus'/assysdba'"exportEDITOR=vi
修改的核心参数:
kernel.shmall = 2097152
kernel.shmmax = 2 147483648
kernel.shmmni = 4096
fs.file-max = 65536
net.ipv4.ip_local_port_range = 1024 65000
net.core.rmem_default=262144
net.core.wmem_default=262144
net.core.rmem_max=262144
net.core.wmem_max=262144
使用xclock检查display正确:
代码:
[oracle@ractest~]$xclock[oracle@ractest~]$/mnt/Oracle11g_linux_x86_64/database[oracle@ractest~]$cd/mnt/Oracle11g_linux_x86_64/database[oracle@ractestdatabase]$ls-l
total 10
drwxr-xr-x 4 1003 oinstall 96 Mar 23 18:45 doc
drwxr-xr-x 5 1003 oinstall 1024 Mar 23 18:45 install
drwxr-xr-x 2 1003 oinstall 1024 Mar 23 18:45 response
-rwxr-xr-x 1 1003 oinstall 1251 Mar 23 18:45 runInstaller
drwxr-xr-x 12 1003 oinstall 1024 Mar 23 18:45 stage
-rw-r--r-- 1 1003 oinstall 4638 Mar 23 18:45 welcome.html
[oracle@ractestdatabase]$./runInstaller
Starting Oracle Universal Installer...
Checking installer requirements...
Checking operating system version: must be redhat-3, SuSE-9,
redhat-4, UnitedLinux-1.0, asianux-1 or asianux-2
Passed
All installer requirements met.
Preparing to launch Oracle Universal Installer from
/tmp/OraInstall2007-06-28_02-26-12AM. Please wait ...
[oracle@ractest database]$ Oracle Universal Installer, Version 11.1.0.2.0 Production
Copyright (C) 1999, 2007, Oracle. All rights reserved.
Oracle Universal Installer, Version 11.1.0.2.0 Production
Copyright (C) 1999, 2007, Oracle. All rights reserved.
启动图形以后选择basic&n
选择oracle base的时候,oracle不推荐使用user home作为oracle base,这里我选yes忽略
进行prerequirements检查的时候,安装程式认为swap不足,我选择YES忽略
执行提示脚本,安装完毕
代码:
[oracle@ractestdatabase]$[oracle@ractestdatabase]$su-rootPassword:[root@ractest~]#/home/oracle/oraInventory/orainstRoot.sh
Changing permissions of /home/oracle/oraInventory to 770.
Changing groupname of /home/oracle/oraInventory to dba.
The execution of the script is complete
[root@ractest~]#/home/oracle/11g/root.sh
Running Oracle 11g root .sh script...
The following environment variables are set as:
ORACLE_OWNER= oracle
ORACLE_HOME= /home/oracle/11g
Enter the full pathname of the local bin directory: [/usr/local/bin]:
Copying dbhome to /usr/local/bin ...
Copying oraenv to /usr/local/bin ...
Copying coraenv to /usr/local/bin ...
Creating /etc/oratab file...
Entries will be added to the /etc/oratab file as needed by
Database Configuration Assistant when a database is created
Finished running generic part of root .sh script.
Now product-specific root actions will be performed.
Finished product-specific root actions.
安装完毕。
声明:此文信息来源于网络,登载此文只为提供信息参考,并不用于任何商业目的。如有侵权,请及时联系我们:baisebaisebaise@yeah.net