kuuyee 2013-05-24 12:27 发表评论

目次
相信很多童鞋都有过在Linux上安装Oracle数据库的痛苦经历,其中绝大多数都是环境设置的问题。我给大家推荐一个国外大牛写的Oracle的安装脚本? OTK,是用Bash写的,这东东大大简化了Oracle安装过程,而且成功率达到99.9999%以上,只要确保你的Linux系统是干净的,那么按照这个教程,保证你会安装成功。
准备工作
安装OTK
解决环境依赖
增强sqlplus
使用installManager提取安装
把Oracle安装文件移入资源目录
定制oracle用户登录的PS1变量
安装Oracle数据库
创建数据库实例
使用appctl管理oracle
使用backupuManager备份oracle
创建EM管理控制台
ホームページ データベース mysql チュートリアル Linux下的ORACLE安装,成功率99.99999%

Linux下的ORACLE安装,成功率99.99999%

Jun 07, 2016 pm 04:35 PM
linux oracle インストール 成功率

相信很多童鞋都有过在Linux上安装Oracle数据库的痛苦经历,其中绝大多数都是环境设置的问题。我给大家推荐一个国外大牛写的Oracle的安装脚本? OTK,是用Bash写的,这东东大大简化了Oracle安装过程,而且成功率达到99.9999%以上,只要确保你的Linux系统是干净

相信很多童鞋都有过在Linux上安装Oracle数据库的痛苦经历,其中绝大多数都是环境设置的问题。我给大家推荐一个国外大牛写的Oracle的安装脚本? OTK,是用Bash写的,这东东大大简化了Oracle安装过程,而且成功率达到99.9999%以上,只要确保你的Linux系统是干净的,那么按照这个教程,保证你会安装成功。

准备工作

OTK针对各种Linux提供了? 安装文档,本文使用的RHEL5.5_x86_64位,数据库版本为11gR2,主要参考这个? 文档。

首先准备阿好如下的安装文件:

  • linux.x64_11gR2_database_1of2.zip

  • linux.x64_11gR2_database_2of2.zip

  • oratoolkit-1.0.2.1.5-1.noarch.rpm

下载上述文件并放在 /var/tmp/oracle目录下。最好要把你的YUM源指向你的系统安装光盘或者ISO文件。

安装OTK

用root登陆,执行如下命令:

       # su - root         
# cd /var/tmp/oracle         
# ls -1 oratool*         
oratoolkit-1.0.2.1.5-1.noarch.rpm         
# rpm -ivh oratoolkit-1.0.2.1.5-1.noarch.rpm         
Preparing...                ########################################### [100%]        
    1:oratoolkit             ########################################### [100%]
ログイン後にコピー

otk已经帮我们建立了oracle用户,下面需要设置Oracle用户密码

       # passwd oracle         
Changing password for user oracle.         
New UNIX password:         
BAD PASSWORD: it is based on a dictionary word         
Retype new UNIX password:         
passwd: all authentication tokens updated successfully.
ログイン後にコピー

解决环境依赖

这一步最爽,最为头疼的环境依赖问题轻松就解决了!首先要验证下你的系统还差什么没有满足要求,OTK脚本提供了智能的环境是否满足检查:

       # /opt/oracle/otk/current/bin/installManager swReqCheck osSetup11gR2.cfg         
...//省略大部分输出         
20130521_165122: Info: Action swReqCheck of installManager ended with 7 WARNINGS
ログイン後にコピー

最后的结论告诉你的系统共有几个警告(我的系统是7个),你可以在输出日志中查看到底缺了什么。下面的一组命令很酷,让你一下子解决所有的问题:

       //先拼装命令         
# REQ_FILE_DIR="/opt/oracle/otk/current/conf/installManager/requirement"         
# REQ_FILE_PATH="$REQ_FILE_DIR/ora11gR2-redhat-5-x86_64.pkg.lst"         
# YUM_COMMAND=$(echo "yum install")         
# YUM_COMMAND+=$(egrep -v "#" $REQ_FILE_PATH | grep 32-bit | awk '{ print " "$1".i[356]86" }')         
# YUM_COMMAND+=$(egrep -v "#" $REQ_FILE_PATH | grep 64-bit | awk '{ print " "$1".x86_64" }')          
//用echo看看最终拼装的命令是什么样         
# echo $YUM_COMMAND          
//执行命令         
# $YUM_COMMAND          
//再次执行环境检查         
# /opt/oracle/otk/current/bin/installManager swReqCheck osSetup11gR2.cfg         
...         
20130521_170131: Info: Action swReqCheck of installManager ended successfully //这次验证成功了,环境已经满足Oracle安装要求
ログイン後にコピー

