Oracle从新手到高手
上QQ阅读APP看书,第一时间看更新

1.5 初识Oracle 12c

Oracle数据库系统是一种通用的数据库系统,具有完整的数据管理功能。同时,它也是目前最流行的客户机/服务器(CLIENT/SERVER)或B/S体系结构的数据库之一。

1.5.1 Oracle数据库概述

Oracle数据库系统是美国ORACLE(甲骨文)公司提供的以分布式数据库为核心的一组软件产品,是目前最流行的客户机/服务器(CLIENT/SERVER)或B/S体系结构的数据库之一,也是目前世界上使用最广泛的数据库管理系统。

1. Oracle简介

Oracle数据库作为一个通用的数据库系统,具有完整的数据管理功能;作为一个关系数据库,它是一个完备关系的产品;而作为一个分布式数据库,它则可以实现分布式处理功能。

Oracle数据库的最新版本为Oracle Database 12c,该版本引入了一个新的多承租方架构,使用该架构可轻松部署和管理数据库云。除此之外,该版本还提供了一些创新特性,可最大限度地提高资源的使用率和灵活性。例如,该版本软件可快速整合多个数据库,并通过Automatic Data Optimization和Heat Map以更高的密度压缩数据并对数据进行分层。这些新技术加上在可用性、安全性和大数据支持方面的增强功能,使Oracle 12c成为私有云和公有云部署的理想平台。

在Oracle9i版本之前,甲骨文公司便已将数据库产品广泛移植到了不同的平台上,截至2015年1月,Oracle 10g/11g/12c版本可以支持以下的操作系统和硬件。

※ Apple Mac OS X Server:PowerPC

※ HP HP-UX:PA-RISC,Itanium

※ HP Tru64 UNIX:Alpha

※ HP OpenVMS:Alpha,Itanium

※ IBM AIX5L:IBM POWER

※ IBM z/OS:zSeries

※ Linux:x86,x86-64,PowerPC,zSeries,Itanium

※ Microsoft Windows:x86,x86-64,Itanium

※ Sun Solaris:SPARC,x86,x86-64

2. Oracle特点和优点

随着Oracle产品的不断完善,其特点和优点也越来越明显。在优点方面,Oracle具有可用性强、可扩展性强、数据安全性强以及稳定性强等优点。而在特点方面,Oracle产品则具有下列4个方面的优点。

完整的数据管理功能

① 数据的大量性。

② 数据保存的持久性。

③ 数据的共享性。

④ 数据的可靠性。

完备关系的产品

① 信息准则:关系型DBMS的所有信息都应在逻辑上使用一种方法。

② 保证访问的准则。

③ 视图更新准则:视图对应表中的数据变化时,其对应的视图中的数据也会随之一起变化。

④ 数据物理性独立准则。

⑤ 数据逻辑性独立准则。

分布式处理功能

Oracle数据库具备分布式处理能力,其分布式数据库由oraclerdbms、SQL*Net、SQL*CONNECT和其他非Oracle的关系型产品构成。

实现数据仓库操作

在Oracle数据库中,可以轻松实现数据库的操作。

3. Oracle 12c版本

Oracle 12c针对不同的人群开发了企业版、标准版和标准1版,每种版本的具体说明如下。

※ Enterprise Edition(企业版):企业版为数据库功能最全、扩展性最好的版本,例如包含闪回数据库功能。

※ Standard Edition(标准版):标准版提供了企业版的一个功能子集,包含了小业务中所需要的功能,以及集群服务。

※ Standard Edition One(标准1版):该版本提供了与标准版完全相同的功能,但不包含RAC类的企业版功能,其应用可以完全兼容企业版。

1.5.2 安装Oracle 12c

随着新版本的发布,Oracle的安装程序也越来越简单,用户只需要解压下载文件便可以执行安装了。在Windows和Linux服务器上安装Oracle的过程类似,用户只需要执行setup. exe安装程序,系统便会加载并初步检验系统配置,并进行下一步安装。

然后,在弹出的【配置安全更新】选项卡中,禁用【我希望通过My Oracle Support接收安全更新】复选框,并单击【下一步】按钮。

此时,系统会弹出【未指定My Oracle Support用户名/电子邮件地址】对话框,单击【是】按钮即可。

