Oracle 11g for Linux 静默安装

时间:2022-04-21 16:51:49

    Oracle database 11g for Linux 静默安装

  Linux服务器上面的一般是不会装GUI图形界面的,所有通过图形界面来安装Linux的方式在没有图形界面的Linux上面是行不通的,我们要使用的安装方式叫做Linux的静默安装。即在没有GUI图形界面的Linux上面安装。

1.  系统选择:Oracle Linux 7、Redhat7…

     Oracle database11g R2下载地址:http://www.oracle.com/technetwork/cn/database/enterprise-edition/downloads/index.html

                                                                                                                                                                                                                                                                       

 2.硬件检测:

物理内存不少于1G

grep MemTotal /proc/meminfo 或 free可用内存

硬盘空间不少于5G

df –Th /tmp

Swap分区空间不少于2G

grep SwapTotal /proc/meminfo

操作系统

uname –r(版本) cat /etc/issue


                                                

3.检查安装依赖系统包

n 操作系统依赖的具体包,请参考官方安装文档。

n  检查依赖包

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

nyum install 安装(未安装的依赖包)

例如:yum install compat-libstdc++-33

                                                                                                                                                                                         

4.创建所需的操作系统组和用户

groupadd oinstall 安装数据库

groupadd dba 管理数据库

useradd -goinstall -G dba oracle 

n  设置oracle用户密码

passwd oracle

                                                                                                                                                                                         

5.修改内核参数

n  在/etc/sysctl.conf 文件中,增加或修改以下参数:

fs.aio-max-nr =1048576

fs.file-max =6815744

kernel.shmall =2097152

kernel.shmmax =536870912

kernel.shmmni =4096

kernel.sem = 25032000 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

n 修改后,使设置生效:

sysctl –p

                                                                                                                                                                                         

6.修改用户限制

n 在/etc/security/limits.conf文件中,增加以下参数:

oracle soft nproc2047

oracle hard nproc16384

oracle soft nofile1024

oracle hard nofile65536

oracle soft stack10240

n 在/etc/pam.d/login 文件中,增加或修改以下内容:

session required/lib/security/pam_limits.so

session requiredpam_limits.so

n 在/etc/profile 文件中,增加或修改以下内容:

if [ $USER ="oracle" ]; then

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

ulimit -p 16384

ulimit -n 65536

else

ulimit -u 16384 -n65536

fi

fi

n 使设置生效

source/etc/profile

                                                                                                                                                                                      

 7.创建安装目录:

mkdir -p /usr/oracle

chown -R oracle:oinstall /usr/oracle

chmod -R 775 /usr/oracle

                                                                                                                                                                                         

8.创建/etc/oraInst.loc文件,内容如下

inventory_loc=/usr/oracle/oraInventory

inst_group=oinstall

n 更改文件的权限

chownoracle:oinstall /etc/oraInst.loc

chmod 664 /etc/oraInst.loc

                                                                                                                                                                                         

9.设置oracle环境变量

n su - oracle 

n  Vi  /home/oracle/.bash_profile在最后加上以下内容:

export ORACLE_BASE=/usr/oracle

export ORACLE_SID=orcl

n使设置生效:

source/home/oracle/.bash_profile

n 检查环境变量: 

env

                                                                                                                                                                                         

10.解压oracle安装文件至/home/oracle

unziplinux.x64_11gR2_database_1of2.zip

unziplinux.x64_11gR2_database_2of2.zip

                                                                                                                                                                                         

11.复制响应文件模板

n mkdir etc

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

n 设置响应文件权限:

su - root

