
1.安装前的预处理
在安装Oracle之前首先要处理一下安装文件,如果不处理的话,在先决条件检查那一
步, *** 作系统会通不过检查,这样就无法继续安装下去了,处理办法是,打开安装文件中的
database\stage\prereq\db\refhost.xml,打开这个refhost.xml,在里面添加这么一段,如图:
其中,那个 <!—Micorosoft Windows 7-->可以不用,但接下来的三行必须得要,这样安装就
能继续下去了。
2.开始安装
以管理员方式运行安装文件中的install 目录中的 oui.exe,必须以管理员身份运行,否则,
配置完后将不能安装就直接退出了。运行后的界面如图:
在这个界面等一下就进入下一个界面:
在这里直接点下一步,出现如下图所示的界面:
在这里选企业版,还可以选择语言,然后下一步,出现下图的界面:
这里可以更改安装的目录,我是默认的,下一步:
这里条件检查通过了,可以看到,有个6.1,就是win 7的版本号,刚刚的处理起的作用就
在这里。然后点下一步:
这里也不用管,直接点下一步就是了。
选择一般 用途/事物处理 ,下一步:
这里要配置数据库名和SID,这两个要记下来,以后要用的。输入自己满意的名字后点下一
步:
在这里把 创建带样本方案的数据库 这个选项勾上,在安装好后系统会有一个数据库。下
一步:
这里还是选择默认的,下一步:
默认,下一步:
默认,下一步:
这里选 所有的账户都使用同一个口令,输入自己的口令后,下一步:
这里因为没有账号,所以默认,下一步:
在这里看看,如果没问题的话,就点安装了。
当点击安装后,就出现了如下图的界面:
安装一定程度的界面:
在这里安装了一半了,接下来就是配置了:
开始配置数据库:
数据库创建完成,这一步要配置一下用户,点口里管理,如下图:
点了口令管理后出现如下图的界面:
在这里把scott用户的锁定去掉,设置一个密码,如:tiger ,设置好后点完成,就完成了Oracle
11g的安装,安装结束如下图:
点击 退出 结束安装,至此安装全部结束。
至此Win 7 安装 Oracle 11g完美成功。
一. Oracle OLAP 组件 说明有关Oracle 的所有组件的说明,参考:
Oracle8i/9i/10g/11g 组件(Components) 说明
联机分析处理OLAP(On-Line Analytical Processing), 也称DSS决策支持系统。OLAP是数据仓库系统的主要应用,支持复杂的分析 *** 作,侧重决策支持,并且提供直观易懂的查询结果。
OLAP是Oracle数据库企业版的一个多维分析引擎,采用oracle数据库来存储OLAP数据和元数据。
在OLAP中,语句的执行量不是考核标准,因为一条语句的执行时间可能会非常长,读取的数据也非常多。所以,在这样的系统中,考核的标准往往是磁盘子系统的吞吐量(带宽),如能达到多少MB/s的流量。
更多内容参考:
OracleOLAP 与 OLTP 介绍
在添加OLAP 组件的情况下,如果我们做32到64位的DB迁移,都会需要重建OLAP 组件,否则就会导致大量的无效对象的存在。 而这个重建工作又需要近40分钟,所以是个很耗时间的过程。
Oracle OLAP是Oracle企业版的一个可选件,由于将OLAP引擎完全集成进了Oracle数据库,所以,所有数据和元数据都是从Oracle数据库内部进行存储和管理的,以提供高度可伸缩性、强健的管理环境及工业级可用性和安全性。
1.1 OLAP 组件
可以使用如下SQL 查看OLAP组件的状态和版本信息:
SQL>column comp_name format a35
SQL>col version for a15
SQL>set wrap off
--Oracle11g:
SQL>select comp_name, version, statusfrom dba_registry where comp_name like '%OLAP%'
COMP_NAME VERSION STATUS
-------------------------------------------------- ----------------------
OLAP Analytic Workspace 11.2.0.3.0 INVALID
Oracle OLAP API 11.2.0.3.0 VALID
OLAP Catalog11.2.0.3.0 VALID
--Oracle 10g:
SYS@ wangou >select comp_name, version,status from dba_registry where comp_name like '%OLAP%'
COMP_NAME VERSION STATUS
-------------------------------------------------- ----------------------
OLAP Analytic Workspace 10.2.0.5.0 VALID
Oracle OLAP API 10.2.0.5.0 VALID
OLAP Catalog10.2.0.5.0 VALID
Oracle OLAP主要包括以下组件:
(1)OLAP Analytic Engine
Oracle的OLAP分析引擎是一个基于多维模型的MOLAP引擎,运行在Oracle内核中,因此拥有良好的性能。
(2)Analytic Workspace
分析工作区中实际存储多维模型的数据。一个Analytic Workspace存储为一个关系表,分析工作区中的不同对象存储为表中的一行(LOB格式)。分析工作区甚至可以存储在分区表中,以提供更好的并发性能。
(3)OLAP DML
OLAP DML是Analytic Workspace的原始 *** 作语言,包括关于Analytic Workspace的数据定义语言(DDL)和数据 *** 作语言(DML)。对于Analytic Workspace的所有 *** 作方式,比如GUI工具,java和SQL等方式,最终都要转化为Oracle DML语言。
(4)SQL Interface to OLAP
提供使用SQL *** 作AnalyticWorkspace的接口,该接口使用PL/SQL实现。
(5)Analytic Workspace Java API
提供使用Java *** 作AnalyticWorkspace的接口。在GUI工具Analytic Workspace Manager中使用的就是该接口。
(6)OLAP API
Oracle OLAP的一个Java编程接口,支持OracleBI Bean。
1.2 Oracle OLAP的两个客户端工具:
(1)Analytic Workspace Manager
这是Oracle提供的一个 *** 作AnalyticWorkspace的一个图形工具。使用该工具可以快速的完成诸如定义数据的逻辑多维模型、创建多维数据到关系数据的映射、装载和聚合数据等任务。
(2)OLAP Worksheet
OLAP Worksheet提供了 *** 作Analytic Workspace的一个交互式环境。有点类似于Oracle数据库的SQLPLUS工具。
1.3 Active Catalog View(活动目录视图)
Active CatalogView,活动目录视图,是Oracle为OLAP用户提供的一系列动态视图,用于提供分析工作区(Analytic Workspace)中的对象信息。Analytic workspace是用户session和Oracle OLAP引擎交互所必须的接口,也是dimension,cube的对象的容器。
在Oracle OLAP中,Analytic workspace的概念有点类似与数据库中的schema,也是一组相关对象的集合。但是Analytic workspace会使用一个名为aw$name的table来实际的存储analyticworkspace中的对象 (dimension,cube,level,attribute等)。有时候,我们可能需要将一个analytic workspace从一个系统迁移到另外一个系统,也可能需要将一个analytic workspace的内容迁移到另外一个analytic workspace中,利用Analytic Workspace Manager可以在图形界面下完成该任务,首先将一个aw导出为EIF文件,然后将EIF导入到另外一个aw即可。
OLAP 多维模型中的一些主要对象,如dimension(维度),measure(度量),cube(数据立方体),hierarchy(层 次),level(层),attribute(属性)等,都有对应的活动目录视图,根据视图的名字基本可以判断该视图中的内容,Oracle10g所有的 活动目录视图都以ALL_OLAP2_AW开头:
(1)ALL_OLAP2_AWS
(2)ALL_OLAP2_AW_ATTRIBUTES
(3)ALL_OLAP2_AW_CATALOGS
(4)ALL_OLAP2_AW_CATALOG_MEASURES
(5)ALL_OLAP2_AW_CUBES
(6)ALL_OLAP2_AW_CUBE_AGG_LVL
(7)ALL_OLAP2_AW_CUBE_AGG_MEAS
(8)ALL_OLAP2_AW_AGG_OP
(9)ALL_OLAP2_AW_CUBE_AGG_SPECS
(10) ALL_OLAP2_AW_CUBE_DIM_USES
(11) ALL_OLAP2_AW_CUBE_MEASURES
(12) ALL_OLAP2_AW_DIMENSIONS
(13) ALL_OLAP2_AW_DIM_HIER_LVL_ORD
(14) ALL_OLAP2_AW_DIM_LEVELS
(15) ALL_OLAP2_AW_PHYS_OBJ
(16) ALL_OLAP2_AW_PHYS_OBJ_PROP
除了活动目录视图,Oracle也提供了几个动态性能视图,用于展示OLAP对象的一些统计信息,这些DynamicPerformance View都以V$AW开头:
(1)v$aw_aggregate_op
(2)v$aw_allocate_op
(3)v$aw_calc
(4)v$aw_longops
(5)v$aw_olap
(6)v$aw_session_info
以上理论知识转自ningoo的blog:
http://www.ningoo.net/html/2007/introduction_of_oracle_olap_component.html
二. 添加删除OLAP 组件
MOS: How To Remove Or To Reinstall TheOLAPOption To 10g And 11g [ID 332351.1]
这里提供了2种解决方法:
2.1 在ORACLE_HOME 级别重建
2.1.1 删除OLAP
备份DB和oraInventory,在关闭ORACLE_HOME上的所有Instance,使用Universal Installer (OUI) 移除ORACLE_HOME的OLAP 选项。在OUI 中选择升级已经存在的db,在selectoptions 选项可以控制是否启用OLAP。如下图:
在Unix 和Linux 平台上,也可以直接relink olap_off 的方式来删除,这样就避免使用OUI。
cd $ORACLE_HOME/rdbms/lib
make -f ins_rdbms.mk olap_off
make -f ins_rdbms.mk ioracle
非注册的OLAP将不在db 的banner 中限制,同时v$option 也会显示为FALSE.
2.1.2 重新安装OLAP
1)在OUI中添加OLAP 组件,参考上图。
2)添加完毕之后执行如下脚本,在db 级别进行添加。
sqlplus /nolog
SQL>conn /as sysdba
SQL>spool add_olap.log
SQL>@?/olap/admin/olap.sql SYSAUX TEMP
SQL>@?/rdbms/admin/utlrp.sql
SQL>spool off
2.2 在Database 级别重建
2.2.1 删除OLAP
--在dbserver 上开一个session,设定相关的变量,并用sys 用户执行如下脚本:
ORACLE_HOME=your_oracle_home
ORACLE_SID=your_db_sid
PATH=$ORACLE_HOME/bin:$PATH
sqlplus /nolog
SQL>conn / as sysdba
---->Remove OLAP Catalog
SQL>@?/olap/admin/catnoamd.sql
---->Remove OLAP API
SQL>@?/olap/admin/olapidrp.plb
SQL>@?/olap/admin/catnoxoq.sql
---->Deinstall APS - OLAP AW component
SQL>@?/olap/admin/catnoaps.sql
SQL>@?/olap/admin/cwm2drop.sql
---->Recompile invalids
SQL>@?/rdbms/admin/utlrp.sql
catnoamd.sqlusedabove will drop the OLAPSYS schema (which is completely OLAP specific).
--catnoamd.sql 脚本用来drop OLAPSYS 用户。
cwm2drop.sqlneedsto be run only in 11g. In 10g, catnoamd.sql already calls it.
--cwm2drop.sql 只需要在11g中执行。在10g中,catnoamd.sql脚本中已经包含了该脚本,所以不用执行。
If you connectto the database in SQLPLUS, the banner still shows the OLAPoption,this happensbecause the Oracle executable is still aware of OLAP, it islinked with OLAP, andalso the OLAP files are still present in the ORACLE_HOME.
Once runningthedeinstall scripts, the utlrp.sql could report invalid objects with SYSandPUBLIC owners. If so, the following SQL can be used to report more detailsonthat:
--删除之后,可能导致一些无效的对象,可以使用如下SQL 来查看具体信息:
SQL>select owner,object_name,object_type, status from dba_objects where status='INVALID'
You could getsome invalid objects under SYS and PUBLIC owner, and they are the oldduplicate OLAPSYS objects copied under these schemas when Olap has beeninstalledpreviously.
Generally,the Olap objects are named with context like %OLAP%, %AWM%, or other Olap wordkeys intheir "object_name" field, however, if it needs a help torecognizethem, then please contact Oracle Support and create a ServiceRequest toget assistance for this question.
Notethat catnoadm.sql could fail from 10.1.0.5 to 11.1.0.7 release.
Due to the fact that it refers to three scripts which don't get shipped until 11.2this scriptwill fail.
Besides that it will error on 7 non-existing synonyms to drop.
Prior 11.2, execute thesethree drop synonym statements:
--在11.2 之前,需要执行如下脚本:
SQL>drop public synonym OlapFactView
SQL>drop public synonym OlapDimView
SQL>drop public synonym DBMS_ODM
If therearefurther invalid OLAP specific objects after the above removal steps,pleaseconsult Note1060023.1, Note565773.1
If you do notwant to install OLAP into a newly created database, then in theDatabaseConfiguration Assistant (dbca), select a custom database template anduncheckOracle OLAP in the Database Components wizard step.
2.2.2 添加OLAP
Assuming that youcreated your database manually or via DBCA, add the OLAP option to anexistingEnterprise Edition Database.
--假设我们在ORACLE_HOME级别添加了OLAP。
Then openaterminal session on the database server machine, set ORACLE_HOME,ORACLE_SIDenvironment variables, and execute some script. as user SYS AS SYSDBA,detailsbelow:
--在dbserver 端用SYS 用户执行如下脚本,来创建olap。
ORACLE_HOME=your_oracle_home
ORACLE_SID=your_db_sid
PATH=$ORACLE_HOME/bin:$PATH
sqlplus /nolog
SQL>conn /as sysdba
SQL>@?/olap/admin/olap.sql SYSAUX TEMP
--这个脚本需要30+分钟
三. 验证无效对象和组件状态
SQL>select count(*) from dba_invalid_objects
COUNT(*)
----------
67
如果有无效对象,使用如下脚本编译:
SQL>@?/rdbms/admin/utlrp.sql
SQL>col comp_id for a15
SQL>col version for a15
SQL>col comp_name for a30
SQL>select comp_id,comp_name,version,status from dba_registry
COMP_ID COMP_NAME VERSION STATUS
--------------------------------------------- --------------- -----------------
EM Oracle Enterprise Manager 11.2.0.3.0 VALID
AMD OLAP Catalog 11.2.0.3.0 VALID
SDO Spatial11.2.0.3.0 VALID
ORDIM Oracle Multimedia 11.2.0.3.0 INVALID
XDB Oracle XML Database11.2.0.3.0 INVALID
CONTEXT Oracle Text11.2.0.3.0 VALID
ODMOracle Data Mining 11.2.0.3.0 VALID
EXF Oracle Expression Filter 11.2.0.3.0 VALID
RUL Oracle Rules Manager 11.2.0.3.0 VALID
OWM Oracle Workspace Manager 11.2.0.3.0 VALID
CATALOG Oracle Database Catalog Views 11.2.0.3.0 VALID
COMP_ID COMP_NAME VERSION STATUS
--------------------------------------------- --------------- -----------------
CATPROC Oracle Database Packages and T11.2.0.3.0 INVALID
JAVAVM JServer JAVA Virtual Machine 11.2.0.3.0 VALID
XML Oracle XDK 11.2.0.3.0 VALID
CATJAVA Oracle Database Java Packages 11.2.0.3.0 VALID
APS OLAP Analytic Workspace11.2.0.3.0 INVALID
XOQ Oracle OLAP API11.2.0.3.0 VALID
17 rows selected.
供内部支持人员使用以更有效地跟踪SQL.这个包没有正式的说明文件,默认情况下,系统不安装这个包。假如需要使用的话,需进行单独设置。在你的$ORACLE_HOME/rdbms/admin/目录下应该存在dbmssupp.sql,PRvtsupp.plb这两个文件。SQL>connect/assysdbaConnected.SQL>@$ORACLE_HOME/rdbms/admin/dbmssupp.sqlPackagecreated.Packagebodycreated.SQL>假如要其他用户也可以使用这个包,可以考虑提交如下授权 *** 作(PUBLIC可以替换为具体的用户)并创建同义词:SQL>GRANTEXECUTEONdbms_supportTOPUBLIC;GrantsUCceeded.SQL>CREATEPUBLICSYNONYMdbms_supportFORdbms_support;DBMS_SUPPORT的结构并不复杂:SQL>descDBMS_SUPPORTFUNCTIONMYSIDRETURNSNUMBERFUNCTIONPACKAGE_VERSIONRETURNSVARCHAR2PROCEDURESTART_TRACEArgumentNameTypeIn/OutDefault?WAITSBOOLEANINDEFAULTBINDSBOOLEANINDEFAULTPROCEDURESTART_TRACE_IN_sessionArgumentNameTypeIn/OutDefault?SIDNUMBERINSERIALNUMBERINWAITSBOOLEANINDEFAULTBINDSBOOLEANINDEFAULTPROCEDURESTOP_TRACEPROCEDURESTOP_TRACE_IN_SESSIONArgumentNameTypeIn/OutDefault?SIDNUMBERINSERIALNUMBERINSQL>其中通过MYSID可以获得当前会话(Session)的SID(以及serial#):SQL>SELECTSYS.dbms_support.mysidFROMDUAL;MYSID25SQL>SQL>SELECTSID,serial#FROMv$sessionWHERESID=dbms_support.mysid;SIDSERIAL#254328SQL>通过package_version可以得到软件包所能支持的最低的PL/SQL的版本:SQL>SELECTdbms_support.package_version2FROMdual;PACKAGE_VERSIONDBMS_SUPPORTVersion1.0(17-Aug-1998)-RequiresOracle7.2-8.0.5如何激活SQL跟踪?START_TRACE有两个参数:WAITS和BINDS.其中WAITS默认为TRUE,BINDS默认为FALSE.假如简单的提交:SQL>EXECUTEdbms_support.start_trace;则默认激活10046事件,level1.也即等同于:SQL>ALTERSESSIONSETEVENTS'10046tracenamecontextforever,level1';假如提交:SQL>EXECUTEdbms_support.start_trace(BINDS=>true);则激活10046事件,level4.等同于:SQL>ALTERSESSIONSETEVENTS'10046tracenamecontextforever,level4';假如提交:SQL>EXECUTEdbms_support.start_trace(WAITS=>true);则激活10046事件,level8.等同于:SQL>ALTERSESSIONSETEVENTS'10046tracenamecontextforever,level8';停止跟踪提交:SQL>EXECUTEdbms_support.stop_trace;start_trace_in_session有四个参数,可参考上面DESCRIBE的输出。假如要跟踪其他用户的会话,就要用上它了。以上面的输出举例(需要SID和SERIAL#):SQL>EXECUTEdbms_support.start_trace_in_session(25,4328,waits->true,binds=>true,);上面这条命令和以下语句起到同样功能:SQL>EXECUTEdbms_system.set_ev(25,4328,10046,4,8);停止跟踪提交:SQL>EXECUTEdbms_support.stop_trace_in_session(25,4328);其他问题这个包从OracleRDBMS7.2开始就有提供。但在某些版本/平台上可能不存在。欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)