Linux - 静默安装oracle数据库总结

时间:2022-07-22 16:21:31

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

1. 下载地址

  http://www.oracle.com/technetwork/database/enterprise-edition/downloads/index.html

  下载.tar.gz文件即可,oracle在Window上面是有分位数的,但在linux上面没有分,只需要下载 x-86-64 版本的即可。

  以·tar.gz为扩展名的是一种压缩文件,在Linux和OSX下常见,Linux和OSX都可以直接解压使用这种压缩文件。


  注意:root用户不能用是使用安装,root用户无法用来安装,需要用root用户创建一个新的用户要安装oracle。

2.硬件检测:
物理内存不少于1G
硬盘可以空间不少于5G
swap分区空间不少于2G
支持256色以上显卡
cpu主频不小于550mHZ
cat /etc/issue
uname -r (版本)
grep MemTotal /proc/meminfo (内存大小)
grep SwapTotal /proc/meminfo (交换区大小)
grep "model name" /proc/cpuinfo (CPU信息)
free (可用内存)
3.检查安装依赖系统包
  操作系统依赖的具体包,请参考官方安装文档。
binutils-2.17.50.0.
compat-libstdc++--3.2.
compat-libstdc++--3.2. ( bit)
elfutils-libelf-0.125
elfutils-libelf-devel-0.125
gcc-4.1.
gcc-c++-4.1.
glibc-2.5-
glibc-2.5- ( bit)
glibc-common-2.5
glibc-devel-2.5
glibc-devel-2.5 ( bit)
glibc-headers-2.5
ksh-
libaio-0.3.
libaio-0.3. ( bit)
libaio-devel-0.3.
libaio-devel-0.3. ( bit)
libgcc-4.1.
libgcc-4.1. ( bit)
libstdc++-4.1.
libstdc++-4.1. ( bit)
libstdc++-devel 4.1.
make-3.81
sysstat-7.0.
unixODBC-2.2. (-bit) or later
unixODBC-devel-2.2. (-bit) or later
unixODBC-2.2. (-bit) or later

  检查依赖包

rpm -q binutils compat-libstdc++- 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++-

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

    groupadd oinstall
groupadd dba
useradd -g oinstall -G dba oracle

  设置oracle用户密码

passwd oracle
5.修改内核参数
  在/sbin/sysctl.conf 文件中,使用文本编辑器或vi命令增加或修改以下参数 (vi /sbin/sysctl.conf)
fs.aio-max-nr =
fs.file-max =
kernel.shmall =
kernel.shmmax =
kernel.shmmni =
kernel.sem =
net.ipv4.ip_local_port_range =
net.core.rmem_default =
net.core.rmem_max =
net.core.wmem_default =
net.core.wmem_max =

  修改后,使设置生效

/sbin/sysctl -p
6.修改用户限制
  在/etc/security/limits.conf 文件中,使用文本编辑器或vi命令
vi /etc/security/limits.conf 

   增加以下参数

oracle soft nproc
oracle hard nproc
oracle soft nofile
oracle hard nofile
oracle soft stack

  在/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
ulimit -n
else
ulimit -u -n
fi
fi

  

  使设置生效

source /etc/profile
 7.创建安装目录(可根据情况,选择比较多空间的目录创建)
mkdir -p /usr/oracle
chown -R oracle:oinstall /usr/oracle
chmod -R /usr/oracle

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

nventory_loc=/usr/oracle/oraInventory
inst_group=oinstall

  更改文件的权限

chown oracle:oinstall /etc/oraInst.loc
chmod /etc/oraInst.loc

9.设置oracle环境变量

su - oracle    //切换用户到oracle

vi ~/.bash_profile  //访问或者创建 home/oracle目录下面的.bash_profile文件

  在最后加上以下内容

export ORACLE_BASE=/usr/oracle
export ORACLE_SID=orcl

  注意,除了ORACLE_BASE和ORACLE_SID,( /etc/profile和.bash_profile中)不设置任何oracle相关环境变量(ORACLE_HOME, PATH, LD_LIBRARY_PATH等)。其他环境变量将在安装完成后再配置。

  使设置生效

source /home/oracle/.bash_profile

  检查环境变量:

env

  同时,在使用静默安装的时候会检查DISPLAY的设置,如果经常说检查DISPLAY不行的话,到root用户下执行“xhost + 你的ip:0.0“

10.解压oracle安装文件

unzip linux.x64_11gR2_database_1of2.zip
unzip linux.x64_11gR2_database_2of2.zip

11.复制响应文件模板

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

  设置响应文件权限

su - root
chmod /home/oracle/etc/*.rsp(注意所有者,oinstall)

12.静默安装Oracle软件

  切换用户

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

  添加一下内容

oracle.install.option=INSTALL_DB_SWONLY // 安装类型
ORACLE_HOSTNAME=db // 主机名称(hostname查询)
UNIX_GROUP_NAME=oinstall // 安装组
INVENTORY_LOCATION=/usr/oracle/oraInventory //INVENTORY目录(不填就是默认值)
SELECTED_LANGUAGES=en,zh_CN,zh_TW // 选择语言
ORACLE_HOME=/usr/oracle/product/11.2./db_1 // oracle_home
ORACLE_BASE=/usr/oracle // oracle_base
oracle.install.db.InstallEdition=EE // oracle版本
oracle.install.db.isCustomInstall=false //自定义安装,否,使用默认组件
oracle.install.db.DBA_GROUP=dba // dba用户组
oracle.install.db.OPER_GROUP=oinstall // oper用户组
oracle.install.db.config.starterdb.type=GENERAL_PURPOSE //数据库类型
oracle.install.db.config.starterdb.globalDBName=orcl //globalDBName
oracle.install.db.config.starterdb.SID=orcl //SID
oracle.install.db.config.starterdb.memoryLimit= //自动管理内存的内存(M)
oracle.install.db.config.starterdb.password.ALL=oracle //设定所有数据库用户使用同一个密码
SECURITY_UPDATES_VIA_MYORACLESUPPORT=false(手动写了false)
DECLINE_SECURITY_UPDATES=true //设置安全更新(貌似是有bug,这个一定要选true,否则会无限提醒邮件地址有问题,终止安装。PS:不管地址对不对)

  其他的变量不配置或者默认即可。

开始静默安装

cd database
./runInstaller -silent -responseFile /home/oracle/etc/db_install.rsp

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

查看安装日志信息了解安装进度
cd $ORACLE_BASE/oraInventory/logs
tail -f installActions*.log

 

出现类似如下提示表示安装完成
#-------------------------------------------------------------------
/usr/oracle/oraInventory/orainstRoot.sh
/usr/oracle/product/11.2.0/db_1/root.sh
To execute the configuration scripts:
1. Open a terminal window 
2. Log in as "root" 
3. Run the scripts 
4. Return to this window and hit "Enter" key to continue
 
Successfully Setup Software.
#-------------------------------------------------------------------

使用root用户执行脚本

这里是有两个脚本要执行,跑一下就好

su - root
/usr/oracle/product/11.2./db_1/root.sh
/usr/oracle/oraInventory/orainstRoot.sh

  增加oracle环境变量

su - oracle

vi ~/.bash_profile

  在最后加上以下内容

export ORACLE_HOME=$ORACLE_BASE/product/11.2./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
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

  使设置生效

source /home/oracle/.bash_profile

  到这里,oracle11g的数据库实例就算是装好了。

  可以使用sqlplus登录数据库查看数据库是否安装成功!

sqlplus 用户名/密码  (可选:连接IP) as sysdba