一、准备工作
Oracle Software Delivery Cloud 官网
https://edelivery.oracle.com/osdc/faces/SoftwareDelivery
1、下载Oracle安装包,通过ftp工具上传到linux服务器并解压
下载完成后
此处上传目录以 /opt/software/ 为例。(建议不要放在/home文件夹下,到后续会有很多因为权限访问或者权限执行问题导致安装失败)解压后两个文件会自动放入当前路径的database目录下,执行命令如下:
如果未安装 unzip 命令,可使用 yum 安装:
yum install -y unzip zip
定位到software目录下 并解压oracle安装包
cd /opt/software/
unzip V17530-01_1of2.zip
unzip V17530-01_2of2.zip
2、在/etc/hosts文件中增加主机名映射,配置host文件
vim /etc/hosts
192.168.31.100 oracle11g
3、关闭selinux
vim /etc/selinux/config
# 修改内容
SELINUX=disabled
#执行命令,关闭SELinux
setenforce 0
4 关闭防火墙
systemctl stop firewalld
systemctl disable firewalld.service
二、安装步骤
1、安装依赖包
yum -y install binutils compat-libstdc++-33 compat-libstdc++-33.i686elfutils-libelf elfutils-libelf-devel gcc gcc-c++ glibc glibc.i686 glibc-common glibc-devel glibc-devel.i686glibc-headers ksh libaio libaio.i686 libaio-devel libaio-devel.i686 libgcc libgcc.i686 libstdc++ libstdc++.i686libstdc++-devel make sysstat unixODBC unixODBC-devel
2、添加oracle用户和用户组
创建oinstall组和dba组,把oracle用户加入到用户组,并设置oracle登录密码,命令如下:
groupadd oinstall
groupadd dba
useradd -g oinstall -G dba oracle
passwd oracle
# 把database文件权限给oracle:oinstall
chown -R oracle:oinstall /opt/software/database/
3、创建oracle安装目录和设置目录权限
mkdir /opt/module/oracle # oracle是数据库系统安装目录,
mkdir /opt/module/oracle/oradata # oradata是数据库数据安装目录,
mkdir /opt/module/oracle/oradata_back # oradata_back是数据备份目录,
mkdir /opt/module/oracle/oraInventory # oraInventory是清单目录
chown -R oracle:oinstall /opt/module/oracle /opt/module/oracle/oraInventory /opt/module/oracle/oradata/
chmod -R 775 /opt/module/oracle /opt/module/oracle/oraInventory /opt/module/oracle/oradata/
4、配置oracle用户环境变量
vim /home/oracle/.bash_profile
# 在文件底部追加以下内容
export ORACLE_BASE=/opt/module/oracle
export ORACLE_SID=orcl
# 保存退出,刷新配置
source /home/oracle/.bash_profile
5、切换到root用户并授权相关文件
su - root
cd /home/oracle/
mkdir etc
# 将解压后的配置文件复制过来
cp /opt/software/database/response/* /home/oracle/etc/
# 授权
chown -R oracle:oinstall /home/oracle/etc
chmod 777 /home/oracle/etc/*.rsp
6、切换到oracle用户,配置数据库安装文件
su - oracle
vim /home/oracle/etc/db_install.rsp
oracle.install.option=INSTALL_DB_SWONLY
ORACLE_HOSTNAME=oracle11g #主机名
UNIX_GROUP_NAME=oinstall
INVENTORY_LOCATION=/opt/module/oracle/oraInventory
SELECTED_LANGUAGES=en,zh_CN,zh_TW
ORACLE_HOME=/opt/module/oracle/product/11.2.0/db_1
ORACLE_BASE=/opt/module/oracle
oracle.install.db.InstallEdition=EE
oracle.install.db.isCustomInstall=false
oracle.install.db.DBA_GROUP=dba
oracle.install.db.OPER_GROUP=oinstall
#这里必须填ture
DECLINE_SECURITY_UPDATES=true
7、根据响应文件安装oracle
cd /opt/software/database
./runInstaller -silent -force -responseFile /home/oracle/etc/db_install.rsp -ignorePrereq
仔细检查是否有填写正确,之前有试过忘记oracle.install.option 忘记填写了,结果报了Global database name cannot be left blank.
参数说明:
/opt/software/database 是安装包解压后的路径,此处根据安装包解压所在位置做修改,因人而异。
runInstaller 是主要安装脚本
-silent 静默模式
-force 强制安装
-ignorePrereq忽略warning直接安装。
-responseFile读取安装应答文件。
8、上述程序安装完成后,按“Enter”键继续执行root脚本程序
sh /opt/module/oracle/product/11.2.0/db_1/root.sh
9、切换成oracle用户配置环境变量
su - oracle
vim ~/.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
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
使.bash_profile文件生效:
source ~/.bash_profile
10、安装数据库实例
如果需要安装多个实例,则重复如下操作即可,但是注意dbca.rsp文件如下的配置要做对应修改
配置dbca.rsp文件:
vim /home/oracle/etc/dbca.rsp
配置如下:
GDBNAME = "orcl"
SID = "orcl"
SYSPASSWORD = "oracle"
SYSTEMPASSWORD = "oracle"
SYSMANPASSWORD = "oracle"
DBSNMPPASSWORD = "oracle"
DATAFILEDESTINATION =/opt/module/oracle/oradata #有默认值,可选
RECOVERYAREADESTINATION = /opt/module/oracle/fast_recovery_area #有默认值,可选
CHARACTERSET = "AL32UTF8"
TOTALMEMORY = "40960"
注意要把配置信息写在[CREATEDATABASE]范围内,且不要删除注释掉其他的配置信息例如TEMPLATENAME (踩过坑)
参数说明:
GDBNAME="orcl" #78行 全局数据库的名字
SID="orcl" #149行 SID对应的实例名字
SYSPASSWORD="oracle" #190行 SYS管理员密码
SYSTEMPASSWORE="oracle" #200行 SYSTEM管理员密码
DATAFILEDESTINATION=/opt/module/oracle/oradata #357行 数据文件存放目录,默认值:$ORACLE_BASE/oradata,【该目录下的数据库文件是用各个数据库实例名命名的文件夹区分开来的】
RECOVERYAREADESTINATION=/usr/local/oradata_back #367行 恢复数据存放目录,默认值:$ORACLE_BASE/flash_recovery_area
CHARACTERSET="AL32UTF8" #415行 字符集,重要!!!建库后一般不能更改,所以建库前要确定清楚
TOTALMEMORY= "40,960" #540行 oracle内存40,960MB,建议为物理内存70%~85%,物理内存50*1024*80%
静默安装数据库命令
dbca -silent -responseFile /home/oracle/etc/dbca.rsp
ps -ef | grep ora_ | grep -v grep
netca /silent /responsefile /home/oracle/etc/netca.rsp
安装完成,切换回 oracle用户,使用sqlplus连接测试
sqlplus system
*如果出现
sqlplus: error while loading shared libraries: libnsl.so.1: cannot open shared object file: No such file or directory
应该是实例安装失败了,通过
ldd $ORACLE_HOME/bin/sqlplus
可以查到具体的出错原因
我这边是出现的是
error while loading shared libraries: libclntsh.so.11.1: cannot open shared object file: No such file or directory
ldd $ORACLE_HOME/bin/sqlplus
libclntsh.so.11.1 => not found
这是在oracle官网下载的版本与linux系统内核有不兼容导致
解决方法:删除原有的oracle目录并重新下载适配的oracle版本重新安装*
文章来源于互联网
原文标题:Linux环境下 安装Oracle
原文地址:https://blog.csdn.net/Hx230/article/details/127916891