Linux环境配置

[c-sharp] view
plain
copy

  1. OS:Fedora 15
  2. DB:Oracle 11gR2
  3. 将Oracle安装到home/oracle_11目录

配置过程:本文来自Oracle官方文档+网上资料

Oracle官方文档:http://www.oracle.com/pls/db112/homepage

1. 以root用户登录到Linux

2. 检查机器硬件要求

2.1 内存要求

[c-sharp] view
plain
copy

  1. 至少需要1GB的内存
  2. 查看机器内存大小
  3. # grep MemTotal /proc/meminfo

2.2 swap空间要求

[c-sharp] view
plain
copy

  1. 内存大小                 swap空间大小
  2. 1 GB ~ 2 GB             内存大小*1.5
  3. 2 GB ~ 16 GB            内存大小
  4. > 16 GB          16 GB
  5. 查看swap空间大小
  6. # grep SwapTotal /proc/meminfo

2.3 空闲硬盘要求

[c-sharp] view
plain
copy

  1. /tmp目录需要1 GB的空闲空间
  2. 查看/tmp目录的空闲空间
  3. # df -h /tmp
  4. 安装Oracle软件需要的硬盘空间
  5. Enterprise Edition   3.95(software files)+1.7(data files)
  6. Standard Edition     3.88(software files)+1.5(data files)
  7. 查看机器中每个磁盘的空闲空间
  8. # df -h

3. 检查操作系统软件要求

Oracle官方文档中包含了多个Linux系统的要求,详细请参考官方文档

Fedora 15 (RHEL 5.x)的软件要求列表如下:

[c-sharp] view
plain
copy

  1. binutils-2.17.50.0.6
  2. compat-libstdc++-33-3.2.3
  3. elfutils-libelf-0.125
  4. elfutils-libelf-devel-0.125
  5. elfutils-libelf-devel-static-0.125
  6. gcc-4.1.2
  7. gcc-c++-4.1.2
  8. glibc-2.5-24
  9. glibc-common-2.5
  10. glibc-devel-2.5
  11. glibc-headers-2.5
  12. kernel-headers-2.6.18
  13. ksh-20060214
  14. libaio-0.3.106
  15. libaio-devel-0.3.106
  16. libgcc-4.1.2
  17. libgomp-4.1.2
  18. libstdc++-4.1.2
  19. libstdc++-devel-4.1.2
  20. make-3.81
  21. numactl-devel-0.9.8.i386
  22. sysstat-7.0.2
  23. libxp
  24. libxt
  25. 查看系统是否安装了该软件包
  26. # rpm -q package_name

4. 创建安装Oracle需要的系统组和用户

[c-sharp] view
plain
copy

  1. 创建Oracle Inventory 组
  2. # groupadd oinstall
  3. 创建OSDBA 组
  4. # groupadd dba
  5. 创建Oracle软件创建者
  6. # useradd -g oinstall -G dba oracle
  7. 修改oracle用户的密码
  8. # passwd oracle

5. 配置系统内核参数值

[c-sharp] view
plain
copy

  1. 编辑/etc/sysctl.conf文件
  2. vim /etc/sysctl.conf
  3. 在打开的文件底部添加下面内容
  4. fs.aio-max-nr = 1048576
  5. fs.file-max = 6815744
  6. kernel.shmall = 2097152
  7. kernel.shmmax = 536870912
  8. kernel.shmmni = 4096
  9. kernel.sem = 250 32000 100 128
  10. net.ipv4.ip_local_port_range = 9000 65500
  11. net.core.rmem_default = 262144
  12. net.core.rmem_max = 4194304
  13. net.core.wmem_default = 262144
  14. net.core.wmem_max = 1048586
  15. 改变当前系统内核参数值(让/etc/sysctl.conf立即生效)
  16. # sysctl -p

6. 检查Oracle安装用户(oracle)资源限制

[c-sharp] view
plain
copy

  1. 修改/etc/security/limits.conf文件
  2. vim /etc/security/limits.conf
  3. 在打开的文件底部添加下面内容
  4. oracle              soft    nproc   20470
  5. oracle              hard    nproc   16384
  6. oracle              soft    nofile  10240
  7. oracle              hard    nofile  65536
  8. oracle              soft    stack   10240

7. 创建安装Oracle软件所需要的目录