增强sqlplus

OTK提供了一个优化增强的sqlplus环境:

       # cd /opt/oracle/otk/current/tools/rlwrap/         
# ./configure         
# make         
# make install         
# /usr/local/bin/rlwrap -v         
rlwrap 0.30
ログイン後にコピー

使用installManager提取安装

切换到 /opt/oracle/otk/current/conf/installManager目录,编辑 osSetup11gR2.cfg来配置安装参数,包括内核参数、目录创建及所有授权等设置,如果你想默认安装就无需更改这个文件。

       # cd /opt/oracle/otk/current/conf/installManager/         
# vi osSetup11gR2.cfg         
# sdiff -s osSetup11gR2.cfg sample/osSetup11gR2.cfg //对比哪些参数修改过         
# /opt/oracle/otk/current/bin/installManager osSetup osSetup11gR2.cfg
ログイン後にコピー

把Oracle安装文件移入资源目录

otk默认读取oracle安装文件的目录是 /var/opt/oracle/repository,otk的 swInst实例安装命令会读取这个目录:

       # cd /var/tmp/oracle         
# chown oracle:oinstall *         
# mv linux.x64_11gR2_database_1of2.zip linux.x64_11gR2_database_2of2.zip /var/opt/oracle/repository/
ログイン後にコピー

定制oracle用户登录的PS1变量

这一步没什么实际意义,就是定制Oracle用户登录的提示符。

       # su - oracle        
 ------------------------------------------------------          
 oraToolKit environment variables        
 ------------------------------------------------------          
 Installation directory :   /opt/oracle/otk          
 Release                :   1.0.2.1.5          
 $RUN directory         :   /opt/oracle/otk/1.0/bin          
 $LOG_BASE directory    :   /var/opt/oracle/otk/1.0/log          
 ------------------------------------------------------          
<site>:oracle@stquist1p:sidNotSet$ grep ^SITE .profile.custom.interactive         
SITE="<site>"         
<site>:oracle@stquist1p:sidNotSet$ vi .profile.custom.interactive         
<site>:oracle@stquist1p:sidNotSet$ grep ^SITE .profile.custom.interactive         
SITE="KuuYee"//修改这一行,可以显示你喜欢的内容         
<site>:oracle@stquist1p:sidNotSet$ exit         
# su - oracle         
KuuYee:oracle@stquist1p:sidNotSet$</site></site></site></site></site>
ログイン後にコピー

安装Oracle数据库

OTK没有采用Oracle Universal Installer( OUI),而是用 swInst来控制整个安装过程的:

       $ bash         
$ cd $INSTALL_CONF         
$ cp sample/swInstEeSrv11gR2-Step1-linux-x86_64.cfg .         
$ installManager swInst swInstEeSrv11gR2-Step1-linux-x86_64.cfg         
$ su -         
# /opt/oracle/eesrv/11.2.0/db1/root.sh        
# exit
ログイン後にコピー

创建数据库实例

OTK采用 dbSetup来创建实例,首先要进入 $INSTALL_CONF目录配置实例参数

       $ cd $INSTALL_CONF         
$ ls -1 dbSetup*.cfg         
dbSetup-dev.cfg         
dbSetup-prod.cfg         
dbSetup-test.cfg         
$ vi dbSetup-prod.cfg //prod为生产模式         
$ sdiff -s dbSetup-prod.cfg sample/dbSetup-prod.cfg         
DB_NAME="idm_test"                                            | DB_NAME="prod"         
ORACLE_HOME="$ORACLE_BASE/eesrv/11.2.0/db1"                   | ORACLE_HOME="$ORACLE_BASE/sesrv/11.1.0/db1"         
NLS_LANG=".AL32UTF8"                                          | NLS_LANG=".UTF8"         
SYSTEM_SIZE=1G                                                | SYSTEM_SIZE=512M         
TEMP_SIZE=2G                                                  | TEMP_SIZE=512M         
UNDO_SIZE=2G                                                  | UNDO_SIZE=512M         
USERS_SIZE=100M                                               | USERS_SIZE=10M         
LISTENER_PORT="1541"                                          | LISTENER_PORT="1531"         
MEMORY_TARGET=7G                                              | MEMORY_TARGET=512M         
MEMORY_MAX_TARGET=7G                                          | MEMORY_MAX_TARGET=512M         
SGA_TARGET=3G                                                 | SGA_TARGET=256M         
PROCESSES=1000                                                | PROCESSES=100         
$ installManager dbSetup dbSetup-prod.cfg //执行这部之前最好先配置下/etc/hosts文件,看下面说明
ログイン後にコピー

