非图形静默安装oracle
本文简约介绍了在服务器上安装数据库没有图形界面的时候采用的静默安装方式
我使用的系统是oel6.3 64b的,数据库是oracle 11g其他系统类似,可能有个别不太一样的地方
一、安装数据库软件
1、 设置网络,主机名等
这里主要说下主机名,因为可能tnsname.ora配置文件可能使用
在/etc/hosts中添加或者修改
127.0.0.1 localhost localhost.localdomain
192.168.9.135 rel-135.localhost rel-135
2、安装一些依赖库
cd/media/cdrom/Server/Packages
rpm -Uvh binutils-2*x86_64*
rpm -Uvh glibc-2*x86_64* nss-softokn-freebl-3*x86_64*
rpm -Uvh glibc-2*i686* nss-softokn-freebl-3*i686*
rpm -Uvh compat-libstdc++-33*x86_64*
rpm -Uvh glibc-common-2*x86_64*
rpm -Uvh glibc-devel-2*x86_64*
rpm -Uvh glibc-devel-2*i686*
rpm -Uvh glibc-headers-2*x86_64*
rpm -Uvh elfutils-libelf-0*x86_64*
rpm -Uvh elfutils-libelf-devel-0*x86_64*
rpm -Uvh gcc-4*x86_64*
rpm -Uvh gcc-c++-4*x86_64*
rpm -Uvh ksh-*x86_64*
rpm -Uvh libaio-0*x86_64*
rpm -Uvh libaio-devel-0*x86_64*
rpm -Uvh libaio-0*i686*
rpm -Uvh libaio-devel-0*i686*
rpm -Uvh libgcc-4*x86_64*
rpm -Uvh libgcc-4*i686*
rpm -Uvh libstdc++-4*x86_64*
rpm -Uvh libstdc++-4*i686*
rpm -Uvh libstdc++-devel-4*x86_64*
rpm -Uvh make-3.81*x86_64*
rpm -Uvh numactl-devel-2*x86_64*
rpm -Uvh sysstat-9*x86_64*
rpm -Uvh compat-libstdc++-33*i686*
rpm -Uvh compat-libcap*
centos7可以添加这些包:
yum install binutils -y
yum install compat-libstdc++-33 -y
yum install compat-libstdc++-33.i686 -y
yum install gcc -y
yum install gcc-c++ -y
yum install glibc -y
yum install glibc.i686 -y
yum install glibc-devel -y
yum install glibc-devel.i686 -y
yum install ksh -y
yum install libgcc -y
yum install libgcc.i686 -y
yum install libstdc++ -y
yum install libstdc++.i686 -y
yum install libstdc++-devel -y
yum install libstdc++-devel.i686 -y
yum install libaio -y
yum install libaio.i686 -y
yum install libaio-devel -y
yum install libaio-devel.i686 -y
yum install libXext -y
yum install libXext.i686 -y
yum install libXtst -y
yum install libXtst.i686 -y
yum install libX11 -y
yum install libX11.i686 -y
yum install libXau -y
yum install libXau.i686 -y
yum install libxcb -y
yum install libxcb.i686 -y
yum install libXi -y
yum install libXi.i686 -y
yum install make -y
yum install sysstat -y
yum install unixODBC -y
yum install unixODBC-devel -y
yum install zlib-devel -y
yum install elfutils-libelf-devel -y
或者:
yum -y install gcc gcc-c++ make binutils compat-libstdc++-33 glibc glibc-devel libaio libaio-devel libgcc libstdc++ libstdc++-devel libXtst sysstat ksh make libXi compat-libc
说明:pdksh是一个老包了,新的oracle都使用ksh包了,但是oracle的check机制里面并没有把这个check去掉,所以在执行界面安装oracle的时候,还会有告警信息,我们可以忽略掉它
另外为了保险起见,在64位上安装oracle的时候 需要安装32位的libaio另外还有unixODBC
2、 配置/etc/sysctl.conf,追加一下内容
net.ipv4.icmp_echo_ignore_broadcasts = 1
net.ipv4.conf.all.rp_filter = 1
#设置最大打开文件数
fs.file-max = 6815744
fs.aio-max-nr = 1048576
#共享内存的总量,8G内存设置:2097152*4k/1024/1024
kernel.shmall = 2097152
#最大共享内存的段大小
kernel.shmmax = 2147483648
#整个系统共享内存端的最大数
kernel.shmmni = 4096
kernel.sem = 250 32000 100 128
#可使用的IPv4端口范围
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
为了使这些参数生效,执行/sbin/sysctl –p
3、 配置追加"/etc/security/limits.conf,设置资源限制
oracle soft nproc 2047
oracle hard nproc 16384
oracle soft nofile 4096
oracle hard nofile 65536
oracle soft stack 10240
4、 /etc/pam.d/login最后添加如下内容
session required pam_limits.so
5、 创建组合帐户
groupadd -g 501 oinstall
groupadd -g 502 dba
groupadd -g 503 oper
groupadd -g 504 asmadmin
groupadd -g 506 asmdba
groupadd -g 505 asmoper
useradd -g oinstall -G dba,oper oracle
passwd oracle
6, selinux和防火墙
/etc/selinux/config 修改
SELINUX=permissive
重启服务器,执行;setenforce Permissive
然后关闭防火墙
# systemctl stop firewalld
# systemctl disable firewalld
7、 创建库安装路径
mkdir -p/u01/app/oracle/product/11.2.0.4/db_1
chown -R oracle:oinstall /u01
chmod -R 775 /u01
8、 使用oracle用户登陆修改用户配置.bash_profile,追加内容
# Oracle Settings
TMP=/tmp; export TMP
TMPDIR=$TMP; export TMPDIR
ORACLE_HOSTNAME=rel-135; export ORACLE_HOSTNAME
ORACLE_UNQNAME=DB11G; export ORACLE_UNQNAME
ORACLE_BASE=/u01/app/oracle; export ORACLE_BASE
ORACLE_HOME=$ORACLE_BASE/product/11.2.0.4/db_1; export ORACLE_HOME
ORACLE_SID=DB11G; export ORACLE_SID
ORACLE_TERM=xterm; export ORACLE_TERM
PATH=/usr/sbin:$PATH; export PATH
PATH=$ORACLE_HOME/bin:$PATH; export PATH
LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib; export LD_LIBRARY_PATH
CLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib; export CLASSPATH
export LC_ALL="en_US"
export LANG="en_US"
export NLS_LANG="AMERICAN_AMERICA.ZHS16GBK"
exportNLS_DATE_FORMAT="YYYY-MM-DD HH24:MI:SS"
9、 解压oracle安装文件到/soft下,事先创建文件夹来放文件,修改数据库配置文件
vi/soft/database/response/db.rsp
编辑
oracle.install.responseFileVersion=/oracle/install/rspfmt_dbinstall_response_schema_v11_2_0
oracle.install.option=INSTALL_DB_SWONLY
UNIX_GROUP_NAME=oinstall
INVENTORY_LOCATION=/u01/app/oracle/oraInventory
SELECTED_LANGUAGES=en,zh_CN,zh_TW
ORACLE_HOME=/u01/app/oracle/product/11.2.0/db_1
ORACLE_BASE=/u01/app/oracle
oracle.install.db.InstallEdition=EE
oracle.install.db.isCustomInstall=true
oracle.install.db.customComponents=oracle.rdbms.partitioning:11.2.0.1.0,oracle.oraolap:11.2.0.1.0,oracle.rdbms.lbac:11.2.0.1.0,oracle.rdbms.dm:11.2.0.1.0,oracle.rdbms.dv:11.2.0.1.0,oracle.rdbms.rat:11.2.0.1.0
oracle.install.db.DBA_GROUP=dba
oracle.install.db.OPER_GROUP=oinstall
oracle.install.db.config.starterdb.type=GENERAL_PURPOSE
oracle.install.db.config.starterdb.globalDBName=DB11G
oracle.install.db.config.starterdb.SID=DB11G
oracle.install.db.config.starterdb.characterSet=AL32UTF8
oracle.install.db.config.starterdb.memoryOption=true
#oracle.install.db.config.starterdb.memoryLimit=XXXM
oracle.install.db.config.starterdb.password.ALL=pwdoracle
DECLINE_SECURITY_UPDATES=true
SECURITY_UPDATES_VIA_MYORACLESUPPORT=false
10、 安装
在oracle安装目录执行
./runInstaller-silent -force -noconfig -responseFile /home/oracle/db.rsp
我在安装的时候出现了什么没有安装权限之类的问题,不过如果出现error错误消息的时候,就需要终止解决问题重新执行,可以在日志中看到详细安装信息,如果确保所有包都安装了还是不行,就添加参数-force
最后提示需要执行两个脚本,
/u01/app/oracle/oraInventory/orainstRoot.sh
/u01/app/oracle/product/11.2.0/db_1/root.sh
安装完成
一下是安装最后部分内容
ou can find the log of this install session at:
/u01/app/oracle/oraInventory/logs/installActions2014-01-10_02-16-37AM.log
The following configuration scripts need to be executed as the"root" user.
#!/bin/sh
#Root scripts to run
/u01/app/oracle/oraInventory/orainstRoot.sh
/u01/app/oracle/product/11.2.0/db_1/root.sh
To execute the configuration scripts:
1. Open a terminalwindow
2. Log in as"root"
3. Run the scripts
4. Return to thiswindow and hit "Enter" key to continue
Successfully SetupSoftware.
二、配置监听
$ $ORACLE_HOME/bin/netca /silent /responsefile /soft/database/response/netca.rsp
成功运行后,在 /u01/app/oracle/product/11.2.0/db_1/network/admin/目录下生成sqlnet.ora和listener.ora两个文件。
如果想配置不同的监听,需要修改文件netca.rsp
查看lsnrctl status
三、创建数据库
创建配置文件dbca.rsp
添加如下内容
[GENERAL]
RESPONSEFILE_VERSION = "11.2.0"
OPERATION_TYPE = "createDatabase"
[CREATEDATABASE]
GDBNAME = "DB11G"
SID = "DB11G"
TEMPLATENAME = "General_Purpose.dbc"
SYSPASSWORD = "oracle"
SYSTEMPASSWORD = "oracle"
DATAFILEDESTINATION = /u01/app/oracle/oradata
RECOVERYAREADESTINATION= /u01/app/oracle/flash_recovery_area
CHARACTERSET = "AL32UTF8"
NATIONALCHARACTERSET= "AL16UTF16"
TOTALMEMORY ="1024"
执行安装
dbca -silent -responseFile /soft/database/response/dbca.rsp
创建过程如下
[oracle@rel-135 response]$ dbca -silent -responseFile /soft/database/response/dbca.rsp
Copying database files
1% complete
3% complete
37% complete
Creating and starting Oracle instance
40% complete
45% complete
50% complete
55% complete
56% complete
60% complete
62% complete
Completing Database Creation
66% complete
70% complete
73% complete
85% complete
96% complete
100% complete
Look at the log file"/u01/app/oracle/cfgtoollogs/dbca/DB11G/DB11G.log" for furtherdetails.
四,检查数据库启动状态
[oracle@rel-135 ~]$ sqlplus / as sysdba
SQL*Plus: Release 11.2.0.1.0 Production on Fri Jan 10 03:07:34 2014
Copyright (c) 1982, 2009, Oracle. All rights reserved.
Connected to:
Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - 64bitProduction
With the Partitioning, Oracle Label Security, OLAP, Data Mining,
Oracle Database Vault and Real Application Testing options
SQL> select * from dual;
D
-
X
查看监听
LSNRCTL for Linux: Version 11.2.0.1.0 - Production on 10-JAN-2014 03:49:19
Copyright (c) 1991, 2009, Oracle. All rights reserved.
Welcome to LSNRCTL, type "help" for information.
LSNRCTL> status
Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC1521)))
STATUS of the LISTENER
------------------------
Alias LISTENER
Version TNSLSNR for Linux: Version 11.2.0.1.0 - Production
Start Date 10-JAN-2014 02:50:46
Uptime 0 days 0 hr. 58 min. 36 sec
Trace Level off
Security ON: Local OS Authentication
SNMP OFF
Listener Parameter File /u01/app/oracle/product/11.2.0/db_1/network/admin/listener.ora
Listener Log File /u01/app/oracle/diag/tnslsnr/rel-135/listener/alert/log.xml
Listening Endpoints Summary...
(DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=EXTPROC1521)))
(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=rel-135.localhost)(PORT=1521)))
Services Summary...
Service "DB11G" has 1 instance(s).
Instance "DB11G", status READY, has 1 handler(s) for this service...
Service "DB11GXDB" has 1 instance(s).
Instance "DB11G", status READY, has 1 handler(s) for this service...
The command completed successfully