[c-sharp] view
plain
copy

  1. # mkdir -p /home/oracle_11/app/
  2. # chown -R oracle:oinstall /home/oracle_11/app/
  3. # chmod -R 775 /home/oracle_11/app/

8. 配置安装Oracle安装用户(oracle)的环境

[c-sharp] view
plain
copy

  1. 编辑 /home/oracle/.bash_profile
  2. vim /home/oracle/.bash_profile
  3. 在打开的文件中添加下面内容
  4. umask 022
  5. export ORACLE_BASE=/home/oracle_11/app
  6. export ORACLE_HOME=$ORACLE_BASE/oracle/product/11.2.0/db_1
  7. export ORACLE_SID=orcl --Oracle实例名,可修改
  8. export PATH=$PATH:HOME/bin:$ORACLE_HOME/bin
  9. 编辑 /etc/pam.d/login
  10. vim /etc/pam.d/login
  11. 在打开的文件中添加下面内容
  12. session required /lib/security/pam_limits.so
  13. session required pam_limits.so
  14. 编辑 /etc/profile
  15. vim /etc/profile
  16. 在打开的文件中添加下面内容
  17. if [ $USER = "oracle" ]; then
  18. if [ $SHELL = "/bin/ksh" ]; then
  19. ulimit -p 16384
  20. ulimit -n 65536
  21. else
  22. ulimit -u 16384 -n 65536
  23. fi
  24. fi

9. 查看系统是否支持图形界面

[c-sharp] view
plain
copy

  1. 查看root用户下是否已设置DISPLAY变量
  2. # echo $DISPLAY
  3. 如果有值出现,则说明已设置DISPLAY变量;否则,就需要手动设置DISPLAY

10. 开始安装Oracle软件

[c-sharp] view
plain
copy

  1. # cd /tmp
  2. # unzip linux_11gR2_database_1of2.zip linux_11gR2_database_2of2.zip
  3. # xhost +
  4. # su - oracle
  5. $ export DISPLAY=:0
  6. $ cd /database
  7. $ ./runInstaller
  8. 接下来系统会启动Oracle图形安装界面,安装过程和Windows下一样

在安装过程中,会提示在root用户下运行两个脚本文件(具体是哪两个,不记得了,按提示操作即可)。

Linux下的Oracle在安装结束后是处于运行状态的。重启机器后,Oracle不会像在Windows下那样将Oracle添加到Windows服务,在linux下需要手动启动Orcle服务

[c-sharp] view
plain
copy

  1. 以oracle用户下,执行下面的命令
  2. 进入sqlplus
  3. $ sqlplus /nolog
  4. 以sysdba的身份连接到数据库,并启动Oracle数据库引擎
  5. SQL> conn /as sysdba
  6. SQL> startup
  7. 退出sqlplus,运行Listener
  8. SQL> exit
  9. $ lsnrctl start

这样就可以连接到Oracle数据库了。如果想用Oracle提供的EM来管理Oracle的话还需要启动EM控制台,运行如下命令:

[c-sharp] view
plain
copy

  1. $ emctl start dbconsole

这样就可以通过http://localhost:1158/em/ 来访问EM控制台了。

使用dbstart和dbstop来启动Oracle服务

可能使用dbstart命令来启动数据库更方便一些,但初次安装完oracle之后使用dbstart命令会报这样的错误

[c-sharp] view
plain
copy

  1. ORACLE_HOME_LISTNER is not SET, unable to auto-start Oracle Net Listener
  2. Usage: /u01/app/oracle/product/11.2/db/bin/dbstart ORACLE_HOME

出现这样错误的原因是由于没有设置ORACLE_HOME_LISTNER的原因,我们查看一下dbstart这个文件

[c-sharp] view
plain
copy

  1. more  /home/oracle_11/app/oracle/product/11.2/db/bin/dbstart

部分内容如下

[c-sharp] view
plain
copy

  1. # First argument is used to bring up Oracle Net Listener
  2. ORACLE_HOME_LISTNER=$1
  3. if [ ! $ORACLE_HOME_LISTNER ] ; then
  4. echo "ORACLE_HOME_LISTNER is not SET, unable to auto-start Oracle Net Listener"
  5. echo "Usage: $0 ORACLE_HOME"
  6. else
  7. LOG=$ORACLE_HOME_LISTNER/listener.log
  8. # Set the ORACLE_HOME for the Oracle Net Listener, it gets reset to
  9. # a different ORACLE_HOME for each entry in the oratab.
  10. export ORACLE_HOME=$ORACLE_HOME_LISTNER