在弹出的【选择安装选项】选项卡中,选中【创建和配置数据库】选项,并单击【下一步】按钮。

此时,在弹出的选项卡中,选中【桌面类】选项,并单击【下一步】按钮。

在弹出的选项卡中,选中【创建新Windows用户】选项,分别在【用户名】、【口令】和【确认口令】文本框中输入相关内容,并单击【下一步】按钮。

在弹出的选项卡中,输入【全局数据库名】和【管理口令】,并单击【下一步】按钮。该处的密码设置需要高强度,包括大小写字母和数字。

此时,系统会弹出选项卡,检查安装需求和环境。

上一步检查没有出现问题后,会自动进入下一个选项卡,单击【安装】按钮,便可以安装Oracle了。需要注意的是,在安装过程中最好关闭“360安全卫士”或其他杀毒软件。

Oracle的安装时间较长,需要用户耐心等待。等安装到创建数据库实例时,会自动弹出Database Configuration Assistant对话框。

成功安装数据库实例之后,会弹出有关口令管理的对话框,在该对话框中显示了一些数据库的基础信息和进入地址。单击【口令管理】按钮,准备设置登录口令。

在弹出的【口令管理】对话框中,显示了需要锁定或解锁的账户。在此,用户可以使用系统内的账户和口令,也可以自定义账户或口令,设置完成后单击【确定】按钮后返回安装窗口。

安装完成后,会显示安装地址,单击【关闭】按钮即可。

Oracle安装完成后,会在系统中进行服务注册,此时需要保证OracleOraDB-12Home1TNSListener和OracleServiceORCL服务器为启动状态。

1.5.3 Oracle 12c的新特性

相对于旧版本软件来讲,Oracle 12c新增了一些新特性,这些新特性可以使开发人员、数据库管理员和最终用户能够更好地控制数据的存储、处理和检索。

Oracle 12c中的新特性主要包括内存选件、开发者工具、大数据SQL功能及多租户等。

1. 数据库内存选件(In-Memory Option)

在Oracle 12c中,正式引用了基于内存和列式计算的In-Memory Option(简称IMO)。IMO的特效可以使用内存中的列存处理实现下列4个目标。

※ 增快SQL全表扫描处理速度:该功能可以将SQL全表扫描的处理速度增加10~100倍,对于简单的扫描可以达到每秒扫描10亿行数据,而对于简单的连续过滤谓词的少量数据的扫描速度也可以达到每秒1亿行的速度。

※ 增快复杂SQL的处理速度:该功能可以提高10倍或更多倍在绝大多数场景中的处理速度,其聚集、排序和分组的速度也会随之增加。

※ 增快事务处理速度:该功能可以提高DML操作—单行DML和批量DML的运行速度,其中单行的处理速度主要来源于降低10倍的索引维护。

※ 应用程序的完全透明化:该功能对于应用程序可以完全透明化,类似于OLTP压缩。所有的Oracle特性均可以与in-memory option一起工作,包括partitioning、indexes、text indexes等,而不会存在明确的数据类型或存储类的限制。

2. Oracle JSON文档存储

Oracle 12c还具有支持Oracle JSON文档的存储功能,客户可以在Oracle关系型数据库中存储JSON文档数据,同时还可以使用SQL或REST接口对JSON文档数据进行查询。

3. 多租户(Multienant)功能改进

Oracle 12c还对多租户(Multienant)功能进行了一系列的改进,简化了云端的数据整合,称为“多租户数据库”。也就是说,改进后的该功能可以在云平台上,将不同的租户整合到一个大的CDB数据库中运行,而彼此之间的数据(PDB)与应用可以完全隔离。

4. 属性聚类功能

Oracle 12c新增了属性聚类(Attribute Clustering)功能,该功能可以确保数据库中相应列以最接近的方式进行存储,以加快数据的访问速度。

5. 快速资源调配功能

Oracle 12c新增了快速资源调配(Rapid Home Provisionign)功能,该功能可以简化数据库维护、升级以及云环境下多租户数据库的资源调配等操作。

除了上述5个重要新特性之外,Oracle 12c还具有下列新特性。

※ Oracle Pluggable Database:Oracle 12c中的Oracle PDB体系结构是由一个容器数据库(CDB)和多个可组装式数据库(PDB)构成的,而PDB包含独立的系统表空间和SYSAUX表空间等,并共享CDB的控制文件、日志文件和UNDO表空间。

