上一篇: MyEclipse中消除frame引起的“the file XXX can not be found.Please check the location and try again.”的错误

本文经原作者特许授权于海洋女神发布,转载请务必注明出处与链接;原作者和海洋女神保留对该文的一切法律许可下的权益;需要发布在盈利性报刊、网站等请与原作者或海洋女神联系。
序言

这份文档并非本人所写,而是一位朋友在最近做了安装包以后总结出的教程,在此非常感谢这位朋友空白先生的无私分享。做一个工程也需要花不少时间,而写一篇文章甚至要花更多的时间,对于别人的劳动,如果每一个人都能够给予尊重,那么也许收获得会更多。

第一部分:前言
目标需求
实现 ESL——嵌入式软件许可
在安装过程中,需要安装我们的软件产品,并且安装Oracle 数据库。安装数据库之后
需要导入基础数据,创建指定的库,创建用户和表空间。在安装Oracle 数据时,必须实现
静默安装,不能出现GUI 界面,也不能暴露出安装参数。所有安装过程一次完成,无需用
户干预。
环境说明
操作系统——Windows XP SP3
安装工具——InstallShield 2009 — Premier Edition
数据库——Oracle 10G-R2

第二部分:配置Oracle
此过程需要对Oracle 进行相关的配置,包括录制Response 文件、制作带数据的模板、
调整安装脚本、解锁用户脚本,设置环境变量等操作。
录制 response文件
1. 运行CMD,在命令行窗口进入Oracle 所在路径,这里路径为D:\Orac\database,
Oracle10gserver.rsp是要保存的文件名。


2. 运行此命令后,Oracle安装界面被打开。
3. 去掉创建启动数据库
4. 在汇总信息出现时,退出安装界面,不进行安装。

5. 此时发现在D:\Orac\database 目录中出现了Oracle10gserver.rsp 文件,说明录制成功。该
文件存放的路径,我们后续将会在Install.bat中用到。
创建用户、表空间、导入基础数据
1. 在已有的同版本数据库中创建用户、表空间、导入基础数据
2. 使用 SQL系统账号登陆,并执行CreateDB.sql脚本。注意:脚本中的路径应该以实际的
数据路径为准。
3. 导入文件zgisexp.dmp 和zproexp.dmp。把此脚本存为CMD 文件,直接执行即可。
注意:脚本中的路径应该为实际dmp 文件存放的路径。另外此脚本为本单位的数据信息,
可不作为参考!

创建用户、表空间脚本:

制作带基础数据的模板
有了以上的数据,我们就开始制作数据的模板,以便建库的时候使用。
1. 创建数据库模板

2. 创建好后,我们会在<ORACLE_HOME>\assistants\dbca\templates\目录中,发现如下两个模板
文件。temp_10g.dbc temp_10.dfb
此处两个文件的作用是,按照数据库模板的形式创建数据库,无需在导入表,创建
用户和导入基础数据。这一步,先在已有的Oracle环境下完成。我们拷贝这两个文
件即可。
3. 修改temp_10g.dbc

安装脚本描述
在进行Oracle安装过程中,需要安装程序调用以下的脚本,以实现Oracle的安装过程。
1. Install.cmd 安装Oracle软件脚本
执行此脚本时,需要带以上的参数,具体参数后边会有说明。

2. copynetca.cmd 拷贝监听文件和模板文件,并创建监听服务脚本。

Ø 脚本中存在两个接收的变量,这个是从IS 中传出来的路径参数,必须存在。另外,模
板文件必须拷贝到指定的路径下,<Oracle_Home>\assistants\dbca\templates。
3. createDB.cmd 创建带模板数据的数据库脚本。
此脚本用于根据数据模板创建数据库,命令带如下的参数:

4. unlock.bat 用户解锁脚本
安装模板生成的数据库,其用户状态为锁定,需要执行解锁脚本。

其中change.sql为:

集合Oracle安装脚本
以上的4 个脚本是安装过程必备的4 个脚本,我们现在整理为一个批处理文件install.bat,
以便我们在制作安装包的时候调用该批处理。根据上述脚本的参数类型,我们把参数补完整。

Ø 脚本中存在一个接收的环境变量%DATABASEDIR%,这是由IS运行此程序带出来的参
数,此参数为安装的目标路径。
Ø %SOURPATH%这个参数虽然没有在BAT 文件中有任何的接收说明,但是在执行安装
过程中,IS会创建该参数在BAT文件头端,该参数为目标源路径地址。如何在IS中自
动创建该变量,在第三部份中说明。
Ø 以上的脚本分别调用了上边的4 个脚本,他们后边均带有参数。

Ok,现在已经完成了Oracle方面的设置,我们需要保留的文件为1+4个批处理文件、1 个.SQL
文件和两个模板文件。这些文件将会在IS或安装中被调用。
卸载脚本描述
1. deinstall.cmd 卸载oracle软件,该脚本的参数如下:

2. completeClean.cmd 清除相关文件和设置,该脚本的相关参数如下:

集合卸载脚本
Ø 以上两个脚本为卸载数据库所用,我们把他集合为一个批处理,以方便IS调用。
Ø 该脚本中依然存在%DATABASEDIR%和%SOURPATH%两个参数。作用同install.bat

