Oracle Database也叫Oracle数据库,是甲骨文公司以高级结构化查询语言(SQL)为基础设计的大型关系数据库,通俗地讲它是用方便逻辑管理的语言操纵大量有规律数据的集合。Oracle系统采用的是并行服务器模式,能在对称多CPU的系统上提供并行处理,拥有可移植性强、可用性强、可扩展性强数据安全性强和高稳定性等优点,能适应高吞吐量的数据库,适用于各类大、中、小、微机环境,是目前最流行的客户/服务器(CLIENT/SERVER)体系结构的数据库之一。
美国甲骨文公司在2013年6月26日发布了
Oracle Database 12c正式版,版本号是12.1.0.1.0,提供的下载平台有windows、Linux、Solaris,这次的命名用了c而不是以前的g(grid),c代表cloud(云计算)的意思。Oracle 12c新增了诸多的新特性(在下面有详细介绍),在数据类型、分区表、统计信息、数据优化等方面都有所改进,在功能上确实比上一版本要强很多。
Oracle 12c安装教程(这里小编以windows安装为例)
1、分别解压“winx64_12c_database_1of2.zip“和“winx64_12c_database_2of2.zip”,将解压出来的“database”目录合并。
2、双击“setup.exe",软件会加载并初步校验系统是否可以达到了数据库安装的最低配置,如果达到要求,就会直接加载程序并进行下一步的安装
3、“配置安全更新”,取消“我希望通过My Oracle Support接受安全更新”,单击“下一步”
4、安装时请连接网络,当然这里选择跳过更新就可以了,点击“下一步”。注:此处出现延迟并错误请查看下方“临时位置权限错误解决方案”
5、在“安装选项”窗口中,选择“创建和配置数据库”,单击“下一步”
6、根据介绍选择”桌面类”还是”服务器类”,选择”服务器类”可以进行高级的配置,这里选择”桌面类”,单击”下一步“
7、这项功能是专门管理oracle文件的,选择第二个”创建新windows用户“,输入用户名和口令,单击”下一步“
8、“典型安装”窗口中,选择Oracle的基目录,选择“企业版”和“默认值”,输入数据库名和密码(需要大写字母+小写字母+数字的形式),单击“下一步”
9、在“执行先决条件检查”窗口中,系统自动进行检查,通过后单击“下一步”
10、在上一步检查没有问题后,会生成安装设置概要信息,可以保持这些设置到本地,方便以后查阅,在这步确认后,单击”安装”,数据库通过这些配置将进行整个的安装过程
11、这是一个漫长的等待过程,注意:在安装过程中,最好将杀毒软件,安全卫士什么的都强行关闭
12、自动创建数据库实例,大约半个钟头
13、数据库实例安装成功后,会弹出口令管理,建议大家都设置一遍。选择“口令管理”,可以查看并修改以下用户:
(1)普通管理员:SYSTEM
(2)超级管理员:SYS
(3)修改完成后,单击“确定”。 这里的口令也是需要符合oracle口令规范的,参考前面设置数据库实例口令设置方式
14、安装完成,会出现如下界面,单击“关闭”即可
15、安装完成后,访问http://localhost:5500/em,输入用户名和密码,就可以查看数据库运行状态,进行新建表空间和用户配置了
16、服务设置Oracle完成安装后,如果出现EM页面打不开的情况。那么进入开始菜单《控制面板《所有控制面板项《管理工具《服务,确认以下两个服务已经启动,否则Oracle将无法正常运行:
(1)OracleOraDB12Home1TNSListener:表示监听服务,如果客户端要想连接到数据库,此服务必须打开,在程序开发中该服务也要起作用。
(2)OracleServiceORCL:表示数据库的主服务,命名规则:OracleService数据库名称。此服务必须打开,否则Oracle根本无法使用。
Oracle 12C临时位置权限错误解决方案
在Oracle 12C安装过程中,由于共享权限问题导致安装卡死,我们可以用以下办法解决:
1、控制面板>所有控制面板项>管理工具>服务>找到“SERVER”,检测是否处于启用状态
2、控制面板>所有控制面板项>管理工具>计算机管理>系统工具>共享文件夹>共享,右键单击“共享”>新建共享>
3、单击“浏览”>选择"本地磁盘(C:)">确定
4、“共享名”,输入:"C$" ,点击下一步
5、对权限进行相应的选择(选择第二项或第三项),单击“完成”,重新运行安装程序即可。
Oracle Database 12c新特性
1、PL/SQL性能增强:
类似在匿名块中定义过程,现在可以通过WITH语句在SQL中定义一个函数,采用这种方式可以提高SQL调用的性能。
2、改善Defaults:
包括序列作为默认值;自增列;当明确插入NULL时指定默认值;METADATA-ONLY default值指的是增加一个新列时指定的默认值,和11g中的区别在于,11g的default值要求NOT NULL列。
3、放宽多种数据类型长度限制:增加了VARCHAR2、NVARCHAR2和RAW类型的长度到32K,要求兼容性设置为12.0.0.0以上,且设置了初始化参数 MAX_SQL_STRING_SIZE为EXTENDED,这个功能不支持CLUSTER表和索引组织表;最后这个功能并不是真正改变了VARCHAR2的限制。
4、TOP N的语句实现:
在SELECT语句中使用“FETCH next N rows”或者“OFFSET”,可以指定前N条或前百分之多少的记录。
5、行模式匹配:
类似分析函数的功能,可以在行间进行匹配判断并进行计算。在SQL中新的模式匹配语句是“match_recognize”。
6、分区改进:
Oracle Database 12c中对分区功能做了较多的调整,Oracle ACE总监杨廷琨花了较大的篇幅对分区提升进行了解读,其中共分成6个部分:
INTERVAL-REFERENCE分区:把11g的interval分区和reference分区结合,这样主表自动增加一个分区后,所有的子表、孙子表、重孙子表、重重重...孙子表都可以自动随着外接列新数据增加,自动创建新的分区。
TRUNCATE和EXCHANGE分区及子分区:无论是TRUNCATE还是EXCHANGE分区,在主表上执行,都可以级联的作用在子表、孙子表、重孙子表、重重重...孙子表上同时运行。对于TRUNCATE而言,所有表的TRUNCATE操作在同一个事务中,如果中途失败,会回滚到命令执行之前的状头。这两个功能通过关键字CASCADE实现。
在线移动分区:在移动的过程中,对表和被移动的分区可以执行查询、DML语句以及分区的创建和维护操作。整个移动过程对应用透明。这个功能极大的提高了整体可用性,缩短了分区维护窗口。
多个分区同时操作:可以对多个分区同时进行维护操作,比如将一年的12个分区MERGE到1个新的分区中,比如将一个分区SPLIT成多个分区。可以通过FOR语句指定操作的每个分区,对于RANGE分区而言,也可以通过TO来指定处理分区的范围。多个分区同时操作自动并行完成。
异步全局索引维护:对于非常大的分区表而言,UPDATE GLOBAL INDEX不再是痛苦。Oracle可以实现了异步全局索引异步维护的功能,即使是几亿条记录的全局索引,在分区维护操作,比如DROP或TRUNCATE后,仍然是VALID状态,索引不会失效,不过索引的状态是包含OBSOLETE数据,当维护操作完成,索引状态恢复。
部分本地和全局索引:Oracle的索引可以在分区级别定义。无论全局索引还是本地索引都可以在分区表的部分分区上建立,其他分区上则没有索引。当通过索引列访问全表数据时,Oracle通过UNION ALL实现,一部分通过索引扫描, 另一部分通过全分区扫描。这可以减少对历史数据的索引量,极大的增加了灵活性。
7、Adaptive执行计划:
拥有学习功能的执行计划,Oracle会把实际运行过程中读取到返回结果作为进一步执行计划判断的输入,因此统计信息不准确或查询真正结果与计算结果不准时,可以得到更好的执行计划。
8、统计信息增强:
动态统计信息收集增加第11层,使得动态统计信息收集的功能更强;增加了混合统计信息用以支持包含大量不同值,且个别值数据倾斜的情况;添加了数据加载过程收集统计信息的能力;对于临时表增加了会话私有统计信息。
9、临时UNDO:
将临时段的UNDO独立出来,放到TEMP表空间中,优点包括:减少UNDO产生的数量;减少REDO产生的数量;在ACTIVE DATA GUARD上允许对临时表进行DML操作。
10、数据优化:
新增了ILM(数据生命周期管理)功能,添加了“数据库热图”(Database heat map),在视图中直接看到数据的利用率,找到哪些数据是最"热"的数据。可以自动实现数据的在线压缩和数据分级,其中数据分级可以在线将定义时间内的数据文件转移到归档存储,也可以将数据表定时转移至归档文件。也可以实现在线的数据压缩。
11、应用连续性:
Oracle Database 12c之前RAC的FAILOVER只做到SESSION和SELECT级别,对于DML操作无能为力,当设置为SESSION,进行到一半的DML自动回滚;而对于SELECT,虽然FAILOVER可以不中断查询,但是对于DML的问题更甚之,必要要手工回滚。而Oracle Database 12c中Oracle终于支持事务的FAILOVER。
12、Oracle Pluggable Database:
Oracle PDB体系结构由一个容器数据库(CDB)和多个可组装式数据库(PDB)构成,PDB包含独立的系统表空间和SYSAUX表空间等,但是所有PDB共享CDB的控制文件、日志文件和UNDO表空间。
第2楼 陕西省西安市电信 网友
第1楼 四川省成都市电信 网友