centos7静默安装oracle-11g
首先在官网下载好oracle11g的安装包
linux.x64_11gR2_database_1of2.zip
linux.x64_11gR2_database_2of2.zip
最好使用最小化centos系统,不要有桌面的
1, 在/etc/hosts文件中添加本机IP跟主机名
2, 关闭selinux和防火墙
3, 安装Oracle 11g依赖包
yum -y install gcc make binutils gcc-c++ compat-libstdc++-33 elfutils-libelf-devel elfutils-libelf-devel-static elfutils-libelf-devel ksh libaio libaio-devel numactl-devel sysstat unixODBC unixODBC-devel pcre-devel libXp*
这里一定要确认所有包都装了,特别注意ksh,否则后面安装会报错
4, 添加oinstall 、dba 组,新建oracle用户并加入oinstall、dba组中
groupadd oinstall
groupadd dba
useradd -g oinstall -G dba oracle
passwd oracle
id oracle
5, 修改内核参数:编辑 /etc/sysctl.conf
添加以下设置:
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
6, 修改用户的限制文件,编辑 /etc/security/limits.conf
添加以下配置:
oracle soft nproc 2047
oracle hard nproc 16384
oracle soft nofile 1024
oracle hard nofile 65536
oracle soft stack 10240
7, 修改/etc/pam.d/login文件
添加以下配置:
session required /lib64/security/pam_limits.so
session required pam_limits.so
8, 修改/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
source /etc/profile
9, 创建安装目录、修改文件权限
这里我是在/opt目录下创建的
mkdir -p /opt/oracle/product/11.2.0
mkdir /opt/oracle/oradata
mkdir /opt/oracle/inventory
mkdir /opt/oracle/fast_recovery_area
chown -R oracle:oinstall /opt/oracle
chmod -R 775 /opt/oracle
10, 设置oracle用户环境变量
vim /home/oracle/.bash_profile #注意目录要跟自己的一样
#添加以下配置
ORACLE_BASE=/opt/oracle
ORACLE_HOME=$ORACLE_BASE/product/11.2.0
ORACLE_SID=orcl
PATH=$PATH:$ORACLE_HOME/bin
export ORACLE_BASE ORACLE_HOME ORACLE_SID PATH
source /home/oracle/.bash_profile
11, 上传oracle软件包到 /opt目录下, 解压oracle软件包
unzip linux.x64_11gR2_database_1of2.zip
unzip linux.x64_11gR2_database_2of2.zip
# 解压后目录下会出现一个database目录
12, 编辑静默安装响应文件
进入oracle安装包解压后的目录 /opt/database/response/下备份db_install.rsp文件。
再编辑 /opt/database/response/db_install.rsp文件
#修改以下参数,注意目录
oracle.install.option=INSTALL_DB_SWONLY
ORACLE_HOSTNAME=lwq #主机名
UNIX_GROUP_NAME=oinstall
INVENTORY_LOCATION=/opt/oracle/inventory
SELECTED_LANGUAGES=en,zh_CN
ORACLE_HOME=/opt/oracle/product/11.2.0
ORACLE_BASE=/opt/oracle
oracle.install.db.InstallEdition=EE
oracle.install.db.DBA_GROUP=dba
oracle.install.db.OPER_GROUP=dba
DECLINE_SECURITY_UPDATES=true
13, 根据响应文件安装oracle 11g
su oracle #这里要切换到oracle用户
cd /opt/database
./runInstaller -silent -ignorePrereq -ignoreSysPrereqs -responseFile /opt/database/response/db_install.rsp #注意自己的目录
Oracle开始在后台静默安装。安装过程中,如果提示[WARNING]不必理会,此时安装程序仍在后台进行,如果出现[FATAL],则表示安装程序已经停止了
此时再打开另外一个终端选项卡,根据提示查看日志安装信息
看到日志文件会持续输出安装信息没有输入异常信息,则表明安装过程正常。
![](https://img2018.cnblogs.com/blog/1553892/201902/1553892-20190221152027546-1513481112.png)
出现以上界面,则说明安装成功
14, 按照提示切换root用户运行脚本,可以另外开一个终端执行脚本
sh /opt/oracle/inventory/orainstRoot.sh
sh /opt/oracle/product/11.2.0/root.sh
15, 用oracle用户登录配置监听
netca -silent -responseFile /opt/database/response/netca.rsp //如果没有这个命令,则source一下oracle用户profile文件
出现上图情况时,则需要配置DISPLAY变量,配完之后重新netca:
export DISPLAY=localhost:0.0
netca -silent -responseFile /opt/database/response/netca.rsp
如果出现上图这种错误,则说明刚开始有个依赖包没安装
出现这样则安装正确
成功运行后,会在/opt/oracle/product/11.2.0/network/admin/ 中生成listener.ora和sqlnet.ora两个文件。
查看监听端口: netstat -an | grep 1521
16, 建立新库,同时建立对应的实例
使用root用户
编辑 /opt/database/response/dbca.rsp
修改以下参数:注意目录配置
GDBNAME = "orcl"
SID = "orcl"
SYSPASSWORD = "oracle"
SYSTEMPASSWORD = "oracle"
SYSMANPASSWORD = "oracle"
DBSNMPPASSWORD = "oracle"
DATAFILEDESTINATION = /opt/oracle/oradata
RECOVERYAREADESTINATION = /opt/oracle/fast_recovery_area
CHARACTERSET = "ZHS16GBK"
TOTALMEMORY = "1638"
17, 进行静默配置
su oracle
dbca -silent -responseFile /opt/database/response/dbca.rsp
这样则代表安装成功
完成建库后进行实例检查 ps -ef | grep ora_
![](https://img2018.cnblogs.com/blog/1553892/201902/1553892-20190221152914792-1209329079.png)
查看监听状态 lsnrctl status
![](https://img2018.cnblogs.com/blog/1553892/201902/1553892-20190221152933245-1034234344.png)
18, 登录查看实例状态
切换oracle用户
sqlplus / as sysdba
SQL> startup #启动数据库
ORA-01081报错处理方式:先关闭再启动
shutdown
startup
![](https://img2018.cnblogs.com/blog/1553892/201902/1553892-20190221153141252-888171471.png)
以下是几种其他报错
![](https://img2018.cnblogs.com/blog/1553892/201902/1553892-20190221153207341-428958602.png)
19, 用Navicat Premium连接 oracle 可以看这个操作https://www.cnblogs.com/fx-blog/p/6232077.html
创建数据库登陆用户:
create user 用户名 identified by 密码;
grant connect,resource,dba to 用户名;
此有锦囊若干,公可依计行事