admin管理员组

文章数量:1439461

centos7安装oracle11g

1、环境准备

1)jdk安装

上传安装包至对应路径

安装

代码语言:bash复制
sudo tar -zxvf /opt/softapp/jdk-8u333-linux-x64.tar.gz -C /usr/local/
echo 'export JAVA_HOME=/usr/local/jdk1.8.0_333' >> ~/.bashrc
echo 'export PATH=$JAVA_HOME/bin:$PATH' >> ~/.bashrc
echo 'export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar' >> ~/.bashrc
source ~/.bashrc
java -version

2)使用root用户登录操作系统

*上传到安装包到/opt/softapp/oracle/,然后解压

代码语言:bash复制
cd /opt/softapp/oracle
unzip linux.x64_11gR2_database_1of2.zip && unzip linux.x64_11gR2_database_2of2.zip

3)关闭selinux

代码语言:bash复制
vim /etc/selinux/config

设置SELINUX=disabled

代码语言:bash复制
SELINUX=disabled

使命令生效

代码语言:bash复制
setenforce 0

4)关闭防火墙

代码语言:bash复制
service iptables stop
systemctl stop firewalld
systemctl disable firewalld

5)安装Oracle 11g依赖包

代码语言:bash复制
yum install yum install gcc make binutils gcc-c++ compat-libstdc++-33 elfutils-libelf-devel elfutils-libelf-devel-static ksh libaio libaio-devel numactl-devel sysstat unixODBC unixODBC-devel pcre-devel -y

6)添加安装用户和用户组(输入密码时必须是字符+数字+特殊字符,否则不通过)

代码语言:bash复制
groupadd oinstall
groupadd dba
useradd -m -g oinstall -G dba oracle
passwd oracle

7)修改系统资源限制

编辑/etc/security/limits.conf

代码语言:bash复制
vim /etc/security/limits.conf

在文件末尾添加

代码语言:bash复制
oracle          soft      nproc   2047
oracle          hard      nproc   16384
oracle          soft      nofile  1024
oracle          hard      nofile  65536
oracle          soft      stack   10240

8)修改内核参数配置文件

代码语言:bash复制
vim /etc/sysctl.conf

在文件在最后添加

代码语言:bash复制
vm.max_map_count = 655360

fs.aio-max-nr = 1048576
fs.file-max = 6815744
kernel.shmall = 2097152
kernel.shmmax = 2147483648
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

配置生效

代码语言:bash复制
sysctl -p

9)创建安装目录和设置文件权限

代码语言:bash复制
mkdir -p /module/oracle/product/11.2.0
mkdir    /module/oracle/oradata
mkdir    /module/inventory
mkdir    /module/oracle/fast_recovery_area
chown -R oracle:oinstall /module/oracle
chown -R oracle:oinstall /module/inventory
chmod -R 775 /module/oracle

10).设置oracle用户环境变量

代码语言:bash复制
su - oracle
vim .bash_profile

在文件末尾添加以下内容

代码语言:bash复制
# oracle配置
ORACLE_BASE=/module/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

使之生效

代码语言:bash复制
source .bash_profile

11)编辑静默安装响应文件

切换root

代码语言:bash复制
su root

copy到oracle目录下交有oracle管理

代码语言:bash复制
cp -r /opt/softapp/oracle/database /home/oracle/

编辑db_install.rsp

代码语言:bash复制
vim /opt/softapp/oracle/database/response/db_install.rsp

修改以下内容

代码语言:bash复制
oracle.install.option=INSTALL_DB_SWONLY
UNIX_GROUP_NAME=oinstall
INVENTORY_LOCATION=/u01/app/oracle/inventory
SELECTED_LANGUAGES=en,zh_CN
ORACLE_HOME=/module/oracle/product/11.2.0
ORACLE_BASE=/module/oracle
oracle.install.db.InstallEdition=EE
oracle.install.db.DBA_GROUP=dba
oracle.install.db.OPER_GROUP=dba
DECLINE_SECURITY_UPDATES=true

授权

代码语言:javascript代码运行次数:0运行复制
chown -R oracle:oinstall  /home/oracle/database
chmod -R 775 /home/oracle/database

2、安装

1)根据响应文件静默安装Oracle 11g

代码语言:bash复制
su oracle
cd /home/oracle/database
./runInstaller -silent -responseFile /home/oracle/database/response/db_install.rsp -ignorePrereq

2)打开新终端或切换root用户执行

代码语言:bash复制
sh /module/inventory/orainstRoot.sh
sh /module/oracle/product/11.2.0/root.sh

3)打开一个新终端用root登录,然后切换到oracle用户

代码语言:bash复制
su - oracle
netca /silent /responsefile /home/oracle/database/response/netca.rsp

成功运行后,在/u01/app/oracle/product/11.2.0/network/admin/中生成listener.ora和sqlnet.ora

4)安装好后可以运行下面命令来看1521端口已经启动

3、配置

1)以静默方式建立新库,同时也建立一个对应的实例,注意在设置密码时,不能使用特殊符号

编辑dbca.rsp文件

代码语言:bash复制
vim /home/oracle/database/response/dbca.rsp

2) 切换到刚在oralce用户终端

代码语言:bash复制
dbca -silent -responseFile /home/oracle/database/response/dbca.rsp

3)建库后进行实例进程检查

代码语言:bash复制
ps -ef | grep ora_ | grep -v grep

4)查看监听状态

代码语言:bash复制
lsnrctl status

5)登录查看实例状态

代码语言:bash复制
sqlplus / as sysdba

登上之后执行

代码语言:bash复制
select status from v$instance;

退出

代码语言:bash复制
exit;

4、设置开机启动

1)修改dbstart dbshut两个脚本

代码语言:txt复制
修改 /module/oracle/product/11.2.0/bin路径下的dbstart dbshut脚本,将两个脚本中的ORACLE_HOME_LISTNER=$1,修改为ORACLE_HOME_LISTNER=$ORACLE_HOME

2)修改/etc/oratab文件,将orcl:/module/oracle/product/11.2.0:N中最后的N改为Y,成为orcl:/module/oracle/product/11.2.0:Y

代码语言:basic复制
vim /etc/oratab

3)修改rc.local文件

代码语言:bash复制
chmod 755 /etc/rc.d/rc.local
vim /etc/rc.d/rc.local

在rc.local中添加:

代码语言:bash复制
su oracle -lc "/module/oracle/product/11.2.0/bin/lsnrctl start"  #加上引号才能把空格后的
su oracle -lc /module/oracle/product/11.2.0/bin/dbstart

4)重启机器后执行

代码语言:bash复制
netstat -tpln

5、登录

1)切换到oracle用户登录状态下

代码语言:bash复制
sqlplus / as sysdba

2)解除SYSTEM账户锁定

代码语言:bash复制
alter user SYSTEM account unlock;

6、过程中遇到的报错或警告

1)如果安装失败就执行以下命令清除日志重新安装

代码语言:bash复制
rm -rf /tmp/OraInstall*

2)[警告]所选 Oracle 主目录包含目录或文件。

代码语言:txt复制
删除安装目录重新新建

3)Oracle 建议将此主产品清单放置在 Oracle 基目录之外的位置

代码语言:txt复制
把/module/inventory移出/module/oracle/inventory

4)Exception in thread "main" java.lang.NoClassDefFoundError

解决方法:通过搜索查找解决方法都提示是Java的问题。但Oracle会先解压出jdk包在自己的tmp目录下,所以该问题不是由PATH、CLASSPATH、JAVA_HOME这几个Java环境变量引起的。

代码语言:bash复制
unset DISPLAY

本文标签: