转帖自
最近公司要进行oracle11G的现网环境的搭建,对于oracle的windows安装来讲简单化的图形化界面比较容易,但是对于linux来讲,之前没有搭建过,结合在博客园以及csdn博客园的资料查询,今天大半夜我要在没有外网的环境下,对centos7 64位的系统进行oracle11G的搭建。
首先申明,由于公司的linux机器不允许连接外网,所以一切工作都在离线环境下进行,所以我们需要第一步做的就是下载所有oracle的离线 安装包。我已经下载,这里不提供下载的包。
记录:离线安装依赖包放置于:百度云盘\我的网盘\我的资源\oracle-linux环境下离线依赖所有包。
首先我们将下载好的离线包放置于我们要部署搭建的对应的linux机器上。接下来我们按照下面的步骤进行离线安装。
1:查看主机名将主机名称改成自定义的名称之后可做使用。
查看主机名称:hostname 修改主机名称: hostname 要修改的名称
2:添加主机名与ip对应:
vi /etc/hosts
在下面添加自己ip和自定义的主机名
3:关闭selinux
sed -i "s/SELINUX=enforcing/SELINUX=disabled/" /etc/selinux/config
setenforce 0
4:安装oracle依赖包:
cd /tools/oracle-yilai/
rpm -ivh ./* --nodeps --force
安装完后检测有没有未安装成功的依赖包:
rpm -q binutils compat-libcap1 compat-libstdc++-33 gcc gcc-c++ glibc glibc-devel ksh libaio libaio-devel libgcc libstdc++ libstdc++-devel libXi libXtst make sysstat unixODBC unixODBC-devel |grep "not installed"
命令执行完未收到响应证明安装成功无缺失
5:关闭linux的防火墙:
systemctl disable firewalld.service
6:添加oinstall,dba 组,新建oracle用户并将oracle用户加入oinstall,dba 组中。
groupadd oinstall //添加oinstall组
groupadd dba //添加dba组
useradd -g oinstall -G dba oracle //创建oracle用户并加入这两个组中
passwd oracle 给oracle用户设置密码
id oracle //测试刚刚上面的操作是否成功
7:创建oracle安装目录,给相关权限
mkdir -p /u01/app/oracle/product/11.2.0/db_1
mkdir /u01/app/oracle/oradata
mkdir /u01/app/oracle/oraInventory
mkdir /u01/app/oracle/fast_recovery_area
chown -R oracle:oinstall /u01/app
chmod -R 775 /u01/app
8:配置调整内存参数
vim /etc/sysctl.conf
在文件中添加如下设置:(其中kernel.shmmax = 1073741824为本机物理内存(2G)的一半,单位为byte。)
fs.file-max = 6815744
kernel.shmall = 2097152
kernel.shmmax = 1073741824
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
9:修改用户的限制文件
vi /etc/security/limits.conf
在文件里添加如下内容
oracle soft nproc 2047
oracle hard nproc 16384
oracle soft nofile 1024
oracle hard nofile 65536
oracle soft stack 10240
10:修改/etc/pam.d/login文件
vim /etc/pam.d/login
添加内容如下
session required /lib64/security/pam_limits.so
session required pam_limits.so
11:修改/etc/profile 文件
vim /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
12:解压oracle11G的安装包
cd /tools
unzip linux.x64_11gR2_database_1of2.zip
unzip linux.x64_11gR2_database_2of2.zip
修改目录的属性
chmod -R 775 /tools
chown -R oracle:oinstall /tools
开始静默安装oracle
1.切换到oracle用户,设置oracle用户环境变量
su - oracle
vim .bash_profile
添加以下内容
#for oracle
export ORACLE_BASE=/u01/app/oracle
export ORACLE_HOME=/u01/app/oracle/product/11.2.0/db_1
export ROACLE_PID=ora11g
export ORACLE_SID=orcl
#export NLS_LANG=AMERICAN_AMERICA.AL32UTF8
export PATH=$PATH:$HOME/bin:$ORACLE_HOME/bin
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/usr/lib
export LANG="zh_CN.UTF-8"
export NLS_LANG="SIMPLIFIED CHINESE_CHINA.AL32UTF8"
export NLS_DATE_FORMAT='yyyy-mm-dd hh24:mi:ss'
执行以下命令使环境变量生效
source ~/.bash_profile
2.修改应答文件
cd /home/oracle
vi db_install.rsp
添加以下内容:
oracle.install.option=INSTALL_DB_SWONLY
ORACLE_HOSTNAME= oracletest //这个是hostname
UNIX_GROUP_NAME=oinstall
INVENTORY_LOCATION=/u01/app/oraInventory
SELECTED_LANGUAGES=en,zh_CN
ORACLE_HOME=/u01/app/oracle/product/11.2.0/db_1
ORACLE_BASE=/u01/app/oracle
oracle.install.db.InstallEdition=EE
oracle.install.db.DBA_GROUP=dba
oracle.install.db.OPER_GROUP=dba
DECLINE_SECURITY_UPDATES=true
3.执行静默安装
在静默安装之前建议先重启系统,使所有配置都生效。
具体命令如下方:
sudo reboot -----重启
su - oracle 切换到oracle用户
source .bash_profile 使环境变量生效
cd /tools/database/ 切换到oracle安装包解压后的目录下
./runInstaller -silent -ignorePrereq -ignoreSysPrereqs -responseFile /home/oracle/db_install.rsp 静默安装
当出现以下用root执行脚本的命令之后,切换root执行提示中的脚本内容。
4.静默配置监听
@1切换到oracle用户下:
netca /silent /responsefile /home/oracle/netca.rsp
@2检验:在 /u01/app/oracle/product/11.2.0/db_1/network/admin/
中生成 listener.ora
和 sqlnet.ora
@3、通过netstat命令可以查看1521端口正在监听
netstat -tnul | grep 1521
@4:通过命令直接建立oracle实例
dbca -silent -createDatabase -templateName General_Purpose.dbc -gdbname orcl -sid orcl -sysPassword syc -systemPassword syc -responseFile NO_VALUE -datafileDestination /u01/app/oracle/oradata -redoLogFileSize 50 -recoveryAreaDestination /u01/app/oracle/fast_recovery_area -storageType FS -characterSet ZHS16GBK -nationalCharacterSet AL16UTF16 -sampleSchema true -memoryPercentage 30 -totalMemory 200 -databaseType OLTP -emConfiguration NONE
@5:检查监听的启动与启动oracle监听
lsnrctl status
未启动可执行命令:lsnrctl start
至此oracle数据库已经安装完成,可以使用 sqlplus执行命令了
-----------------------------------------------------------------------------------------------------------------------------------------------------------------------
-----------------------------------------------------------------------------------------------------------------------------------------------------------------------
<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<额外补充>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
设置开机自启动:
修改ORACLE_HOME_LISTNER
将下面两个文件的ORACLE_HOME_LISTNER=$1修改为ORACLE_HOME_LISTNER=$ORACLE_HOME
vim /u01/app/oracle/product/11.2.0/db_1/bin/dbstart
vim /u01/app/oracle/product/11.2.0/db_1/bin/dbshut
配置oratab
vi /etc/oratab
找到testsid:/opt/oracle/102:N,改为testsid:/opt/oracle/102:Y
配置rc.local
vi /etc/rc.d/rc.local
添加如下行
su oracle -lc "/u01/app/oracle/product/11.2.0/db_1/bin/lsnrctl start"
su oracle -lc /u01/app/oracle/product/11.2.0/db_1/bin/dbstart
增加权限
chmod +x /etc/rc.d/rc.local
/u01/app/oracle/product/11.2.0/db_1