Linux下安装oracle11g

1、安装环境:

Linux:Redhat Enterprise Linux 6.3 64位

Oracle:Oracle Database 11g for Linux x86-64 64位

2、修改操作系统核心参数

     在Root用户下执行以下步骤:  

  •  修改用户的SHELL的限制,修改/etccuritymits.conf文件 
         输入命令:vi /etccuritymits.conf,按i键进入编辑模式,将下列内容加入该文件。   

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

   编辑完成后按Esc键,输入“:wq”存盘退出。

  • 修改/etc/pam.d/login 文件

   输入命令:vi  /etc/pam.d/login,按i键进入编辑模式,将下列内容加入该文件。

    session   required    /lib/security/pam_limits.so 
    session   required    pam_limits.so

   编辑完成后按Esc键,输入“:wq”存盘退出。

  • 修改linux内核,修改/etc/sysctl.conf文件

    输入命令: vi  /etc/sysctl.conf ,按i键进入编辑模式,将下列内容加入该文件

     fs.file-max = 6815744 

     fs.aio-max-nr = 1048576 

     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 = 4194304 

     net.core.rmem_max = 4194304 

     net.core.wmem_default = 262144 

     net.core.wmem_max = 1048576

    编辑完成后按Esc键,输入“:wq”存盘退出

  • 输入:sysctl  -p,让sysctl.conf修改后立即生效。
  • 编辑 /etc/profile 文件

    输入命令:vi  /etc/profile,按i键进入编辑模式,将下列内容加入该文件。

      if [ $USER = "oracle" ]; then
      if [ $SHELL = "/bin/ksh" ]; then
      ulimit -p 16384
      ulimit -n 65536
      else
      ulimit -u 16384 -n 65536
      fi

      fi

     编辑完成后按Esc键,输入“:wq”存盘退出

  • 一般安装系统时已经给系统设置主机名,如果没有设置,可以在/etc/sysconfig/network 文件编辑。

    例如:

    

  • 编辑/etc/hosts 文件

   输入命令:vi /etc/hosts,按i键进入编辑模式,编辑该文件。

   

  只有这样安装Oracle后主机名才会是你设置后的主机名。

3、创建相应用户和用户组

  • 创建用户,输入命令:

   groupadd oinstall
   groupadd dba

  • 创建Oracle用户和密码,输入命令:

   useradd -g oinstall -g dba -m oracle

   passwd oracle

   然后会让你输入密码,密码任意输入2次,但必须保持一致,回车确认。

  • 创建数据库软件目录和数据文件存放目录,目录的位置,根据自己的情况来定。

   mkdir /home/u01

   mkdir /home/u01/oracle/app

   mkdir /home/u01/oracle/app/oracle

   mkdir /home/u01/oracle/app/oracle/product

   mkdir /data/oradata

  我这个/data是磁盘挂载点.

  • 更改目录属主为Oracle用户所有,输入命令:

   chown -R oracle:oinstall /home/u01/oracle/

   chown -R oracle:oinstall /data/oradata

  • 配置oracle用户的环境变量

   输入:su – oracle  ,然后直接在输入 : vi .bash_profile,按i键进入编辑模式,将下列内容加入该文件

    umask 022
 
   export ORACLE_BASE=/home/u01/oracle/app

   export ORACLE_HOME=$ORACLE_BASE/oracle/product/11.2.0home_1
 
   export ORACLE_SID=orcl
 
   export PATH=$PATH:$HOME/bin:$ORACLE_HOME/bin

   export LD_LIBRARY_PATH=$ORACLE_HOMEb:/usr
 
   编辑完成后按Esc键,输入“:wq”存盘退出
 
