• 当前位置: 主页 > Linux安装教程 > 环境部署 >

    linux下安装配置oralce环境变量详解与经验分享

    时间:2021-10-23 03:55来源:网络整理 作者:Linux先生 举报 点击:
    湖南成人高考 成人高考 成人高考 成人高考  成人高考 成人高考 
    linux下安装配置oralce环境变量详解与经验分享,电子发烧友网站提供各种电子电路,电路图,原理图,IC资料,技术文章,免费下载等资料,是广大电子工程师所喜爱电

    linux下安装与设置oralce环境变量详解:
     Linux下Oracle设置环境变量

      需要设置Oracle_HOME和ORACLE_SID两个环境变量,再把ORACLE的bin目录添加到PATH中即可,通常缺省安装的情况下ORACLE_SID=orcl,ORACLE_HOME=/home/oracle/oracle/product/10.。..。.这样的形式,

      操作步骤:

      1、su oracle并回车切换到oracle用户;

      2、cd并回车回到oracle用户目录;

      cd /home/oracle

      ls -a

      3、vi .bash_profile并回车编辑该文件,按I键进入插入状态,在最后加入以下行:

      export ORACLE_SID=orcl

      export ORACLE_HOME=/u01/app/oracle/product/11.2.0/dbhome_1

      export PATH=$ORACLE_HOME/bin:$PATH

      输入完毕后按ESC键退出vi编辑状态,

      输入:wq并回车存盘退出。

      注销所有oracle用户,再使用oracle登录即可。

      注意输入wq前面有个:冒号,先输入这个:就可以在编辑器最底端输入命令了。

    Oracle环境配置的那些变量到底有什么意义?

      OFA(OpTImal Flexible Architecture)

      OFA 中有几个关键目录需要知道,包括:

      oracle inventory 目录:

      oracle Base 目录 (ORACLE_BASE);

      Oracle Home 目录 (ORACLE_HOME);

      Oracle Network 目录 (TNS_ADMIN)

      AutomaTIc DiagnosTIc Repository (ADR_HOME)

      Oracle Inventory 目录

      这个目录不属于ORACLE_BASE,它是和ORACLE_BASE同级的一个目录。这个目录用来保存本机上所安装的Oracle 软件的目录清单,本机上安装的所有Oracle软件都需要并且共享使用这个目录。当我们第一次安装Oracle软件时,Oracle使用下面的几条规则来寻找这个目录。

      (1)是否有OFA兼容的目录结构,所谓OFA兼容就是指这个目录符合/u01/app这样的命名规范。如果有,安装程序就会在这个目录下创建,比如/u01/app/oraInventory。

      (2)如果Oracle用户的环境变量中定义了ORACLE_ BASE目录,oraInventory在ORACLE_BASE的上层目录,也就是说oraInventory目录和ORACLE_BASE目录在同一个层次。比如:ORACLE_BASE定义为/u01/app/oracle ,这个目录就是/u01/app/oraInventory。

      (3)如果安装程序没有找到OFA兼容的目录结构,也没有发现ORACLE_BASE变量,则安装会在Oracle用户的HOME目录下创建这个目录,也就是/home/oracle/oraInventory目录。

     Linux下安装Oracle的常用设置参数及环境变量说明

      fs.aio-max-nr = 1048576

      指的是 同时可以拥有的的异步IO请求数目。 值出现在 /etc/sysctl.conf 文件中,推荐值是:1048576 其实它等于 1024*1024 也就是 1024K 个。

      fs.file-max = 6815744

      该参数决定了系统中所允许的文件句柄最大数目,文件句柄设置代表linux系统中可以打开的文件的数量。

      kernel.shmall = 2097152

      该参数控制可以使用的共享内存的总页数。Linux共享内存页大小为4KB,共享内存段的大小都是共享内存页大小的整数倍。一个共享内存段的最大大小是16G,那么需要共享内存页数是16GB/4KB=16777216KB /4KB=4194304(页),也就是64Bit系统下16GB物理内存,设置kernel.shmall = 4194304才符合要求(几乎是原来设置2097152的两倍)。这时可以将shmmax参数调整到16G了,同时可以修改SGA_MAX_SIZE和SGA_TARGET为12G(您想设置的SGA最大大小,当然也可以是2G~14G等,还要协调PGA参数及OS等其他内存使用,不能设置太满,比如16G)

      kernel.shmmax = 536870912

      是核心参数中最重要的参数之一,用于定义单个共享内存段的最大值。设置应该足够大,能在一个共享内存段下容纳下整个的SGA ,设置的过低可能会导致需要创建多个共享内存段,这样可能导致系统性能的下降。至于导致系统下降的主要原因为在实例启动以及ServerProcess创建的时候,多个小的共享内存段可能会导致当时轻微的系统性能的降低(在启动的时候需要去创建多个虚拟地址段,在进程创建的时候要让进程对多个段进行“识别”,会有一些影响),但是其他时候都不会有影响。

      官方建议值:

      32位linux系统:可取最大值为4GB(4294967296bytes)-1byte,即4294967295。建议值为多于内存的一半,所以如果是32位系统,一般可取值为4294967295。32位系统对SGA大小有限制,所以SGA肯定可以包含在单个共享内存段中。

      64位linux系统:可取的最大值为物理内存值-1byte,建议值为多于物理内存的一半,一般取值大于SGA_MAX_SIZE即可,可以取物理内存-1byte。例如,如果为12GB物理内存,可取12*1024*1024*1024-1=12884901887,SGA肯定会包含在单个共享内存段中。

      kernel.shmmni = 4096

      该参数是共享内存段的最大数量。shmmni缺省值4096,一般肯定是够用了。

      kernel.sem = 250 32000 100 128

      以kernel.sem = 250 32000 100 128为例:

      250是参数semmsl的值,表示一个信号量集合中能够包含的信号量最大数目。

      32000是参数semmns的值,表示系统内可允许的信号量最大数目。

      100是参数semopm的值,表示单个semopm()调用在一个信号量集合上可以执行的操作数量。

      128是参数semmni的值,表示系统信号量集合总数。

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

      表示套接字发送缓冲区大小的最大值。

      $ DISPLAY=local_host:0.0 ; export DISPLAY

      只有配置了DISPLAY环境变量,才能在远程连接的终端会话上看到Oracle的图形安装界面并操作。local_host也可写成IP地址的形式。

      mkdir /mount_point/tmp

      创建临时目录tmp,其位于/mount_point下。

      chmod a+wr /mount_point/tmp

      修改tmp目录权限,所有用户和组增加读和写的权限

      chmod u 意为对所属用户的权限进行修改

      chmod g 意为对所属组的权限进行修改

      chmod o 意为对其它用户和组的权限进行修改

      chmod a 意为对所有用户和组的权限进行修改

      $ TMP=/mount_point/tmp

      设置TMP环境变量为“/mount_point/tmp”,即前面创建的临时目录。

      $ TMPDIR=/mount_point/tmp

      设置TMPDIR环境变量为“/mount_point/tmp”,即前面创建的临时目录。

      $ export TMP TMPDIR

      使环境变量TMP和TMPDIR对当前会话和用户生效。

      $ ORACLE_BASE=/u01/app/oracle

      设置ORACLE_BASE环境变量。该变量用于指示ORACLE软件安装的主目录所在。

      $ ORACLE_SID=sales

      设置ORACLE_SID环境变量。该变量用于指示ORACLE数据库的实例名。

      $ export ORACLE_BASE ORACLE_SID

      使环境变量TMP和TMPDIR对当前会话和用户生效。

      $ unset ORACLE_HOME

      删除环境变量 ORACLE_HOME

      $ unset TNS_ADMIN

      删除环境变量 TNS_ADMIN

    推荐内容