下一篇: IS2009制作Oracle 静默安装包(二) 感谢空白先生特许授权

转载于:https://www.cnblogs.com/Cindy_weiwei/archive/2009/07/07/1518760.html

IS2009制作Oracle 静默安装包(一)感谢空白先生特许授权相关推荐

  1. IS2009制作Oracle 静默安装包(二) 感谢空白先生特许授权

    IS2009制作Oracle 静默安装包(二) 感谢空白先生特许授权 原文:IS2009制作Oracle 静默安装包(二) 感谢空白先生特许授权 上一篇: IS2009制作Oracle 静默安装包(一 ...

  2. 制作CPA静默安装包和静默包软件捆绑方法

    制作CPA静默安装包 iexpress  : https://jingyan.baidu.com/article/72ee561aa7de29e16138dfb0.html 静默包软件捆绑方法 1.s ...

  3. Silent Install Builder制作静默安装包实现软件自动部署

    Silent Install Builder 5制作静默安装包实现软件自动部署(部分软件不支持脚本录制安装) 第一步下载安装 地址https://apreltech.com/SilentInstall ...

  4. 使用inno setup制作静默安装包

    概述 大家可能平时深有体会,电脑隔一段时间就会被安装几个流氓软件.但我们明明没有手动去安装,这些是什么时候偷偷安装上去的.主要还是由于,我们安装某些软件时,它会捆绑安装一些软件,还有就是,点击一些钓鱼 ...

  5. Advenced Installer制作C#程序安装包过程.Net和Visual C++采用静默安装配置说明

    在制作C#程序安装包时,需要安装.Net Framework和Visual C++运行库文件.若采用一般安装模式会弹出安装界面,让用户点击确定进行安装,若用户选择出错会导致程序无法正常运行.给软件的运 ...

  6. CPA制作自动下载静默包php,超详细揭秘可日赚千元的CPA静默安装包制作方法

    你是否有过去网上下载东西,结果下了一大堆"垃圾"经历? 心里是否吐槽着:这些人是不是吃饱了撑的,传那么一大堆垃圾上去干嘛?不!他们并不是吃饱了撑的 一个下载可能就是块把钱,可别小看 ...

  7. 如何制作绿盾终端静默安装包

    前言:静默安装包,是指双击后没有安装界面,直接连接指定的服务器地址和端口来进行安装的安装包.主要用在域推送安装和需要更改端口的安装(比如公司没有公网IP,用花生壳内网穿透来实现外网连接,端口会变掉). ...

  8. [转]英文版VS2010制作中文环境安装包

    本文转自:http://www.cnblogs.com/upupto/archive/2010/10/29/1864726.html 自从VS2010发布以来,一直在用英文版本,接下来就说明用英文版本 ...

  9. Advanced Installer 制作.NetWeb部署安装包

    Advanced Installer 制作.NetWeb部署安装包 原文:Advanced Installer 制作.NetWeb部署安装包 因为是.Net的Web应用程序,所以想用Advanced ...

  10. InstallAnywhere制作出来的安装包在64位机上无法卸载

    使用InstallAnywhere 2009的用户,在制作64位平台安装包时,可能会遇到制作出来的安装包无法卸载,并且这种情况仅限于带64位JVM的安装包. 解决办法: 在InstallAnywher ...

最新文章

  1. php 学习笔记 数组1
  2. 数据蒋堂 | 再谈有序分组
  3. 为什么大家都不戳破深度学习的本质?!
  4. apache 站点安全
  5. 安装python模块时,遇到error: Unable to find vcvarsall.bat
  6. 和组内作者consent的模板 亲测有效
  7. 精确控制div的高度
  8. python按列输出_在python中创建漂亮的列输出
  9. 安装hadoop伪分布式集群心得
  10. MongoDB常用语句
  11. 中关村win11 32位官方原版iso文件v2021.08
  12. Controller、Service、Dao进行Junit单元
  13. webpack打包原理_webpack打包原理入门探究(四)插件探究(上)
  14. java 表头固定_常用的固定表头的几种做法
  15. python不区分大小写的列表比较_关于列表:不区分大小写’in’ – Python
  16. java语言中int占,int数据类型是Java语言中是最常用的整数类型,它在计算机中存储时占多少位bit?A.8B.16C.32D.64...
  17. python拼多多领现金_拼多多天天领现金最后都是1分怎么办?
  18. JavaScript测试工具对决:Sinon.js vs testdouble.js
  19. av发行商_如何向发行商推销游戏
  20. MONTHS_BETWEEN函数使用

热门文章

  1. C++ coredump原因总结(转载)
  2. C++ 随机数函数rand()与srand()的思考
  3. 为Eureka Server添加用户认证
  4. php怎么处理一对多,php - 如何处理内部连接以及与OOP的一对多关系? - SO中文参考 - www.soinside.com...
  5. 2021-1-30Linux学习纪要
  6. Jedis操作reids集群
  7. win7 操作mysql_win7系统如何设置Mysql密码保护数据库
  8. CSS:公共样式(自用)
  9. Javascript特效:图片切换
  10. python小人画爱心_用Python画一颗心、小人发射爱心(附源码)