zoukankan      html  css  js  c++  java
  • orcale11g安装

    一、centos7.5安装orcale

    安装环境

    内存最小1G,推荐2G或者更高

    内存为1-2g,swap是内存的1.5倍左右

    内存大于2G, swap和内存相等

    硬盘最小为30G

    oracle版本 oracle 11g

    1、安装图形化界面 (非必须,只安装xmanager也可以)

    yum check-update && yum install epel-release && yum groupinstall "GNOME Desktop" "Graphical Administration Tools" && yum groups mark convert && ln -sf /lib/systemd/system/runlevel5.target  /etc/systemd/system/default.target && init 5 && reboot

    2、安装xmanager,xmanager跟闪烁没有关系

    链接:https://pan.baidu.com/s/1_wgUBN2eyufISW410A0b2w 密码:hp75

    下载后双击安装包,进里面双击应用程序安装就,安装完就不用管了,开始安装oracle

    3、安装orcale环境依赖

    3.1、下载Oracle安装包:linux.x64_11gR2_database_1of2.zip 和 linux.x64_11gR2_database_2of2.zip ,


    链接:https://pan.baidu.com/s/10Sj9cwLfpNX-ThU0a7JLew 密码:7gv1
    链接:https://pan.baidu.com/s/1WwYZ1YeYWgXBk4mIKuEBKw 密码:3rm1


    3.2、创建运行oracle数据库的系统用户和用户组:
      用Root账号登录,运行下面指令,创建所需要用户和用户组,分组原因参考网址
    groupadd oinstall           #创建用户组oinstall
    groupadd dba           #创建用户组dba
    useradd -g oinstall -g dba -m oracle   #创建oracle用户,并加入到oinstall和dba用户组
    groups oracle             #查询用户组是否授权成功
    passwd oracle            #设置用户oracle的登陆密码,不设置密码,在CentOS的图形登陆界面没法登陆
    id oracle        #查看新建的oracle用户


    3.3、创建oracle数据库安装目录(运行下面指令,创建账号和分配权限)

    mkdir -p /data/oracle   #oracle数据库安装目录
    mkdir -p /data/oraInventory  #oracle数据库配置文件目录
    mkdir -p /data/database   #oracle数据库软件包解压目录
    ls /data #创建完毕检查一下
    chown -R oracle:oinstall /data/oracle  #设置目录所有者为oinstall用户组的oracle用户
    chown -R oracle:oinstall /data/oraInventory
    chown -R oracle:oinstall /data/database
    或者一条命令直接搞定上线三条命令:
    chown -R oracle:oinstall /data

    注意:下面需要修改的配置文件的步骤,建议都备份一下。直接cp即可。我的是虚拟机又有快照,所以不做备份。

    3.4、修改OS系统标识
       oracle默认不支持CentOS系统安装, 修改文件 /etc/RedHat-release 内容为RedHat-7
    vi /etc/redhat-release #修改成红色部分文字
    redhat-7


    3.5.安装oracle数据库所需要的软件包
     以下是按照需要依赖的安装包,通过 yum install {包名} 来验证是否安装,例如yum install binutils,下面有我自己的检验方法。很方便。
    binutils-2.23.52.0.1-12.el7.x86_64
    compat-libcap1-1.10-3.el7.x86_64
    gcc-4.8.2-3.el7.x86_64
    gcc-c++-4.8.2-3.el7.x86_64
    glibc-2.17-36.el7.i686
    glibc-2.17-36.el7.x86_64
    glibc-devel-2.17-36.el7.i686
    glibc-devel-2.17-36.el7.x86_64
    ksh
    libaio-0.3.109-9.el7.i686
    libaio-0.3.109-9.el7.x86_64
    libaio-devel-0.3.109-9.el7.i686
    libaio-devel-0.3.109-9.el7.x86_64
    libgcc-4.8.2-3.el7.i686
    libgcc-4.8.2-3.el7.x86_64
    libstdc++-4.8.2-3.el7.i686
    libstdc++-4.8.2-3.el7.x86_64
    libstdc++-devel-4.8.2-3.el7.i686
    libstdc++-devel-4.8.2-3.el7.x86_64
    libXi-1.7.2-1.el7.i686
    libXi-1.7.2-1.el7.x86_64
    libXtst-1.2.2-1.el7.i686
    libXtst-1.2.2-1.el7.x86_64
    make-3.82-19.el7.x86_64
    sysstat-10.1.5-1.el7.x86_64   

    使用脚本检查依赖软件包

    vi package.conf --复制上面的软件名写入到这个文件里面,
    vi a.sh 
    #!/bin/bash
    for i in `cat myf`
    do
    rpm -q $i >/dev/null
    [ $? -eq 0 ] && continue
    rm -rf /run/yum.pid   #可能yum源正在运行,导致下面无法安装,所以要删除
    yum -y install $i
    done
    ./ a.sh --执行脚本

    yum install binutils-2.* compat-libstdc++-33* elfutils-libelf-0.* elfutils-libelf-devel-* gcc-4.* gcc-c++-4.* glibc-2.* glibc-common-2.* glibc-devel-2.* glibc-headers-2.* ksh-2* libaio-0.* libaio-devel-0.* libgcc-4.* libstdc++-4.* libstdc++-devel-4.* make-3.* sysstat-7.* unixODBC-2.* unixODBC-devel-2.* pdksh* 


    3.6、关闭防火墙和selinux,

    systemctl stop firewalld.service

    systemctl disable firewalld.service

    永久关闭:vim /etc/selinux/config 设置SELINUX=disabled

    3.7、修改内核参数
    vi /etc/sysctl.conf #红色部分是要添加sysctl.conf内容
    net.ipv4.icmp_echo_ignore_broadcasts = 1
    net.ipv4.conf.all.rp_filter = 1
    fs.file-max = 6815744 #设置最大打开文件数
    fs.aio-max-nr = 1048576
    kernel.shmall = 2097152 #共享内存的总量,8G内存设置:2097152*4k/1024/1024
    kernel.shmmax = 2147483648 #最大共享内存的段大小
    kernel.shmmni = 4096 #整个系统共享内存端的最大数
    kernel.sem = 250 32000 100 128
    net.ipv4.ip_local_port_range = 9000 65500 #可使用的IPv4端口范围
    net.core.rmem_default = 262144
    net.core.rmem_max= 4194304
    net.core.wmem_default= 262144
    net.core.wmem_max= 1048576


    3.8、对oracle用户设置限制,提高软件运行性能(红色为添加部分)
    vi /etc/security/limits.conf #红色部分要添加到Limits.conf内容,可以添加到最后

    oracle soft nproc 2047
    oracle hard nproc 16384
    oracle soft nofile 1024
    oracle hard nofile 65536

    3.9、配置用户的环境变量(红色部分为添加代码)
    vi /home/oracle/.bash_profile #红色部分是要追加bash_profile内容部分,添加到最后

    export ORACLE_BASE=/data/oracle #oracle数据库安装目录
    export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/db_1 #oracle数据库路径
    export ORACLE_SID=orcl #oracle启动数据库实例名
    export ORACLE_TERM=xterm #xterm窗口模式安装
    export PATH=$ORACLE_HOME/bin:/usr/sbin:$PATH #添加系统环境变量
    export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib #添加系统环境变量
    export LANG=C #防止安装过程出现乱码
    export NLS_LANG=AMERICAN_AMERICA.ZHS16GBK #设置Oracle客户端字符集,必须与Oracle安装时设置的字符集保持一致
     配置完成,:wq!保存退出,运行source /home/oracle/.bash_profile时上述配置生效

    3.10、解压安装包
      
    unzip linux.x64_11gR2_database_1of2.zip -d /data/database/ #解压文件1
    unzip linux.x64_11gR2_database_2of2.zip -d /data/database/ #解压文件2
    chown -R oracle:oinstall /data/database/database/       #分配安装文件授权Oracle

     4 、oracle正式安装:

    4.1、切换oracle用户,进入/data/database/database/,执行下面的命令。

    [oracle@oracledb ~]$ ./runInstaller

    4.2、Configure Security Updates  取消安全更新的打钩。Email不要填,否则报错, 下面勾选框取消勾选,下一步点击下一步

    4.3、Installation Option 选第二个

    4.4、Grid Options

    4.5、Product Languages 添加中文

    4.6、Database Edition 选择数据库版本

    4.7、Installation Location  默认环境变量中一致  直接默认next

     4.8、Create Inventory和Operating System Groups都下一步  如果出错说明文件夹所属主设置有问题 检查这句[root@localhost database]# chown -R oracle:oinstall /opt/oracle 

    4.9、Prerequisite Checks 检查安装前提条件

    检查失败解决:

    pdksh-5.2.14-30.x86_64.rpm 需要下载安装

    下载地址,链接:https://pan.baidu.com/s/1INAuMDeY3uwwl3YwSg5Fww 密码:hxgi

    yum remove ksh -y ; rpm -ivh pdksh-5.2.14-30.x86_64.rpm  --force --nodeps

    其他用yum安装

    yum -y install libaio* glibc* compat-libstdc++-33* gcc-c++* libaio-devel* libgcc* libstdc++* libstdc++-devel* unixODBC-* unixODBC-devel* elfutils-libelf-devel*

    全部安装完还是提示有问题的是因为版本过新等等 ,用rpm -q 一个个检查还有问题的项目,如果都安装了就忽略(11.2.0.4好像不会存在版本超了还提示没安装的情况,测试中

    11.2.0.4最后提示都安装好了才下一步的) 

    勾选上“Ignore All”选项,下面的“Next”按钮才可以点击

    4.10、Summary  选Finish 就会开始安装  

     4.11、安装到84%报错

    原因:缺少  compat-libstdc++-33-3.2.3-69.el6.x86_64 包导致

    解决方法:不要把窗口关掉,用 root登录,强制安装上面的rpm包下载 compat-libstdc++-33-3.2.3-69.el6.x86_64

    下载安装包

    链接:https://pan.baidu.com/s/1w7Bvahqud8Y7NnJYOrKHAw 密码:w36p

    rpm -ivh compat-libstdc++-33-3.2.3-69.el6.x86_64.rpm --force --nodeps

     然后点击 Retry

    安装成功后先不要关闭,需要root下手动执行两个脚本

    sh /data/oraInventory/orainstRoot.sh

    sh /data/oracle/product/11.2.0/dbhome_1/root.sh

    Enter the full pathname of the local bin directory: [/usr/local/bin]:       这里直接回车  
    Copying dbhome to /usr/local/bin ...
    Copying oraenv to /usr/local/bin ...
    Copying coraenv to /usr/local/bin ...      到此安装结束

    [root@localhost oracle]# ls /usr/local/bin/  其实就在这个目录下生产三个文件
    coraenv dbhome oraenv

    再点ok 再close

    4.12、配置监听程序

     重新在图形界面打开一个命令端口,输入netca, 出现如下窗口, 选择“Listener configuration”

    Oracle Net Configuration Assistant:欢迎使用

    勾选监听程序配置,单击下一步

     

    Oracle Net Configuration Assistant:监听程序配置,监听程序

    可以添加、重新设置、重命名或删除监听程序。重命名或删除监听程序前,先停止监听程序。

    这里选择添加,单击下一步

    Oracle Net Configuration Assistant:监听程序配置,监听程序名

    输入监听程序的名称。每个监听程序由唯一的名称标识。LISTENER 是第一个监听程序的默认名称。

    这里默认为LISTENER,单击下一步

    Oracle Net Configuration Assistant:监听程序配置,选择协议

    可用协议列表中选择协议TCP,然后选择右箭头按钮,将其移到选定的协议列表中,单击下一步

    Oracle Net Configuration Assistant:监听程序配置,TCP/IP 协议

    配置监听程序的TCP/IP端口号,有两个选项可供选择:使用标准端口号 1521请使用另一个端口号

    这里勾选使用标准端口号 1521,单击下一步

     

    Oracle Net Configuration Assistant:监听程序配置,更多的监听程序?

    指定是否为此节点配置另一个监听程序 否不再配置另一个监听程序。 配置另一个监听程序。

    勾选,单击下一步

    Oracle Net Configuration Assistant:监听程序配置完成!

    单击下一步

    Oracle Net Configuration Assistant:欢迎使用

    单击完成,退出该向导

     查看监听端口

    [oracle@oracledb ~]$ netstat -aln |grep 1521
    tcp6 0 0 :::1521 :::* LISTEN

    查看监听状态

    [oracle@oracledb ~]$ lsnrctl status

    LSNRCTL for Linux: Version 11.2.0.1.0 - Production on 20-NOV-2018 22:47:05

    Copyright (c) 1991, 2009, Oracle. All rights reserved.

    Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=oracledb)(PORT=1521)))
    STATUS of the LISTENER
    ------------------------
    Alias LISTENER
    Version TNSLSNR for Linux: Version 11.2.0.1.0 - Production
    Start Date 20-NOV-2018 22:38:34
    Uptime 0 days 0 hr. 8 min. 30 sec
    Trace Level off
    Security ON: Local OS Authentication
    SNMP OFF
    Listener Parameter File /data/oracle/product/11.2.0/db_1/network/admin/listener.ora
    Listener Log File /data/oracle/diag/tnslsnr/oracledb/listener/alert/log.xml
    Listening Endpoints Summary...
    (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=oracledb)(PORT=1521)))
    The listener supports no services
    The command completed successfully

    登录oracle查看表格

    [oracle@oracledb ~]$ sqlplus "/as sysdba"

    SQL*Plus: Release 11.2.0.1.0 Production on Tue Nov 20 22:47:46 2018

    Copyright (c) 1982, 2009, Oracle. All rights reserved.

    Connected to an idle instance.

    SQL> select * from tab;
    select * from tab
    *
    ERROR at line 1:
    ORA-01034: ORACLE not available
    Process ID: 0
    Session ID: 0 Serial number: 0


    SQL>

    参照文档

    https://blog.csdn.net/MYF12/article/details/78631739

    https://www.cnblogs.com/hanxing/p/5662114.html

    https://blog.csdn.net/star714/article/details/51344298

    下面报错修改文件内容都是在oracle用户下修改的,用root用户修改后不生效

    解决oracle11G安装84%报错 出现Error in invokingtarget 

    https://blog.csdn.net/m0_37941193/article/details/65698597

    %86时出现报错 Error in invoking target 'agent nmhs' of makefile             https://www.linuxidc.com/Linux/2017-03/142095.htm

  • 相关阅读:
    螺旋矩阵算法
    shell脚本编程的10个最佳实践
    时间字符串转长整形数
    python的发音
    wget使用技巧
    History命令用法15例
    14位格式时间字符串
    Spring MVC
    Android SQLite数据储存方式
    MYSQL命令大全
  • 原文地址:https://www.cnblogs.com/effortsing/p/9989249.html
Copyright © 2011-2022 走看看