linux下centos靜默安裝oracle


Oracle11gR2靜默安裝

Oracle11g靜默安裝-----linux環境

 

1.操作系統及oracle版本

Linux版本:CentOS release 6.5

Oracle版本:1.ORACLE11G

            2.linux.x64_11gR2_database_1of2.zip

下載地址:wget  http://v.yingsun.net/cobra/download/linux.x64_11gR2_database_1of2.zi              3.linux.x64_11gR2_database_2of2.zip

  下載地址:wget  http://v.yingsun.net/cobra/download/linux.x64_11gR2_database_2of2.zip  

2.硬件檢測

物理內存不少於1G

硬盤可以空間不少於5G

Sqap分區空間不少於2G

支持256色以上顯卡

Cpu主頻不少於550mHZ

 

cat   /etc/issue                          ---查看linux系統

Uanme  -r                              

Grep  MemTotal   /proc/meminfo

Grep  SwapTotal   /proc/meminfo

Grep  “model  name” /proc/cpuinfo

Free  

df  -k  /tmp

 

3.檢查安裝依賴系統包

操作系統依賴的具體包,請參考官方安裝文檔。

以下為 Asianux 3, Oracle Linux 5, Red Hat Enterprise Linux 5, CentOS 5 操作系統依賴的包

binutils-2.17.50.0.6

compat-libstdc++-33-3.2.3

compat-libstdc++-33-3.2.3 (32 bit)

elfutils-libelf-0.125

elfutils-libelf-devel-0.125

gcc-4.1.2

gcc-c++-4.1.2

glibc-2.5-24

glibc-2.5-24 (32 bit)

glibc-common-2.5

glibc-devel-2.5

glibc-devel-2.5 (32 bit)

glibc-headers-2.5

ksh-20060214

libaio-0.3.106

libaio-0.3.106 (32 bit)

libaio-devel-0.3.106

libaio-devel-0.3.106 (32 bit)

libgcc-4.1.2

libgcc-4.1.2 (32 bit)

libstdc++-4.1.2

libstdc++-4.1.2 (32 bit)

libstdc++-devel 4.1.2

make-3.81

sysstat-7.0.2

unixODBC-2.2.11 (32-bit) or later

unixODBC-devel-2.2.11 (64-bit) or later

unixODBC-2.2.11 (64-bit) or later

檢查依賴包

rpm -q binutils compat-libstdc++-33 elfutils-libelf elfutils-libelf-devel gcc gcc-c++ glibc-2.5 glibc-common glibc-devel glibc-headers ksh libaio libaio-devel libgcc libstdc++ libstdc++-devel make sysstat unixODBC unixODBC-devel

如果包有顯示is not installed(沒安裝),就用yum install 命令安裝,如:

yum install compat-libstdc++-33

 

4.創建所需的操作系統組和用戶

groupadd oinstall

groupadd dba

useradd -g oinstall -G dba oracle

設置oracle用戶密碼

passwd oracle

5.修改內核參數

/etc/sysctl.conf 文件中,使用文本編輯器或vi命令增加或修改以下參數

fs.aio-max-nr = 1048576

fs.file-max = 6815744

kernel.shmall = 2097152

kernel.shmmax = 536870912

kernel.shmmni = 4096

kernel.sem = 250 32000 100 128

net.ipv4.ip_local_port_range = 9000 65500

net.core.rmem_default = 262144

net.core.rmem_max = 4194304

net.core.wmem_default = 262144

net.core.wmem_max = 1048576

修改后,使設置生效

sysctl -p

 

6.修改用戶限制

/etc/security/limits.conf 文件中,使用文本編輯器或vi命令增加或修改以下參數

oracle soft nproc 2047

oracle hard nproc 16384

oracle soft nofile 1024

oracle hard nofile 65536

oracle soft stack 10240

/etc/pam.d/login 文件中,使用文本編輯器或vi命令增加或修改以下內容

session required /lib/security/pam_limits.so

session required pam_limits.so

/etc/profile 文件中,使用文本編輯器或vi命令增加或修改以下內容

if [ $USER = "oracle" ]; then

if [ $SHELL = "/bin/ksh" ]; then

ulimit -p 16384

ulimit -n 65536

else

ulimit -u 16384 -n 65536

fi

fi

使設置生效

source /etc/profile

7.創建安裝目錄(可根據情況,選擇比較多空間的目錄創建)

mkdir -p /u01/oracle

chown -R oracle:oinstall /u01/oracle

