admin 管理员组

文章数量: 887016

centos7安装orcle11g

一、安装过程

(一)VMware16创建centos7虚拟机

  1. 新建虚拟机,选择自定义安装

  2. 选择虚拟机硬件兼容性,默认

  3. 安装客户机操作系统时选择稍后安装操作系统

  4. 选择客户机操作系统时选Linux,版本选择centos 7 64位

  5. 命名虚拟机名称,选择默认虚拟机命名,位置选择自己创建的D:\EX software\vmware\vmware vmk\centos 7 64

  1. 处理器配置中处理器数量和内核数量都选择2

  2. 虚拟机的内存选择8G

  3. 网络类型默认NAT

  4. I/O控制器类型默认LSI Logic

  5. 磁盘类型默认SCSI

  6. 选择磁盘默认创建新虚拟磁盘

  7. 指定磁盘容量为50G,默认将虚拟磁盘拆分为多个文件

  8. 指定磁盘文件,默认

  9. 点击自定义硬件—>点击新CD/DVD(SATA)—>点击使用ISO映像文件,选择相应的centos的镜像文件,最后点击完成,就完成了对centos虚拟机的创建

(二)安装centos 7

  1. 点击开启虚拟机

  2. 选择install centos 7

  1. 语言选择English

  1. SOFTWARE SELECTION中选择GNOME Desktop,并选择Development Tools,然后点击Done

  2. 在INSTALLATION DESTINATION中,选择 I will configure partitioning,然后点击Done

  3. 在MANUAL PARTITIONING中 选择 Standard Partition(标准分区),新建swap分区  12G;/分区 20G ;/boot 6G;/home 12G.点击done,点击Accept Changes

  1. 开始下载,并设置root密码,和用户,等待下载完成,下载完成后重启

  1. 同意许可证,完成下载

(三)在centos虚拟机中安装Oracle 11g数据库

  1. 检测是否符合安装Oracle 11g的环境需求(2核CPU 、2G内存、8G的硬盘空间)

1.1查看cpu详细信息:lscpu

1.2查看内存详细信息: free -h

1.3查看存储盘详细信息 : lsblk

1.4确保服务器能访问外网:ping www.baidu

2.检测是否已安装Oracle

2.1查看是否有Oracle的进程:

2.2检查是否有Oracle用户 : id oracle

3.安装准备

3.1建立oracle用户和用户组

创建oninstall用户组:groupadd oninstall

创建dba用户组:groupadd dba

创建oper用户组:groupadd oper

创建主用户组为oninstall 附加组为dba和oper用户组的oracle用户:useradd -g oninstall -G dba,oper oracle

设置oracle用户的密码为oracle:echo "oracle"|passwd oracle  --stdin

3.2创建oracle安装的相关目录

mkdir -p /u01/app/oracle/product/11.2.0/db_1

chown -R oracle : oninstall /u01/app

chmod -R 775 /u01/app

3.3优化OS内核参数

3.3.1vim /etc/sysctl.conf

    # 添加如下内容

    fs.aio-max-nr = 1048576

    fs.file-max = 6815744

    kernel.shmall = 2097152

    # kernel.shmmax 参数设置为物理内存的一半

    kernel.shmmax = 1200000000

    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

  # 因为刚自定义配置了shmmax、shmmni、shmall,所以注释掉原有自带的shmmax、shmall这些属性

保存并退出后,使参数生效

sysctl -p

3.4限制oracle用户的shell权限

3.4.1vim /etc/security/limits.conf 

# 在文件末尾添加下面四行

# 设置进程数软限制

oracle soft nproc 2047

# 设置进程数硬限制

oracle hard nproc 16384

# 设置文件数软限制

oracle soft nofile 1024

# 设置文件数硬限制

oracle hard nofile 65536

# 进程会话限制可以采用pam_limits认证模块来实现,通过修改登录程序login的PAM设置以启用该认证

vim /etc/pam.d/login # 在文件最后添加下面一行

session required /lib64/security/pam_limits.so