本文采用 dbSetup-prod.cfg生产环境模式配置,我们看到还有dev(开发环境)和test(测试环境),不过我没试过,有兴趣的童鞋可以试试。我在上面列出了我所作出的配置,原文并没有修改内存参数,我之所以修改是因为实际环境因为内存设置太小导致运行一段时间数据库经常挂掉,经过多次的调试而得到的经验值,这里需要说明下我的数据库配置:
OS:VMware虚拟机(RHEL5.5)
CPU:8核
内存:32G
硬盘:200GB
上面用 sdiff -s dbSetup-prod.cfg sample/dbSetup-prod.cfg命令可以对比下我的参数修改,左面是我的修改参数,右面是原参数,需要特别说明的是第二个参数 ORACLE_HOME,一定要自修修改,原来的参数是 $ORACLE_BASE/sesrv/11.1.0/db1,要修改为$ORACLE_BASE/ eesrv/11.2.0/db1,别改错了!

installManager dbSetup dbSetup-prod.cfg命令开始安装数据库实例,不过我建议你最好先配置下你的 /etc/hosts文件,加入下面的内容:

       127.0.0.1    你的hostname
ログイン後にコピー

接下来就是漫长的等待,大概需要几十分钟,具体根据你的机器配置情况。如果你最后看到如下的输出:

       ----------------------------------------------------------------------------------------------------         
20130522_091856: Info: Executing libmiscellaneous.getFooter function         
20130522_091856: Info: Terminating installManager execution         
20130522_091856: Info: Summary log file:  /var/opt/oracle/otk/1.0/log-old/installManager/../installManager.log         
20130522_091856: Info: Detailed log file: /var/opt/oracle/otk/1.0/log-old/installManager/dbsetup-20130522_090349.log         
20130522_091856: Info: Action dbSetup of installManager ended successfully         
----------------------------------------------------------------------------------------------------
ログイン後にコピー

Congratulations!你安装成功了。

下面登陆试试:

Note

OTK默认创建了一个 otk用户,密码也是 otk,? syssystem默认密码是 manager

       $ bash         
$ sourceProdEnv         
$ sqlplus sys/manager@idm_dev as sysdba;         
或者         
$ sqlplus otk/otk@idm_dev          
SQL*Plus: Release 11.2.0.1.0 Production on Wed May 22 11:05:16 2013          
Copyright (c) 1982, 2009, Oracle.  All rights reserved.           
Connected to:         
Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - 64bit Production         
With the Partitioning, OLAP, Data Mining and Real Application Testing options          
SQL>
ログイン後にコピー

使用appctl管理oracle

OTK提供了一个ctl工具来帮我们管理Oracle实例:

       $ ctl status all //查看当前状态         
$ ctl stop all   //停止数据库         
$ ctl start all  //启动数据库
ログイン後にコピー

使用backupuManager备份oracle

       $ cd $BACKUP_CONF         
$ vi prod.cfg         
$ sdiff -s prod.cfg sample/prod.cfg DISK_DEVICE_MOUNT_POINT="/" | DISK_DEVICE_MOUNT_POINT="/backup01"         
$ backupManager full prod.cfg
ログイン後にコピー

定时备份Job

       $ crontab -l|head -2         
# Example 1: Daily physical database backup         
# 0 2 * * * [ -d $HOME/../current ] && (ksh -c '. ./.profile >/dev/null; backupManager full <sid_1>.cfg <sid_2>.cfg <sid_n>.cfg >/dev/null')         
$ crontab -e         
$ crontab -l|head -2         
# Example 1: Daily physical database backup         
0 2 * * * [ -d $HOME/../current ] && (ksh -c '. ./.profile >/dev/null; backupManager full prod.cfg >/dev/null')</sid_n></sid_2></sid_1>
ログイン後にコピー

创建EM管理控制台

otk并没有帮我们创建EM控制台,对于习惯用Web管理的用户很不方便,我们需要手工创建:

        $ emca -config dbcontrol db -repos recreate           