4、开始安装Oracle数据库
 
  • 以上设置完成后,切换到Oracle用户图形界面中,将下载Oracle数据库文件拷贝到系统中去,我这里采用pscp工具进行文件传输。

   

   puttyfile这个程序包含有pscp工具,我这用的是无线网络比较慢.

  • 解压后运行./runInstaller脚本是出现权限不足,这是因为从windows 拷贝过去后文件权限更改了。
  • chmod -R 755 database/ ,对database文件的权限更改为:755。
  • 在安装过程可能会出现乱码现象,输入export LANG=en_US,切换到英文状态下。再进行安装.

   

 

  • 执行安装,输入命令:./runInstaller

    

  • 选择安装选项

   Create and configure a database

  • 选择system class 

   Server class

  • 选择数据库类型

   Single instance database installation

  • 选择安装方式

   Advanced install

  • 选择安装语言

   根据需要进行选择、建议选择English、simplified Chinese

  • 选择安装版本

   Enterprise Edition

  • 选择安装路径

   根据自己需求,我这里选择:/home/u01/oracle/app/oracle

  • 选择安装类型

   General Purpose

   

  • 输入全局数据库名

   

  • 选择字符集

   Simplified Chinese ZHS16GBK

   

  • 选择创建数据库路径

   

  • 到安装条件检查这一部是,一般都会出现缺少一些程序包,将这些包放在一个文件下统一安装,rpm  –ivh  *.rpm  --nodeps --force(root用户)
  • 在RedHat的 64位系统下安装中途会出现 Error in invoking target 'mkldflags ntcontab.o nnfgt.o' of makefile '.../ins_net_client.mk'--68%错。

    是因为系统gcc的包没有装全。需要把一下安装按顺序安装。( rpm  –ivh  XXX.rpm  --nodeps --force)

          glibc-common-2.12-1.80.el6.x86_64.rpm

    kernel-headers-2.6.32-279.el6.x86_64.rpm

    libgcc-4.4.6-4.el6.x86_64.rpm 

    glibc-2.12-1.80.el6.x86_64.rpm

    libgomp-4.4.6-4.el6.x86_64.rpm

    nscd-2.12-1.80.el6.x86_64.rpm

    glibc-headers-2.12-1.80.el6.x86_64.rpm

    glibc-devel-2.12-1.80.el6.x86_64.rpm

    mpfr-2.4.1-6.el6.x86_64.rpm

    ppl-0.10.2-11.el6.x86_64.rpm

    cloog-ppl-0.15.7-1.2.el6.x86_64.rpm

    cpp-4.4.6-4.el6.x86_64.rpm

    gcc-4.4.6-4.el6.x86_64.rpm

    注:以上是安装gcc,软件安装顺序不能错

    libstdc++-4.4.6-4.el6.x86_64.rpm

    libstdc++-devel-4.4.6-4.el6.x86_64.rpm

    gcc-c++-4.4.6-4.el6.x86_64.rpm

    注:以上是安装gcc-c++

  • 安装完成后,提示一些安装配置信息如EM、数据库实例等。

   

   系统会提示你需要用root权限执行2个shell脚本。

   

  直接切换到root用户下输入:sh  /home/u01/oracle/app/oracle/product/11.2.0/dbhome_1/root.sh

               sh  /home/u01/oracle/app/oraInventory/orainstRoot.sh

  • 开机时自动启动Oracle数据库
   以oracle用户登录,打开“$ORACLE_HOME/bin/dbstart”文件 
  

  把行

  ORACLE_HOME_LISTNER=$1

  修改成

  ORACLE_HOME_LISTNER=$ORACLE_HOME

  

  • 让启动脚本生效

   以oracle用户登录,打开“/etc/oratab”文件

   将:

   orcl:/home/u01/oracle/app/oracle/product/11.2.0/dbhome_1:N

   修改成:

   orcl:/home/u01/oracle/app/oracle/product/11.2.0/dbhome_1:Y

  • 配置Oracle为自动启动

   以root用户登录,打开“/etc/rc.d/rc.local”文件,在文件最后添加下列几行信息:   

   su - oracle -c 'dbstart'
   su - oracle -c 'lsnrctl start'
   su - oracle -c 'emctl start dbconsole'

注意:如果你安装有杀毒软件,可能EM不能使用,我之前就遇到过这个问题,服务器上安装的McAfee的杀毒软件,不能正常登录EM,一直处于正在加载中,起初以为是安装过程中出现问题,重新安装后,找很多解决方案都不行,后来发现是McAfee杀毒软件nails服务,有问题。只要将这个服务禁止掉后EM就能正常打开。跟McAfee工程师沟通后,具体原因是在登录EM的时候打开很多文件,McAfee只要打开某个文件就会进行病毒扫描这个文件,后来把Oracle安装目录所有排除和数据库存放的位置排除后,nails服务启动后,EM能正常使用。感觉McAfee太占性能了,后面直接把McAfee的cma和nails这个两个服务停用。

原文地址:https://www.cnblogs.com/milian/p/3291830.html