# 一般都是64位系统,64位系统需要设置为/lib64/security/pam_limits.so 否则重启服务器后就会出现命令行无法登录,但是通过桌面方式能登录的情况

session required pam_limits.so

3.4.2使参数生效

source   /etc/profile

3.5为oracle用户添加oracle环境变量

3.5.1 su - oracle

 vim .bash_profile

# 添加如下内容

ORACLE_BASE=/u01/app/oracle

ORACLE_HOME=$ORACLE_BASE/product/11.2.0/db_1

PATH=$PATH:$ORACLE_HOME/bin

ORACLE_SID=orcl

NLS_LANG="SIMPLIFIED CHINESE_CHINA.UTF8"

export ORACLE_BASE ORACLE_HOME ORACLE_SID PATH

if [ $USER = "oracle" ]; then

    if [ $SHELL = "/bin/ksh" ]; then

        ulimit -p 16384

        ulimit -n 65536

    else

        ulimit -u 16384 -n 65536

    fi

fi

3.5.2 退出后刷新环境变量

source .bash_profile

3.6配置hostname

3.6.1vim /etc/hosts

# 添加如下内容

127.0.0.1   localhost

192.168.122.30    mydb

3.6.2测试hostname

ping -c 3 mydb

3.6.3将/etc/sysconfig/network中的hostname与/etc/hosts中的配置一致

vim /etc/sysconfig/network

# 添加如下内容

NETWORKING=yes

HOSTNAME=mydb

GATEWAY=192.168.122.30

NTPSERVERARGS=iburst

3.7安装Oracle相关依赖

3.7.1配置yum源

cd /etc

mv yum.repos.d yum.repos.d.bak

mkdir yum.repos.d

wget -O /etc/yum.repos.d/CentOS-Base.repo .repo

yum clean all

yum makecache

yum -y install epel-release

3.7.2安装依赖

yum -y groupinstall "X Window System"

yum -y install \

binutils \

compat-libcap1  \

compat-libstdc++-33 \

compat-libstdc++-33*.i686 \

elfutils-libelf-devel \

gcc \

gcc-c++ \

glibc*.i686 \

glibc \

glibc-devel \

glibc-devel*.i686 \

ksh \

libgcc*.i686 \

libgcc \

libstdc++ \

libstdc++*.i686 \

libstdc++-devel \

libstdc++-devel*.i686 \

libaio \

libaio*.i686 \

libaio-devel \

libaio-devel*.i686 \

make \

sysstat \

unixODBC \

unixODBC*.i686 \

unixODBC-devel \

unixODBC-devel*.i686 \

libXp

3.7.3检查依赖是否安装完成

rpm -q \

binutils \

compat-libstdc++-33 \

elfutils-libelf \

elfutils-libelf-devel \

expat \

gcc \

gcc-c++ \

glibc \

glibc-common \

glibc-devel \

glibc-headers \

libaio \

libaio-devel \

libgcc \

libstdc++ \

libstdc++-devel \

make \

pdksh \

sysstat \

unixODBC \

unixODBC-devel | grep "not installed"

3.7.4安装失败可单独安装

yum -y install pdksh

3.8开放端口/关闭防火墙

3.8.1开放端口

编辑iptables,开放1521端口:

sudo vi /etc/sysconfig/iptables

-A INPUT -p tcp -m state --state NEW -m tcp --dport 1521 -j ACCEPT 

重启防火墙sudo service iptables restart

保存配置sudo service iptables save 

查看防火墙规则sudo iptables -L –n

3.8.2关闭防火墙

service iptables stop

chkconfig iptables off

vim /etc/sysconfig/selinux

SELINUX=enforcing改成SELINUX=disabled

3.9上传或下载Oracle安装软件

3.9.1切换用户和目录

xhost +

su - oracle

cd /u01/sw

3.9.2解压缩安装文件

unzip linux.x64_11gR2_database_1of2.zip

unzip linux.x64_11gR2_database_2of2.zip

3.9.3切换root用户,复制授权