※ 数据优化:Oracle 12c新增了ILM(数据生命周期管理)功能,添加了“数据库热图”(Database heat map),可以在视图中查看数据的利用率,并可自动实现数据的在线压缩和数据分级。

※ 增强了统计信息:Oracle 12c的动态统计信息增加到了第11层,使动态统计数据的收集功能更加强大。除此之外,还增加了混合统计信息功能、数据加载过程收集统计信息的功能,以及增加了临时表的会话私有统计信息功能。

※ PL/SQL性能增强:Oracle 12c中通过WITH语句在SQL中定义函数的方法增强了PL/SQL性能,该功能类似于在匿名块中定义过程。

※ 改进了多种数据类型的长度限制:Oracle 12c放宽了多种数据类型的长度限制,增加了VARCHAR2、NVARCHAR2和RAW类型的长度到32K。

※ 行模式匹配:该功能类似于分析函数功能,可以在行间对数据进行匹配判断并进行计算。

1.5.4 Oracle 12c管理工具

安装Oracle 12c后,便可以着手创建数据库了。但在创建数据库之前,还需要了解一些常用的Oracle管理工具,这既是对安装结果的验证,也是对Oracle数据库操作的基础。

1. Oracle Enterprise Manager

Oracle Enterprise Manager(OEM)提供了基于Web界面的、可用于管理单个Oracle数据库的工具。由于Oracle Enterprise Manager采用基于Web的应用,它对数据库的访问也采用了HTTP/HTTPS协议,即使用三层结构访问Oracle数据库系统。

在成功安装Oracle后,OEM也同时安装完毕。使用Oracle 12c OEM时只需要启动浏览器,输入OEM的URL地址(如https://localhost:5500/em/login),然后在打开的浏览器中输入用户名和口令,并单击【登录】按钮。

在弹出的浏览器页面中,用户就可以体验Oracle 12c的数据库功能了。

由于OEM以图形化方式提供用户对数据库的操作,避免了学习大量命令的麻烦,因此,对于初学者而言,最常用的操作方法就是通过OEM对数据库进行操作。但是,通过在SQL*Plus中运行相应的命令,可以更好地理解Oracle数据库。

2. SQL*Plus

在Oracle数据库系统中,用户对数据库的操作主要是通过SQL*Plus工具来实现的。SQL*Plus作为Oracle的客户端工具,可以建立位于相同服务器上的数据库连接,或者建立位于网络中不同服务器的数据库连接。SQL*Plus工具可以满足Oracle数据库管理员的大部分需求。

执行【开始】|【程序】|【SQL*Plus】命令,打开SQL*Plus的登录界面,输入相应的用户名和口令(如SYSTEM,这是由用户在创建数据库时指定的)后,按Enter键,SQL*Plus将连接数据库。

用户也可以在【运行】窗口中输入CMD命令,打开命令提示窗口,并在窗口中输入SQLPLUS命令启动SQL*Plus工具,运行该命令的语法如下。

     sqlplus [username]/[password] [@server] [ as sysdba | as sysoper]

其中,username用于指定数据库用户名;password用于指定用户口令;@server用于指定网络服务名;as sysdba表示以sysdba特权登录。当连接本地数据库时,不需要提供网络服务名。

3. DBCA(创建数据库)

如果在安装Oracle数据库服务器系统时,选择仅安装Oracle数据库服务器软件,而不创建数据库,在这种情况下要使用Oracle系统还必须创建数据库。如果在系统中已经存在Oracle数据库,为了使Oracle数据库服务系统充分利用服务器的资源,建议不要在该计算机上再创建一个数据库。

DBCA(Database Configuration Assistant)是Oracle提供的一个具有图形化用户界面的工具,数据库管理员(DBA)通过它可以快速、直观地创建数据库。DBCA中内置了几种典型数据的模板,通过使用数据库模板,用户只需要做很少的操作就能够完成数据库的创建工作。

使用DBCA创建数据库时只需要执行【开始】|【程序】|【Database Configuration Assistant】命令,打开如下对话框,根据DBCA的提示逐步进行设置,即可根据相应的配置创建数据库。