zoukankan      html  css  js  c++  java
  • Linux上Oracle 11g安装步骤图解

    Oracle 11g安装准备工作

    目录

    Oracle 11g安装准备工作... 1

    Oracle 11g下载地址:... 1

    Oracle 11g 联机文档:... 1

    Oracle 11g R2数据库安装硬件配置要求:... 1

    Linux平台... 2

    需要的软件包支持:... 2

    创建Oracle用户... 3

    修改内核参数... 3

    修改用户限制... 3

    修改用户验证选项... 3

    修改用户配置文件... 3

    安装目录配置... 4

    修改用户bash shell 4

    Oracle 11g安装... 4

    安装软件... 4

    创建数据库... 5

    Oracle测试... 6

    关闭数据库:... 7

    总结... 7

    1、检查硬件... 7

    2、下载软件... 7

    3、修改host文件... 7

    4、安装软件包检查... 7

    5libstdc包的链接... 8

    .参数设置... 8

    1、设置核心参数... 8

    2、设置Shell Limits(系统资源限制),提高软件的运行效率... 8

    3.创建用户和组及相关目录... 8

    4.设置安装环境变量... 9

    保存退出... 9

     

     

    Oracle 11g下载地址:

    http://www.oracle.com/technetwork/database/enterprise-edition/downloads/index.html

    image001

    选择需要的oracle安装文件下载

    Oracle 11g 联机文档:

    http://www.oracle.com/pls/db112/homepage

    image002

    可以下载其PDF文档参考(其中的有关Linux安装向导是最权威的安装手册)

     

    Oracle 11g R2数据库安装硬件配置要求:

    最小内存 1 GB of RAM

    虚拟内存容量

    Available RAM

    Swap Space Required

    Between 1 GB and 2 GB

    1.5 times the size of RAM

    Between 2 GB and 16 GB

    Equal to the size of RAM

    More than 16 GB

    16 GB


    硬盘空间要求

    数据库软件硬盘空间需求:

    Installation Type

    Requirement for Software Files (GB)

    Enterprise Edition

    3.95

    Standard Edition

    3.88

    数据文件硬盘空间需求:

    Installation Type

    Requirement for Data Files (GB)

    Enterprise Edition

    1.7

    Standard Edition

    1.5

     

    检查的命令

    内存

    # grep MemTotal /proc/meminfo

    交换空间

    # grep SwapTotal /proc/meminfo

    磁盘空间

    # df -ah

    Linux平台

    查看联机文档,可以看出Oracle 11g支持Linux操作系统

    http://docs.oracle.com/cd/E11882_01/install.112/e24321/pre_install.htm%23CHDFFBIF

    下面是 X86(32)Linux

    image003

    其中Red Hat 4Oracle Linux 4对应,以及与Cent OS 4对应(版本要对应)

    需要的软件包支持:

    通过查看Oracle安装文档中列出的Package Requirements可以查看在不同平台上需要的软件包,下面列出Asianux 3, Oracle Enterprise Linux 5.0, and Red Hat Enterprise Linux 5.0的要求,检查

    下系统是否安装过这些包,如果没在对应的系统光盘查找对应的rpm包并安装。

    检查工作:依次执行:rpm -qa | grep 下面软件包

    binutils-2.17.50.0.6
    compat-libstdc++-33-3.2.3
    elfutils-libelf-0.125
    elfutils-libelf-devel-0.125
    elfutils-libelf-devel-static-0.125
    gcc-4.1.2
    gcc-c++-4.1.2
    glibc-2.5-24
    glibc-common-2.5
    glibc-devel-2.5
    glibc-headers-2.5
    kernel-headers-2.6.18
    ksh-20060214
    libaio-0.3.106
    libaio-devel-0.3.106
    libgcc-4.1.2
    libgomp-4.1.2
    libstdc++-4.1.2
    libstdc++-devel-4.1.2
    make-3.81
    sysstat-7.0.2
    unixODBC-2.2.11
    unixODBC-devel-2.2.11

    binutils-2.17.50.0.6

    compat-libstdc++-33-3.2.3

    elfutils-libelf-0.125

    elfutils-libelf-devel-0.125

    elfutils-libelf-devel-static-0.125

    gcc-4.1.2

    gcc-c++-4.1.2

    glibc-2.5-24

    glibc-common-2.5

    glibc-devel-2.5

    glibc-headers-2.5

    kernel-headers-2.6.18

    ksh-20060214

    libaio-0.3.106

    libaio-devel-0.3.106

    libgcc-4.1.2

    libgomp-4.1.2

    libstdc++-4.1.2

    libstdc++-devel-4.1.2

    make-3.81

    sysstat-7.0.2

    unixODBC-2.2.11

    unixODBC-devel-2.2.11

    创建Oracle用户

    root用户:创建Oracle安装组oinstall,数据库管理员组dba,及oracle用户

    # /usr/sbin/groupadd oinstall
    # /usr/sbin/groupadd dba
    # /usr/sbin/useradd -g oinstall -G dba oracle
    (主组oinstall,其它组:dba
    # passwd oracle

    修改内核参数

    root用户:修改 /etc/sysctl.conf 文件,加上如下参数

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

    为使上述配置生效而不重启系统,执行如下命令

    # /sbin/sysctl -p

    修改用户限制

    root用户:修改 /etc/security/limits.conf 文件,加上下面的参数

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

    修改用户验证选项

    root用户下:修改/etc/pam.d/login文件加上如下参数

    session    required     pam_limits.so

    修改用户配置文件

    root用户下:修改/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

    安装目录配置

    root用户:

    # mkdir -p /u01/oraInventory
    # chown -R oracle:oinstall /u01/
    # chmod -R 775 /u01/

    修改用户bash shell

    $ vi .bash_profile

    增加如下内容,主要是修改

    export ORACLE_BASE=/u01
    export ORACLE_HOME=$ORACLE_BASE/oracle
    export ORACLE_SID=oracleSid
    export PATH=$ORACLE_HOME/bin:$PATH:$HOME/bin

    完成后执行:

    #su –oracle

    #env | grep ORA查看环境变量是否完成

    Oracle 11g安装

    安装软件

    使用oracle用户登录,然后解压缩Oracle安装文件:

    $ unzip linux_11gR1_database.zip

    然后进入解压后的目录,执行

           $ ./runInstaller

    然后进入解压后的目录,执行

    image004

    选择高级安装,高级也挺简单

    image005

    默认oraInventory认为是根目录下,oracle用户没有写权限,所以warning,不用管执行下一步

    image006

    修改inventory directory目录为/u01/oralInventory,此时oracle用户就有写权限,下一步:

    image007

           oracle会进行安装前检查工作,如果没有错误,则直接下一步。

    可能出现的错误是:

    1)修改的系统配置文件没有生效,最绝的办法,重启系统

    2)静态IP问题,如果你使用了静态IP,则应该打开/etc/hosts添加静态IP指定:如192.168.188.10       localhost.localdomain(路由域名)

    3)内存问题,如果内在设置1G左右,或稍微较少时,可忽略

    一直下一步,安装完成!但此时没有创建数据库

    创建数据库

    首先配置Listener

    $ netca       (net configuration)

    注意:此时可能报如下错误

     

    是由于默认的主机名导致的,修改2处

    [oracle@jc11g ~]$ cat /etc/sysconfig/network
    NETWORKING=yes
    HOSTNAME=test11g
    GATEWAY=192.168.1.254

     

    [oracle@jc11g ~]$ cat /etc/hosts
    # Do not remove the following line, or various programs
    # that require network functionality will fail.
    127.0.0.1               localhost.localdomain localhost test11g

    hostname test11g

    让oracle用户退出重新登录就可以正常启动netca了 (参考:http://blog.sina.com.cn/s/blog_470504830100s2fz.html

    端口使用1521(在没有启用防火墙情况下,所有端口号都可以使用),直接下一步至完成,完成后查看是否启动:

    $ ps –ef | grep LISTENER

    创建数据库

    $dbca      (database configuration)

    下一步

    image008

    选择默认,下一步

    输入数据库名和SID(如示例中:oracleSid,一定要匹配)下一步

    image009

    下一步

    image010

    使用共同口令,如:oracle,下一步,直到如下图所示:

    image011

    此时需要注意字符集的选择,对于含有中文数据的数据库来说,可以选择Unicode编码(如果字符集选择不对,后面再修改时非常麻烦)

    image012

    下一步,选择安装一些示例数据库,一路下一步,将会开始创建数据库

    创建完数据库后,将会在/u01/oradata目录下创建相应的数据,并且可以使用命令

    ps –ef | grep oracle

    查看已经启动的oracle进程

    到此,oracle数据库软件及数据库安装完成。

    Oracle测试

    接上一节,可以使用sqlplus测试是否已经成功安装oracle,如下:

    $sqlplus /nolog

    SQL>conn / as sysdba

    SQL>create table mytable(name varchar(10), age int);

    SQL>insert into mytable values(‘user1’,12);

    SQL>select * from mytable;

    关闭数据库:

    查看oracle进程:

    SQL> !ps –ef | grep oracle

    关闭oracle

    SQL>shutdown immediate

    总结

    下面将上面介绍的安装过程进行总结,来源:Linux开源公社

    1、检查硬件

    内存

    # grep MemTotal /proc/meminfo

    交换空间

    # grep SwapTotal /proc/meminfo

    磁盘空间

    # df -ah

    2、下载软件

    Oracle Database 10g Release 2 (10.2.0.1) Software下载位置:

    http://otn.oracle.com/software/products/database/oracle10g/index.html

    3、修改host文件

    查看/etc/hosts文件中必须包含a fully qualified name for the server

    4、安装软件包检查

    1、检查下列包是否安装,若未安装则要先安装:

    binutils-2.17.50.0.6-2.el5

    compat-libstdc++-33-3.2.3-61

    elfutils-libelf-0.125-3.el5

    elfutils-libelf-devel-0.125

    glibc-2.5-12

    glibc-common-2.5-12

    glibc-devel-2.5-12

    gcc-4.1.1-52

    gcc-c++-4.1.1-52

    libaio-0.3.106

    libaio-devel-0.3.106

    libgcc-4.1.1-52

    libstdc++-4.1.1

    libstdc++-devel-4.1.1-52.e15

    make-3.81-1.1

    sysstat-7.0.0

    unixODBC-2.2.11

    unixODBC-devel-2.2.11

     

    # rpm -qa | grep make gcc glibc compat openmotif21 setarch 等等

     

    5libstdc包的链接

    (老版本需求,新版本oracle11不要设置):

    ln -s /usr/lib/libstdc++.so.6.0.3 /usr/lib/libstdc++.so.5           

    #检测存在如果不做此链接,在安装过程中建好数据库,将会出现不能链接不上数据库问题。

     

    .参数设置

    1、设置核心参数

    /etc/sysctl.conf文件中加入下列行:

    #kernel.core_uses_pid = 1

    kernel.shmall = 2097152

    kernel.shmmax = 2147483648 -- (以字节为单位,物理内存数量*1024*1024*2,为内存的2)

    kernel.shmmni = 4096

    # semaphores: semmsl, semmns, semopm, semmni

    kernel.sem = 250 32000 100 128

    fs.file-max = 65536

    net.ipv4.ip_local_port_range = 1024 65000

    net.core.rmem_default=8388608

    net.core.rmem_max=8388608

    net.core.wmem_default=262144

    net.core.wmem_max=262144

    esc :wq!

    # sysctl -p #运行下列命令改变核心参数

     

    2、设置Shell Limits(系统资源限制),提高软件的运行效率

     

    a./etc/security/limits.conf文件中加入下列红色行:

    oracle soft nofile 65536

    oracle hard nofile 65536

    oracle soft nproc 16384

    oracle hard nproc 16384

     

    b./etc/pam.d/login文件中加入下列行,如果里面没有的话:

    session required /lib/security/pam_limits.so

    session required pam_limits.so

    c./etc/profile后加入以下语句:

    vi /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

    3.创建用户和组及相关目录

    --创建dba/oper/oinstall

    /usr/sbin/groupadd dba

    /usr/sbin/groupadd oper

    /usr/sbin/groupadd oinstall

    --创建oracle用户并设置用户所属组

    /usr/sbin/usermod -g oinstall -G dba oracle

    /usr/sbin/useradd -g oinstall -G dba oracle

    passwd oracle

    # id oracle

    uid=501(oracle) gid=501(oinstall) groups=501(oinstall),502(dba)

    --创建相关安装目录

     

    mkdir -p /opt/oracle/product

    mkdir -p /opt/oracle/product/OraHome

    mkdir -p /opt/oraInventory                      #(the default inventory folder)

    mkdir -p /opt/oracle/oradata                   #(change the right file owner)

    mkdir -p /var/opt/oracle

     

    --设置目录所有者和权限

    chown -R oracle.oinstall /opt/oracle

    chown -R oracle.oinstall /opt/oracle/oradata

    chown -R oracle.oinstall /opt/oracle/product/OraHome

    chown -R oracle.dba /opt/oraInventory

    chown oracle.dba /var/opt/oracle

    chmod -R 775 /opt/oracle

    chmod -R 755 /var/opt/oracle

     

    4.设置安装环境变量

    # su - oracle --suoracle用户下,

    更改用户的一些配置

    $vi .bash_profile

    添加以下参数,主要是配置oracle软件运环境参数

    # Get the aliases and functions

    if [ -f ~/.bashrc ]; then

           . ~/.bashrc

    fi

     

    export ORACLE_BASE=/opt/oracle

    export ORACLE_HOME=$ORACLE_BASE/product/OraHome

    export ORACLE_SID=orcl

    export ORACLE_OWNER=oracle

    export ORACLE_TERM=vt100

    export PATH=$PATH:$ORACLE_HOME/bin:$HOME/bin

    export PATH=$ORACLE_HOME/bin:$ORACLE_HOME/Apache/Apache/bin:$PATH

    LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib:/usr/local/lib

    export LD_LIBRARY_PATH

    CLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib

    CLASSPATH=$CLASSPATH:$ORACLE_HOME/network/jlib

    export CLASSPATH

     

    :

    11g:ORA_NLS33=$ORACLE_HOME/nls/admin/data

    10gORA_NLS33=$ORACLE_HOME/ocommon/nls/admin/data

    9iORA_NLS33=/oracle/app/ora92/ocommon/nls/admin/data

    保存退出

    --执行以下命令让配置马上生效或以oracle用户登录使设置生效

    $ source $HOME/.bash_profile

  • 相关阅读:
    分布式事务框架seata入门
    生活==不易
    LR Socket接收超时TPS上不去解决方法
    Loadrunner拼装(并发用户)唯一值方法
    shell/Python复制文件和文件夹
    redis可以设置过期key回调实现延时队列
    计算机USB读写权限统一管理(在域环境中)
    微软Win10最新BUG_2021年9月15日_KB5005565更新之后打印机突然连接不上 或 不能打印0x0000011b(附解决方案)!
    SQLServer中update没带where的回滚操作(Update或者Delete误操作恢复方法)
    107.如何用Windows Defender全盘扫描
  • 原文地址:https://www.cnblogs.com/gaojun/p/2783257.html
Copyright © 2011-2022 走看看