STARTED EMCA at May 22, 2013 11:18:41 AM          
EM Configuration Assistant, Version 11.2.0.0.2 Production          
Copyright (c) 2003, 2005, Oracle.  All rights reserved.  Enter the following information:          
Database SID: idm_dev //输入sid          
Listener port number: 1541 //监听输入端口          
Listener ORACLE_HOME [ /opt/oracle/eesrv/11.2.0/db1 ]: //默认回车          
Password for SYS user:  //输入密码manager          
Password for DBSNMP user:  //输入密码manager          
Password for SYSMAN user:  //输入密码manager          
Email address for notifications (optional): //默认回车          
Outgoing Mail (SMTP) server for notifications (optional): //默认回车          
-----------------------------------------------------------------           
You have specified the following settings           
Database ORACLE_HOME ................ /opt/oracle/eesrv/11.2.0/db1           
Local hostname ................ localhost.localdomain          
Listener ORACLE_HOME ................ /opt/oracle/eesrv/11.2.0/db1          
Listener port number ................ 1541          
Database SID ................ idm_dev          
Email address for notifications ...............          
Outgoing Mail (SMTP) server for notifications ...............           
-----------------------------------------------------------------          
Do you wish to continue? [yes(Y)/no(N)]: yes          
May 22, 2013 11:19:20 AM oracle.sysman.emcp.EMConfig perform          
INFO: This operation is being logged at /opt/oracle/cfgtoollogs/emca/idm_dev/emca_2013_05_22_11_18_40.log.          
May 22, 2013 11:19:21 AM oracle.sysman.emcp.EMReposConfig invoke          
INFO: Dropping the EM repository (this may take a while) ...          
May 22, 2013 11:19:23 AM oracle.sysman.emcp.EMReposConfig invoke          
INFO: Repository successfully dropped          
May 22, 2013 11:19:23 AM oracle.sysman.emcp.EMReposConfig createRepository          
INFO: Creating the EM repository (this may take a while) ...          
May 22, 2013 11:24:27 AM oracle.sysman.emcp.EMReposConfig invoke          
INFO: Repository successfully created          
May 22, 2013 11:24:30 AM oracle.sysman.emcp.EMReposConfig uploadConfigDataToRepository          
INFO: Uploading configuration data to EM repository (this may take a while) ... //可能会等一会          
May 22, 2013 11:25:19 AM oracle.sysman.emcp.EMReposConfig invoke          
INFO: Uploaded configuration data successfully          
May 22, 2013 11:25:23 AM oracle.sysman.emcp.util.DBControlUtil configureSoftwareLib          
INFO: Software library configured successfully.          
May 22, 2013 11:25:23 AM oracle.sysman.emcp.EMDBPostConfig configureSoftwareLibrary          
INFO: Deploying Provisioning archives ...          
May 22, 2013 11:25:45 AM oracle.sysman.emcp.EMDBPostConfig configureSoftwareLibrary          
INFO: Provisioning archives deployed successfully.          
May 22, 2013 11:25:45 AM oracle.sysman.emcp.util.DBControlUtil secureDBConsole          
INFO: Securing Database Control (this may take a while) ...          
May 22, 2013 11:25:58 AM oracle.sysman.emcp.util.DBControlUtil secureDBConsole          
INFO: Database Control secured successfully.          
May 22, 2013 11:25:58 AM oracle.sysman.emcp.util.DBControlUtil startOMS          
INFO: Starting Database Control (this may take a while) ...          
May 22, 2013 11:26:28 AM oracle.sysman.emcp.EMDBPostConfig performConfiguration          
INFO: Database Control started successfully          
May 22, 2013 11:26:28 AM oracle.sysman.emcp.EMDBPostConfig performConfiguration          
INFO: >>>>>>>>>>> The Database Control URL is https://localhost.localdomain:1158/em      <p>      </p><p>OK! 大功告成,相信各位童鞋都安装成功了,OTK的安装还是很稳健的,至少我安装了几十次都成功了!</p>     <p>      </p><p>最后祝各位童鞋好运!</p>      <p>2013-05-21</p> <img  src="/static/imghw/default1.png" data-src="http://www.blogjava.net/kuuyee/aggbug/399719.html" class="lazy"    style="max-width:90%"  style="max-width:90%" alt="Linux下的ORACLE安装,成功率99.99999%" > <br> <br> <p align="right">  kuuyee 2013-05-24 12:27   发表评论</p><p> <img  src="/static/imghw/default1.png" data-src="http://www.68idc.cn/help/uploads/allimg/150125/0RAWD2-0.gif" class="lazy" border="0" title="IT 资讯" alt="Linux下的ORACLE安装,成功率99.99999%" > 
    </p><p class="copyright">
        原文地址:Linux下的ORACLE安装,成功率99.99999%, 感谢原作者分享。
    </p>
    
    