解决方案就算将$ORACLE_HOME赋值给$ORACLE_HOME_LINTNER,保存,退出

再一次执行dbstart,但是没有反映,没有报错,如果我们需要使用dbstart,则需要在/etc/oratab这个文件中的实例最后的N改成Y,如下

[c-sharp] view
plain
copy

  1. orcl:/home/oracle_11/app/oracle/product/11.2/db:Y

OK,保存,再试一下dbstart命令,返回结果如下

[c-sharp] view
plain
copy

  1. Processing Database instance "orcl": log file /home/oracle_11/app/oracle/product/11.2.0/db_1/startup.log

dbshut进行同样的设置.这样,以后就可以在启动监听之后直接使用dbstart和dbshut命令来启动和关闭数据了

将Oracle服务添加到Linux开机启动项,以root用户建立/etc/rc.d/init.d/oradb脚本文件,文件内容如下:

[c-sharp] view
plain
copy

  1. #!/bin/bash
  2. # chkconfig: 2345 90 10
  3. export ORACLE_BASE=/home/oracle_11/app/
  4. export ORACLE_HOME=$ORACLE_BASE/oracle/product/11.2.0/db_1
  5. export ORACLE_SID=orcl
  6. export PATH=$PATH:$ORACLE_HOME/bin
  7. ORCL_OWN="oracle"
  8. # if the executables do not exist -- display error
  9. if [ ! -f $ORACLE_HOME/bin/dbstart -o ! -d $ORACLE_HOME ]
  10. then
  11. echo "Oracle startup: cannot start"
  12. exit 1
  13. fi
  14. # depending on parameter -- start, stop, restart
  15. # of the instance and listener or usage display
  16. case "$1" in
  17. start)
  18. # Oracle listener and instance startup
  19. echo -n "Starting Oracle: "
  20. su - $ORCL_OWN -c "$ORACLE_HOME/bin/dbstart"
  21. touch /var/lock/subsys/oradb
  22. su - $ORCL_OWN -c "$ORACLE_HOME/bin/emctl start dbconsole"
  23. echo "OK"
  24. ;;
  25. stop)
  26. # Oracle listener and instance shutdown
  27. echo -n "Shutdown Oracle: "
  28. su - $ORCL_OWN -c "$ORACLE_HOME/bin/emctl stop dbconsole"
  29. su - $ORCL_OWN -c "$ORACLE_HOME/bin/dbshut"
  30. rm -f /var/lock/subsys/oradb
  31. echo "OK"
  32. ;;
  33. reload|restart)
  34. $0 stop
  35. $1 start
  36. ;;
  37. *)
  38. echo "Usage: 'basename $0' start|stop|restart|reload"
  39. exit 1
  40. esac
  41. exit 0

将该文件添加到开机启动

[c-sharp] view
plain
copy

  1. # chmod 755 /etc/rc.d/init.d/oradb
  2. # chkconfig --add oradb

重启服务

[c-sharp] view
plain
copy

  1. # service oradb stop
  2. # service oradb start

下次启动机器的时候,Oracle服务会随机器一起启动。

Oracle数据库安装、配置完成。

Tip:Oracle数据库的默认端口号:1521,Oracle提供的EM管理器默认端口号是1158。

原文地址:http://blog.csdn.net/westmaniac/article/details/6539487