chmod 700/home/oracle/etc/*.rsp

                                                                                                                                                                                         

12.静默安装Oracle软件

n 切换用户

su – oracle

n 修改安装Oracle软件的响应文件/home/oracle/etc/db_install.rsp

增加或修改:

oracle.install.option=INSTALL_DB_SWONLY // 安装类型

29行

ORACLE_HOSTNAME=db // 主机名称(hostname查询)

37行

UNIX_GROUP_NAME=oinstall // 安装组

42行

INVENTORY_LOCATION=/usr/oracle/oraInventory //INVENTORY目录

47行

SELECTED_LANGUAGES=en,zh_CN,zh_TW // 选择语言

78行

ORACLE_HOME=/usr/oracle/product/11.2.0/db_1 // oracle_home

83行

ORACLE_BASE=/usr/oracle // oracle_base

88行

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

99行

oracle.install.db.isCustomInstall=true //自定义安装,否,使用默认组件

108行

oracle.install.db.DBA_GROUP=dba // dba用户组

142行

oracle.install.db.OPER_GROUP=oinstall // oper用户组

147行

oracle.install.db.config.starterdb.type=GENERAL_PURPOSE //数据库类型

160行

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

165行

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

170行

oracle.install.db.config.starterdb.memoryLimit=512 //自动管理内存的内存(M)

200行

oracle.install.db.config.starterdb.password.ALL=oracle //所有用户使用同一个密码

233行

SECURITY_UPDATES_VIA_MYORACLESUPPORT=false //false

376行

DECLINE_SECURITY_UPDATES=true //设置安全更新

385行

n 开始静默安装

cd database

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

n 安装中,如果提示[WARNING]不必理会,此时安装程序仍在进行,如果出现[FATAL],则安装程序已经停止了。

n 查看安装日志信息了解安装进度

cd $ORACLE_BASE/oraInventory/logs

tail -f installActions*.log

n 出现类似如下提示表示安装完成:

#-------------------------------------------------------------------

/usr/oracle/product/11.2.0/db_1/root.sh

To execute theconfiguration scripts:

1. Open a terminalwindow 

2. Log in as"root" 

3. Run thescripts 

4. Return to thiswindow and hit "Enter" key to continue

 

Successfully SetupSoftware.

#-------------------------------------------------------------------

n 使用root用户执行脚本

su - root 

/usr/oracle/product/11.2.0/db_1/root.sh

/usr/oracle/oraInventory/orainstRoot.sh

n 增加oracle环境变量

su - oracle

vi ~/.bash_profile在最后加上以下内容:

export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/db_1

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

exportLD_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

n 使设置生效

source /home/oracle/.bash_profile

                                                                                                                                                                                       

13.静默配置网络 

 $ORACLE_HOME/bin/netca /silent /responseFile/home/oracle/etc/netca.rsp

                                                                                                                                                                                         

14.静默安装数据库

n 修改仅安装数据库的响应文件/home/oracle/etc/dbca.rsp

GDBNAME="orcl.java-linux-test" //78 行 全局数据库的名字=SID+主机域名

SID="orcl" //170行 SID

CHARACTERSET= //418行 编码

NATIONALCHARACTERSET="UTF8" //428行 编码

n 进行静默安装数据库

$ORACLE_HOME/bin/dbca -silent -responseFile/home/oracle/etc/dbca.rsp

$ORACLE_HOME/bin/dbca -silent -responseFile/home/oracle/dbca.rsp

 

n 建库后实例检查

lsnrctlstatus

n 如果出现以下错误

lsnrctl:error while loading shared libraries:/u01/app/oracle/product/11.2.0/db_1/lib/libclntsh.so.11.1: cannot restoresegment prot after reloc: Permission denied

n解决办法:在root用户下执行以下命令

su -root
setenforce 0

                                                                                                                                                                                                                                       

15.修改oracle启动配置文件
     su - oracle
     vi/etc/oratab

racl:/u01/app/oracle/product/11.2.0/db_1:Y//把“N”改成“Y”

n 这样就可以通过dbstart 启动此实例,监听器。

dbstart$ORACLE_HOME

n 再次查看监听器状态。

lsnrctlstatus

n 如果使用归档日志

sqlplus/ as sysdba

SQL>shutdown immediate;
SQL> startup mount;
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; (手工归档测试)

 

n 默认安装的数据库用户检查

SQL>set lines 256 pages 500

n查看用户状态

SQL> select username,account_status

           from dba_users;

n 解锁用户

SQL> alter user <username> account unlock;

n 修改用户密码

SQL>alteruser <username> identified by password;

                                                                       

16.登录

n Sqlplus

Sqlplus username/passwd IP: /as sysdba


作为刚学Oracle的菜鸟,在没有图形化的界面装Oracle比较难搞,此步骤也是菜鸟参考网上步骤结合实际操作整理得来,有需要的同学可以借鉴。参考:http://www.cnblogs.com/0201zcr/p/4728241.html