su - root

mkdir /home/oracle/etc/

cp /db/database/response/* /home/oracle/etc/

chmod 777 /home/oracle/etc/*.rsp

3.9.4登录oracle用户

su – oracle

vi /home/oracle/etc/db_install.rsp

# 信息如下:

oracle.install.option=INSTALL_DB_SWONLY

UNIX_GROUP_NAME=oinstall

INVENTORY_LOCATION=/db/app/oracle/oraInventory

SELECTED_LANGUAGES=en,zh_CN

ORACLE_HOSTNAME=oracle

ORACLE_HOME=/db/app/oracle/product/11.2.0/db_1

ORACLE_BASE=/db/app/oracle

oracle.install.db.InstallEdition=EE

oracle.install.db.isCustomInstall=true

oracle.install.db.DBA_GROUP=dba

oracle.install.db.OPER_GROUP=oinstall

oracle.install.db.config.starterdb.type=GENERAL_PURPOSE

oracle.install.db.config.starterdb.globalDBName=orcl

oracle.install.db.config.starterdb.SID=orcl

oracle.install.db.config.starterdb.memoryLimit=512

oracle.install.db.config.starterdb.password.ALL=oracle

DECLINE_SECURITY_UPDATES=true

3.10安装

3.10.1执行安装文件

su - oracle

./runInstaller -silent -force -responseFile /home/oracle/etc/db_install.rsp -ignorePrereq

3.10.2安装完成,提示successfully setup software

3.10.3执行root用户执行脚本

su - root

/db/app/oracle/product/11.2.0/db_1/root.sh

3.10.4增加或修改Oracle环境变量

su  - oracle

vi ~/.bash_profile

export ORACLE_HOME=/db/app/oracle/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/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/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 ~/.bash_profile

3.11安装Oracle

使用oracle用户登录桌面,打开终端运行安装程序,(在安装目录运行)

订阅邮件跳过

选择忽略更新(选择服务器版本)

仅安装数据库,稍后配置初始化数据

单实例安装

默认英文

默认4.29G的那个

创建的相应的目录信息,自动读取

下一步

选择之前创建好的oninstall

可忽略提示的有关安装包的信息

提示使用root用户执行两个shell脚本,根据提示进行

使配置生效

3.12设置Oracle开机自启动

vim /etc/oratab

# 把“N”改成“Y”

orcl:/db/app/oracle/product/11.2.0/db_1:Y 

3.13结果验证

登录oracle

[oracle@oracle bin]$ pwd

/db/app/oracle/product/11.2.0/db_1/bin

[oracle@oracle bin]$ ./sqlplus /nolog

二、遇到的问题以及解决办法

1.磁盘空间不够

2.没有iptables文件

3.文件上传时虚拟机内存不够

4.unzip无法解压缩Oracle安装包

三、总结

1.(1)新建centos虚拟机,为硬盘分配50G,手动分区时,给swap分区12G(解决)

    (2)尝试磁盘扩容时参考(4条消息) centos7 磁盘空间不足扩容操作_yitahutu79的博客-CSDN博客_vgdisplay没有卷组(未解决)

     (3)尝试通过增加swap分区大小解决参考(4条消息) Linux之centos7环境下扩展SWAP分区_浪子吴天的博客-CSDN博客_centos swap扩容(未解决)

2.(1)关防火墙:systemctl stop firewall

(2)移除自带防火墙:systemctl disable firewalld

(3)安装防火墙服务:yum install iptables-services

(4)启动防火墙服务:systemctl start iptables.ervice(解决)

3.关闭虚拟机,增加虚拟机内存(解决)

4.在centos中下载(解决)

安装过程参考(4条消息) Linux CentOS 7安装Oracle11g超完美教程_蜗牛er的博客-CSDN博客_centos7安装oracle11g

(4条消息) 超详细centos7安装Oracle11g(图文结合)_一只大头piang的博客-CSDN博客_centos7 oracle11g安装教程

本文标签: centos7安装orcle11g