Linux oracle 11g r2 安装前检查及安装的更多相关文章

  1. centos 安装oracle 11g r2(一)-----软件安装

    centos 安装oracle 11g r2(一)-----软件安装 1.进入管理员权限 [anzerong@localhost ~]# su - root password [root@localh ...

  2. 全网最详细的Windows系统里Oracle 11g R2 Database(64bit)安装后的初步使用(图文详解)

    不多说,直接上干货! 前期博客 全网最详细的Windows系统里Oracle 11g R2 Database(64bit)的下载与安装(图文详解) 命令行方式测试安装是否成功 1)   打开服务(cm ...

  3. Oracle 11g r2 rac +openfiler 2.99 安装

    1 openfiler 2.99 安装 在官网下载iso文件,这里选择openfileresa-2.99.1-x86_64-disc1.iso 版本,在vbox下创建一个虚拟机 --vbox 选择li ...

  4. 全网最详细的Windows系统里Oracle 11g R2 Client(64bit)的下载与安装(图文详解)

    不多说,直接上干货! 环境: windows10系统(64位) 最好先安装jre或jdk(此软件用来打开oracle自带的可视化操作界面,不装也没关系:可以安装plsql,或者直接用命令行操作) Or ...

  5. centos 安装oracle 11g r2(三)-----表空间创建

    centos 安装oracle 11g r2(三)-----表空间创建 创建表空间前要保证监听与数据库实例已经启动 1.启动监听 [oracle@localhost ~]$ lsnrctl start ...

  6. 全网最详细的Windows系统里Oracle 11g R2 Database服务器端(64bit)的下载与安装(图文详解)

    不多说,直接上干货! 环境: windows10系统(64位) 最好先安装jre或jdk(此软件用来打开oracle自带的可视化操作界面,不装也没关系:可以安装plsql,或者直接用命令行操作) Or ...

  7. centos 安装oracle 11g r2(二)-----监听配置与创建数据库实例

    centos 安装oracle 11g r2(二)-----监听配置与创建数据库实例 一.监听配置(命令:netca) 1.以 oracle 用户输入命令,启动图形化工具配置监听 [oracle@lo ...

  8. Linux 6.x 下Oracle 11g R2 安装配置

    Oracle 11g R2 数据库安装硬件配置要求: 最小内存 1 GB of RAM 虚拟内存容量,这个oracle也有要求,不用担心此时的swap分区不够oracle的要求 .虚拟内存swap如何 ...

  9. Oracle Linux 6.3下安装Oracle 11g R2(11.2.0.3)

    本文主要描写叙述了在Oracle Linux 6.3下安装Oracle 11gR2(11.2.0.3).从Oracle 11g開始,Oracle官方站点不再提供其Patch的下载链接,须要使用Meat ...

随机推荐

  1. 'adb' 不是内部或外部命令,也不是可运行的程序

    启动adb shell的时候,出现如下问题: 'adb' 不是内部或外部命令,也不是可运行的程序或批处理文件. 在确保自己的SDK安装正确的时候,就很好办了,找到SDK安装目录\platform-to ...

  2. 【D3.V3.js系列教程】--(十五)SVG基本图形绘制

    [D3.V3.js系列教程]--(十五)SVG基本图形绘制 1.path <!DOCTYPE html> <html> <head> <meta charse ...

  3. 【LeetCode练习题】Evaluate Reverse Polish Notation

    Evaluate Reverse Polish Notation Evaluate the value of an arithmetic expression in Reverse Polish No ...

  4. word2vec 入门基础(一)

    一.基本概念 word2vec是Google在2013年开源的一个工具,核心思想是将词表征映 射为对应的实数向量. 目前采用的模型有一下两种 CBOW(Continuous Bag-Of-Words, ...

  5. 为什么VS提示SurfFeatureDetector不是cv的成员函数

    surf和sift算法都是在头文件#include <opencv2/features2d/features2d.hpp>中,但在新的opencv版本出来后,如果仍然使用这个头文件就会出现 ...

  6. 《think in python》学习-10

    think in python 10 列表 和字符串相似,列表是值得序列.在列表中,它可以是任何类型,列表中的值成为元素,有时也称为列表项 s = [10,20,30,40] print s #列表也 ...

  7. 去掉UItableview headerview黏性

    //去掉UItableview headerview黏性 - (void)scrollViewDidScroll:(UIScrollView *)scrollView { if (scrollView ...

  8. CreateMutex() 、ReleaseMutex()

    功能: CreateMutex() 用于有独占要求的程序 (在其进程运行期间不允许其他使用此端口设备的程序运行,或不允许同名程序运行). 比如运行金山词霸时,一次只能运行一个实例,当运行第二个实例时, ...

  9. C++中内存分配详解

    转载自51CTO.com           http://developer.51cto.com/art/201107/276154.htm 我们都知道,内存基本上分为静态存储区.堆区和栈区三大部分 ...

  10. mysql 建立索引的原则

    建索引的几大原则 1. 最左前缀匹配原则,非常重要的原则,mysql会一直向右匹配直到遇到范围查询(>.<.between.like)就停止匹配,比如a 1="" an ...