chmod -R 775 /u01/oracle

 

8.創建/etc/oraInst.loc文件,內容如下

inventory_loc=/u01/oracle/oraInventory

inst_group=oinstall

更改文件的權限

chown oracle:oinstall /etc/oraInst.loc

chmod 664 /etc/oraInst.loc

 

9.設置oracle環境變量

 su - oracle

vi  .bash_profile

 在最后加上以下內容

export ORACLE_BASE=/u01/oracle

export ORACLE_SID=orcl

注意,除了ORACLE_BASEORACLE_SID,( /etc/profile.bash_profile)不設置任何oracle相關環境變量(ORACLE_HOME, PATH, LD_LIBRARY_PATH)

使設置生效

source  .bash_profile

檢查環境變量:

env

 

10.解壓oracle安裝文件

unzip linux.x64_11gR2_database_1of2.zip

unzip linux.x64_11gR2_database_2of2.zip

 

11.復制響應文件模板

mkdir etc

cp /u01/oracle/database/response/*  /home/oracle/etc/

設置響應文件權限

su - root

chmod 700 /home/oracle/etc/*.rsp(注意所有者,oinstall

12.靜默安裝Oracle軟件

su - oracle

修改安裝Oracle軟件的響應文件/home/oracle/etc/db_install.rsp

oracle.install.option=INSTALL_DB_SWONLY      // 29 安裝類型

ORACLE_HOSTNAME=oracle                          // 37 主機名稱(hostname查詢)

UNIX_GROUP_NAME=oinstall                       // 42 安裝組

INVENTORY_LOCATION=/home/oracle/oraInventory            //47 INVENTORY目錄(不填就是默認值)  注意:這里inventory目錄最好不要填寫與oracle安裝路徑一致的目錄,會報錯

SELECTED_LANGUAGES=en,zh_CN,zh_TW                         // 78 選擇語言

ORACLE_HOME=/u01/oracle/product/11.2.0/dbhome         // 83 oracle_home

ORACLE_BASE=/u01/oracle                                           // 88 oracle_base

oracle.install.db.InstallEdition=EE                               // 99 oracle版本

oracle.install.db.isCustomInstall=false                     //自定義安裝,否,使用默認組件

oracle.install.db.DBA_GROUP=dba                        // 143 dba用戶組

oracle.install.db.OPER_GROUP=oinstall                // 147 oper用戶組

oracle.install.db.config.starterdb.type=GENERAL_PURPOSE        // 160 數據庫類型

oracle.install.db.config.starterdb.globalDBName=orcl             // 165 globalDBName

oracle.install.db.config.starterdb.SID=orcl                          // 170 SID

oracle.install.db.config.starterdb.memoryLimit=81920      // 200 自動管理內存的內存(M)

oracle.install.db.config.starterdb.password.ALL=oracle      // 233 設定所有數據庫用戶使用同一個密碼
SECURITY_UPDATES_VIA_MYORACLESUPPORT=false        // 376(手動寫了false

DECLINE_SECURITY_UPDATES=true                              // 385 設置安全更新(貌似是有bug,這個一定要選true,否則會無限提醒郵件地址有問題,終止安裝。PS:不管地址對不對)

開始靜默安裝

cd /u01/oracle/database

./runInstaller  -silent  -force  -responseFile /home/oracle/etc/db_install.rsp

這個命令,一直執行失敗,失敗錯誤:

 

 

參考下面,我是直接加入了

-ignorePrereq命令,就可以了。

[FATAL] [INS-13013] Target environment do not meet some mandatory requirements

上面的參考文章解決是:安裝命令中加入選項-ignorePrereq

三、安裝完畢遇到了,啟動監聽失敗

一般情況下是 oracle/product/11.2.0/dbhome_1/network/admin/listener.ora

hostname出錯了,修改為ip 就可以解決
vim   /etc/hosts
172.19.60.193       oracle
服務器ip地址            主機名(hostname查看)

 

從新修改安裝命令:

./runInstaller -ignorePrereq  -silent -force -responseFile /home/oracle/etc/db_install.rsp

報錯:[FATAL] [INS-32035] Unable to create a new central inventory at the specified location.

   CAUSE: The central inventory location provided is not empty.

   ACTION: Please provide another location for the inventory, or clean up the current location.

 

解決方法:

vim /etc/oralnst.loc
inventory_loc=/home/oracle/oralnventory
inst_group=oinstall

還有另一種錯誤,就是你已經加入了上邊的文件內容,但是安裝時還是報同樣的錯誤。解決方法如下:

進入到oracle安裝目錄

cd /u01/oracle/

ls查看下目錄下有沒有一個oralnventory文件(我估計這個文件是剛開始執行的時候然后保存下來的或者是以前安裝時未刪除干凈的)

如果有將這個文件目錄刪除掉rm -rf oraInventory/

然后將/etc/oralnst.loc更改

[root@oracle ~]# cat  /etc/oralnst.loc

inventory_loc=/home/oracle/oralnventory
inst_group=oinstall

執行下

 source /etc/oralnst.loc

解決了問題,安裝完成之后,就會出現如下界面:

安裝完成之后 系統會提示我們用root用戶運行如下兩個腳本 。

[root@oracle database]$ sh /u01/oracle/oralnventory/orainstRoot.sh

[root@oracle ~]# sh /u01/oracle/product/11.2.0/dbhome/root.sh

su - oracle

[oracle@oracle ~]$ cat .bash_profile

# .bash_profile

umask 022

TMP=/u01/oracle/tmp

TMPDIR=/u01/oracle/tmp

export TMP TMPDIR

 

# Get the aliases and functions

if [ -f ~/.bashrc ]; then

. ~/.bashrc

fi

 

# User specific environment and startup programs

 

PATH=$PATH:$HOME/bin

export PATH

export ORACLE_BASE=/u01/oracle

export ORACLE_SID=orcl

export  ORACLE_HOME=$ORACLE_BASE/product/11.2.0/dbhome

export  TNS_ADMIN=$ORACLE_HOME/network/admin

export  PATH=.:${PATH}:$HOME/bin:$ORACLE_HOME/bin

export  PATH=${PATH}:/usr/bin:/bin:/usr/bin/X11:/usr/local/bin

export  LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:$ORACLE_HOME/lib

export  LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:$ORACLE_HOME/oracm/lib

export  LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:/lib:/usr/lib:/usr/local/lib

export CLASSPATH=${CLASSPATH}:$ORACLE_HOME/JRE

export CLASSPATH=${CLASSPATH}:$ORACLE_HOME/JRE/lib

export CLASSPATH=${CLASSPATH}:$ORACLE_HOME/jlib

export CLASSPATH=${CLASSPATH}:$ORACLE_HOME/rdbms/jlib

export CLASSPATH=${CLASSPATH}:$ORACLE_HOME/network/jlib

export LIBPATH=${CLASSPATH}:$ORACLE_HOME/lib:$ORACLE_HOME/ctx/lib

export ORACLE_OWNER=oracle

export SPFILE_PATH=$ORACLE_HOME/dbs

export ORA_NLS10=$ORACLE_HOME/nls/data

[oracle@oracle ~]$ source  .bash_profile

靜默配置網絡

[oracle@oracle ~]$ /u01/oracle/product/11.2.0/dbhome/bin/netca  /silent /responseFile /home/oracle/etc/netca.rsp

Parsing command line arguments:

    Parameter "silent" = true

    Parameter "responsefile" = /home/oracle/etc/netca.rsp

Done parsing command line arguments.

Oracle Net Services Configuration:

Profile configuration complete.

Oracle Net Listener Startup:

    Running Listener Control:

      /u01/oracle/product/11.2.0/dbhome/bin/lsnrctl start LISTENER

    Listener Control complete.

    Listener started successfully.

Listener configuration complete.

Oracle Net Services configuration successful. The exit code is 0 

 

14.靜默安裝數據庫

靜默安裝數據庫實例 (在oracle 用戶安裝)

  在這里需要配置靜默安裝數據庫響應的模板文件,也是在安裝軟件包中解壓在database下的response 目錄下的 dbca_rsp 文件,具體配置如下:

[oracle@localhost response]# vim dbca.rsp

[GENERAL]

RESPONSEFILE_VERSION = "11.2.0"

OPERATION_TYPE = "createDatabase"

[CREATEDATABASE]

GDBNAME = "lanmao"           #全局數據庫的名字

SID = "orcl"                 # 數據庫實例,根據上面的你寫的SID 一樣的,隨便寫。

TEMPLATENAME = "General_Purpose.dbc"   #  這個可以是默認的模板,不會寫默認的,最好是默認,

                                 這里是我們dba 寫的,所以就用上了。

SYSPASSWORD = "2011@oracle"

SYSTEMPASSWORD = "2011@oracle"

SYSMANPASSWORD = "2011@oracle"

DBSNMPPASSWORD = "2011@oracle"   # 前面這四個都可以不管,默認就行

CHARACTERSET = "ZHS16GBK"         #編碼

NATIONALCHARACTERSET=“UTF8”   #編碼

[createTemplateFromDB]

SOURCEDB = "myhost:1521:orcl"

SYSDBAUSERNAME = "system"

TEMPLATENAME = "My Copy TEMPLATE"

[createCloneTemplate]

SOURCEDB = "orcl"

TEMPLATENAME = "My Clone TEMPLATE"

[DELETEDATABASE]

SOURCEDB = "orcl"

[generateScripts]

TEMPLATENAME = "New Database"

GDBNAME = "orcl11.us.oracle.com"

[CONFIGUREDATABASE]

[ADDINSTANCE]

DB_UNIQUE_NAME = "orcl11g.us.oracle.com"

NODELIST=

SYSDBAUSERNAME = "sys"

[DELETEINSTANCE]

DB_UNIQUE_NAME = "orcl11g.us.oracle.com"

INSTANCENAME = "orcl11g"

SYSDBAUSERNAME = "sys"

 

配置完模板之后,進行靜默安裝數據庫

$ORACLE_HOME/bin/dbca -silent -responseFile /db/soft/database/response/dbca.rsp

 

等到100%安裝完成之后就是安裝了。

有關詳細信息, 請參閱日志文件  /u01/oracle/cfgtoollogs/dbca/lanmao/lanmao.log"

 

15.修改oracle啟動配置文件

su - oracle

vi /etc/oratab

orcl:/usr/oracle/product/11.2.0/db_1:Y //“N”改成“Y”

 這樣就可以通過dbstart 啟動此實例,監聽器。

 

dbstart $ORACLE_HOME

此時所有oracle的進程關閉,監聽器也停止。

 

dbshut $ORACLE_HOME

再次查看監聽器狀態。

 

lsnrctl   start         ---啟動監聽

lsnrctl status         ----查看監聽

 

 

如果使用歸檔日志

Oracle”startup”時報錯:

ORA-01078: failure in processing system parameters LRM-00109: could not open parameter file '/u01/oracle/product/11.2.0/dbhome/dbs/initorcl.ora'

解決方法:

/u01/oracle/product/11.2.0/dbhome/srvm/admin/init.ora

 cd   /u01/oracle/product/11.2.0/dbhome/srvm/admin

 init.ora /u01/oracle/product/11.2.0/dbhome/dbs/initorcl.ora

 

[oracle@localhost ~]$ sqlplus /nolog

SQL> conn / as sysdba                ---進入系統管理用戶

SQL> startup ;                           ---啟動oracle實例

SQL> shutdown immediate;        ---停掉oracle實例

SQL> create tablespace oracle datafile 'oracle.dbf' size 100M reuse, 'oracle2.dbs' size 100M reuse default storage (initial 500K next 300K pctincrease 20);                   ----創建表空間

SQL> create user duan identified by "duan" default tablespace oracle profile default  account unlock;                                 -----創建用戶

SQL> grant dba to duan;                                                             ----授權用戶dba權限

Grant succeeded.

SQL> grant unlimited tablespace to duan;                               

Grant succeeded.

SQL> create table z_test(id number,name varchar(20));               ----創建表

SQL> insert into z_test select 1,'a' from dual;                               ---插入表數據

SQL> select name from v$database;                                        ---查看實例名

SQL> select username,default_tablespace from user_users;          ---查看當權用戶所在表空間

select table_name from all_tables where TABLESPACE_NAME='表空間'                                  ---查看表空間中的所有表(表空間名字一定要大寫。)

SQL> alter database archivelog;         

SQL> alter database flashback on; (如果要啟用數據庫閃回功能則執行)

SQL> alter database open;

SQL> execute utl_recomp.recomp_serial(); (重新編譯所有可能失效對象)

SQL> alter system archive log current; (手工歸檔測試)

)

 

select table_name from dba_tables;

成功!!!

 

通過sql查詢日志文件位置

SQL> show parameter dump_dest 

  

 NAME                                 TYPE 

·------------------------------------ ---------------------- 

·  VALUE 

·  ------------------------------ 

·  background_dump_dest                 string 

·  /home/oracle/oracle/admin/TESTDB/bdump 

·  core_dump_dest                       string 

·  /home/oracle/oracle/admin/TESTDB/cdump 

·  user_dump_dest                       string 

·  /home/oracle/oracle/admin/TESTDB/udump 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM