通过SSH远程连接云主机,上传oracle11g安装包,在centos6.9上无图形化界面静默安装oracle11g。
1、本地环境windows8+ssh远程连接工具CRT7.3.3
2、远程云主机CentOS6.9 64位系统
3、安装包文件linux.x64_11gR2_database_1of2.zip、linux.x64_11gR2_database_2of2.zip
1、最小内存1G,推荐2G或2G以上
2、1GB跟2GB物理内存之间的,设定swap大小为物理内存的1.5倍
2GB跟16GB物理内存之间的,设置swap大小与物理内存相等
16GB物理内存以上的,设置swap大小为16GB
3、硬盘要求空间至少5-6GB
安装依赖包
yum -y install binutils compat-libstdc++-33 compat-libstdc++-33.i686 elfutils-libelf elfutils-libelf-devel gcc gcc-c++
glibc glibc.i686 glibc-common glibc-devel glibc-devel.i686 glibc-headers ksh libaio libaio.i686 libaio-devel libaio-devel.i686
libgcc libgcc.i686 libstdc++ libstdc++.i686 libstdc++-devel make sysstat unixODBC unixODBC-devel zip unzip
设定swap空间
1.在/home/下生成swap文件 设定大小2GB dd if=/dev/zero of=/home/swapfile bs=1M count=2048 2.设定使用/home/swapfile交换文件 mkswap /home/swapfile 3.启用交换分区 swapon /home/swapfile 4.编辑文件/ect/fstab vi /etc/fstab 以便引导系统时启用交换文件,文件最下方插入 /home/swapfile swap swap defaults 0 0
添加oracle用户
创建oinstall、dba组 将oracle用户加入组 修改并设定oracle用户密码 groupadd oinstall groupadd dba useradd -g oinstall -G dba oracle passwd oracle
修改内核参数
编辑文件/etc/sysctl.conf vi /etc/sysctl.conf 配置文件内加入 修改以下参数。如果没有可以自己添加,如果默认值比参考值大,则不需要修改。 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 = 1048586 执行命令sysctl使其自检并生效 sysctl -p
修改用户资源限制
1.修改/etc/security/limits.conf配置文件 vi /etc/security/limits.conf 2.配置文件下方加入 oracle soft nproc 2047 oracle hard nproc 16384 oracle soft nofile 1024 oracle hard nofile 65536 oracle soft stack 10240 vi /etc/profile if [ $USER = "oracle" ]; then if [ $SHELL = "/bin/ksh" ]; then ulimit -p 16384 ulimit -n 65536 else ulimit -u 16384 -n 65536 fi fi 使设置生效
3.修改/etc/pam.d/login配置文件 vi /etc/pam.d/login 4.配置文件内加入 session required /lib64/security/pam_limits.so session required pam_limits.so
创建安装目录
我的数据盘挂在/opt目录 创建安装目录 /opt/oracle /opt/oraInventory /opt/oradata 并赋予组用户及权限 mkdir -p /opt/oracle /opt/oraInventory /opt/oradata/ chown -R oracle:oinstall /opt/oracle /opt/oraInventory /opt/oradata chmod -R 775 /opt/oracle /opt/oraInventory /opt/oradata
创建oraInst.loc文件
创建/etc/oraInst.loc文件 vi /etc/oraInst.loc 文件内加入以下内容 inventory_loc=/opt/oraInventory inst_group=oinstall 保存退出后执行以下命令。设定该文件的用户组及权限。 chown oracle:oinstall /etc/oraInst.loc chmod 664 /etc/oraInst.loc
通过CRT rz命令上传zip文件并解压
unzip linux.x64_11gR2_database_1of2.zip unzip linux.x64_11gR2_database_2of2.zip
待解压完毕后会生成文件夹/opt 修改其用户组及权限此处直接使用777 chmod 777 /opt/database chown -R oracle.oinstall /opt/database
准备oracle安装应答模板文件db_install.rsp文件
1、该文件默认存放在解压后的安装包内,也就是本例中/opt/database/response下, 将oracle静默安装所需应答文件全部拷贝至 /opt/oracle文件夹下 cp /opt/database/response/* /opt/oracle/ 2、修改安装所需的所有应答文件的所属组及权限 chown oracle:oinstall /opt/oracle/*.rsp chmod 755 /opt/oracle/*.rsp 3、配置db_install.rsp文件 vi /opt/oracle/db_install.rsp 4、文件内修改相应的参数配置如下: oracle.install.option=INSTALL_DB_SWONLY //29行,安装类型,只装数据库软件 ORACLE_HOSTNAME=hostxxx //37行,主机名称(命令hostname查询) UNIX_GROUP_NAME=oinstall //42行,安装组 INVENTORY_LOCATION=/opt/oraInventory //47行,INVENTORY目录(**不填就是默认值,本例此处需修改,因个人创建安装目录而定) SELECTED_LANGUAGES=en,zh_CN,zh_TW //78行,选择语言 ORACLE_HOME=/opt/oracle/product/11.2.0/db_1 //83行,路径根据目录情况注意修改 本例安装路径/opt/oracle ORACLE_BASE=/opt/oracle //88行,路径根据目录情况注意修改 oracle.install.db.InstallEdition=EE //99行,oracle版本 oracle.install.db.isCustomInstall=false //108行,自定义安装,否,使用默认组件 oracle.install.db.DBA_GROUP=dba //142行,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(**此处注意与环境变量内配置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行 DECLINE_SECURITY_UPDATES=true //385行,设置安全更新 设定一定要为true
设置oracle用户环境
由root切换至创建好的oracle用户 su - oracle 修改该用户的用户配置文件 vi .bash_profile 文件内加入并修改至以下内容 export ORACLE_BASE=/opt/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使设置生效
在oracle用户下开始安装
执行命令。 /opt/database/./runInstaller -silent -force -ignorePrereq -responseFile /opt/oracle/db_install.rsp 参数说明 /opt/database是安装包解压后的路径,此处根据安装包解压所在位置做修改,因人而异。 runInstaller 是主要安装脚本 -silent 静默模式 -force 强制安装 -ignorePrereq忽略warning直接安装。 -responseFile读取安装应答文件。
CRT另起窗口并切换到root用户检测安装过程
通过 watch -d -n 2 'du -sh /opt/oracle' 监测oracle安装目录是否变化。或者直接tail -f命令监测安装log日志。
tailf /opt/oraInventory/logs/installActions2018-08-12_11-02-03AM.log
安装成功后会会提示如下:
INFO: Exit Status is 0
INFO: Shutdown Oracle Database 11g Release 2 Installer
等待安装编译直至出现以下内容,在新创建的root窗口内执行以下提示内的脚本
既 /opt/oracle/product/11.2.0/db_1/root.sh
The following configuration scripts need to be executed as the "root" user.
#!/bin/sh
#Root scripts to run
/opt/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.
增加oracle环境变量
所有export项:
export ORACLE_BASE=/opt/oracle
export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/db_1
export TNS_ADMIN=$ORACLE_HOME/network/admin
export ORACLE_SID=orcl
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使设置生效
静默配置网络
$ORACLE_HOME/bin/netca /silent /responseFile /opt/oracle/netca.rsp
静默安装数据库
修改仅安装数据库的响应文件
vi /opt/oracle/dbca.rsp
GDBNAME="orcl.hostxxx" //78行,全局数据库的名字=SID+主机域名
SID="orcl" //149行,SID
CHARACTERSET="AL32UTF8" //415行,编码
NATIONALCHARACTERSET="UTF8" //425行,编码
执行静默安装数据库
$ORACLE_HOME/bin/dbca -silent -responseFile /opt/oracle/dbca.rsp
建库后实例检查
ps -ef | grep ora_ | grep -v grep | wc -l
ps -ef | grep ora_ | grep -v grep
建库后监听检查
lsnrctl status
设置配置服务名和监听器
cd /opt/oracle/product/11.2.0/db_1/network/admin
tnsnames.ora
ORCL =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = 0.0.0.0)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = orcl)
)
)
listener.ora
SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(SID_NAME = orcl)
(GLOBAL_DBNAME=orcl)
(ORACLE_HOME = /opt/oracle/product/11.2.0/db_1)
(PRESPAWN_MAX=20)
(PRESPAWN_LIST=(PRESPAWN_DESC=(PROTOCOL=tcp)(POOL_SIZE=2)(TIMEOUT=1)))
)
)
LISTENER =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))
(ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
)
)
ADR_BASE_LISTENER = /opt/oracle
sqlnet.ora
NAMES.DIRECTORY_PATH= (TNSNAMES, EZCONNECT)
ADR_BASE = /opt/oracle