ログイン後にコピー
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

Video Face Swap

Video Face Swap

完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

VSCODEに必要なコンピューター構成 VSCODEに必要なコンピューター構成 Apr 15, 2025 pm 09:48 PM

VSコードシステムの要件:オペレーティングシステム:オペレーティングシステム:Windows 10以降、MACOS 10.12以上、Linux Distributionプロセッサ:最小1.6 GHz、推奨2.0 GHz以上のメモリ:最小512 MB、推奨4 GB以上のストレージスペース:最低250 MB以上:その他の要件を推奨:安定ネットワーク接続、XORG/WAYLAND(Linux)

Apr 16, 2025 pm 07:39 PM

NotePadはJavaコードを直接実行することはできませんが、他のツールを使用することで実現できます。コマンドラインコンパイラ(Javac)を使用してByteCodeファイル(filename.class)を生成します。 Javaインタープリター(Java)を使用して、バイトコードを解釈し、コードを実行し、結果を出力します。

vscodeの使用方法 vscodeの使用方法 Apr 15, 2025 pm 11:21 PM

Visual Studio Code(VSCODE)は、Microsoftが開発したクロスプラットフォーム、オープンソース、および無料のコードエディターです。軽量、スケーラビリティ、および幅広いプログラミング言語のサポートで知られています。 VSCODEをインストールするには、公式Webサイトにアクセスして、インストーラーをダウンロードして実行してください。 VSCODEを使用する場合、新しいプロジェクトを作成し、コードを編集し、コードをデバッグし、プロジェクトをナビゲートし、VSCODEを展開し、設定を管理できます。 VSCODEは、Windows、MacOS、Linuxで利用でき、複数のプログラミング言語をサポートし、マーケットプレイスを通じてさまざまな拡張機能を提供します。その利点には、軽量、スケーラビリティ、広範な言語サポート、豊富な機能とバージョンが含まれます

Linuxの主な目的は何ですか? Linuxの主な目的は何ですか? Apr 16, 2025 am 12:19 AM

Linuxの主な用途には、1。Serverオペレーティングシステム、2。EmbeddedSystem、3。Desktopオペレーティングシステム、4。開発およびテスト環境。 Linuxはこれらの分野で優れており、安定性、セキュリティ、効率的な開発ツールを提供します。

GITの倉庫アドレスを確認する方法 GITの倉庫アドレスを確認する方法 Apr 17, 2025 pm 01:54 PM

gitリポジトリアドレスを表示するには、次の手順を実行します。1。コマンドラインを開き、リポジトリディレクトリに移動します。 2。「git remote -v」コマンドを実行します。 3.出力と対応するアドレスでリポジトリ名を表示します。

Linuxアーキテクチャ:5つの基本コンポーネントを発表します Linuxアーキテクチャ:5つの基本コンポーネントを発表します Apr 20, 2025 am 12:04 AM

Linuxシステムの5つの基本コンポーネントは次のとおりです。1。Kernel、2。Systemライブラリ、3。Systemユーティリティ、4。グラフィカルユーザーインターフェイス、5。アプリケーション。カーネルはハードウェアリソースを管理し、システムライブラリは事前コンパイルされた機能を提供し、システムユーティリティはシステム管理に使用され、GUIは視覚的な相互作用を提供し、アプリケーションはこれらのコンポーネントを使用して機能を実装します。

vscode端子使用チュートリアル vscode端子使用チュートリアル Apr 15, 2025 pm 10:09 PM

VSCODEビルトインターミナルは、エディター内でコマンドとスクリプトを実行して開発プロセスを簡素化できるようにする開発ツールです。 VSCODE端子の使用方法:ショートカットキー(CTRL/CMD)で端子を開きます。コマンドを入力するか、スクリプトを実行します。 Hotkeys(Ctrl Lなどの端子をクリアするなど)を使用します。作業ディレクトリ(CDコマンドなど)を変更します。高度な機能には、デバッグモード、自動コードスニペット完了、およびインタラクティブコマンド履歴が含まれます。

Laravelインストールコード Laravelインストールコード Apr 18, 2025 pm 12:30 PM

Laravelをインストールするには、これらの手順を順番に進みます。コンポーザー(MacOS/LinuxとWindows用)インストールLaravelインストーラーをインストールします。

See all articles