美好学生生活的结束,迎来了刺激的实习生活。这刚开始去,公司让我熟悉系统环境,在LINUX上安装ORACLE,不得不说,在LINUX 安装ORACLE真是蛋疼的事情。经过重重繁琐的难关,终于到了安装ORACLE的时候,却提示说,权限不够,上网看了,说是修改install文件夹下的 .oui unzip 两个文件的权限,但是不管我是在ROOT 还是ORACLE都提示说,修改 .oui 的权限,是不允许的操作!!之前的事,就够蛋疼的了,没想到这个.....所以,在此求解..........在此,先谢了!!

解决方案 »

  1.   

    事实证明,关于LINUX 64 位oracle数据库安装,只要在安装操作系统的时候,采取了完全安装,在安装ORACLE的过程中,不会出现任何问题;
     
    今天湖北的一个地市,客户反馈:除了游戏相关的RPM包没有勾上以外,其余的都勾上了,结果我安装ORACLE的时候就遇到一点小问题,
     
    进入图形化界面以后,执行./RUNINSTALL,不能启动安装界面,是由于缺少了:libXp-1.0.0-8.1.el5.i386.rpm包
     
    解决办法,要安装libXp-1.0.0-8.1.el5.i386.rpm包,这个包在rhel4/oel4中叫xorg-x11-deprecated-libs ,在rhel5/oel5中叫libXp。(这个包在光盘内)
     
    参见:http://www.linuxdiyf.com/viewarticle.php?id=95636 
    ORA-12560: TNS: 协议适配器错误
    检查监听,没有错误。从本机建立建立数据库别名,也能正常连接。但是从windows下连接的时候就不行了。怀疑是windows机器的sqlplus有问题,换机器再试,还是报错,排除了windows下数据库本身的问题。从linux下连接windows下的数据库,一切正常。怀疑是其他机器访问linux的oracle的时候出了状况。重新检查linux的oracle,能想到的全想了,还是一切正常。最后检查防火墙,发现linux的防火墙没有允许其他机器访问oracle监听端口。于是,在防火墙可让所有主机和网络访问的附加端口或者端口范围内,添加所设置的oracle监听端口。成功后,再测试连接,一切正常。按照一下步骤安装oracle10g完成4.12后,重启,结果系统不停重启,不能进入linux界面请达人解惑1.         硬件要求
       1.swap 分区不低于2G
       2.selinux 状态disable
       3.物理内存不低于512M2.         系统要求
        redhat Enterprise 5 默认安装3.         数据库要求      3.1.软件下载
          根据实际环环境从oracle官方网站下载相应的数据库
         http://www.oracle.com/technology/software/products/database/index.html
         
          3.2.解包
          unzip 10201_database_linux32.zip
          解包完成后后将database目录拷贝到/opt目录下,以便oracle用户安装使用4.     redhat配置4.1         安装缺失的包  rpm -qa|grep vnc  ----查找缺少的包 rpm -ivh -force 名称.rpm -nodeps
         
          用 root 用户身份运行以下命令:
          rpm -q gcc make binutils openmotif setarch compat-db compat-gcccompat-gcc-c++ compat-libstdc++ compat-libstdc++-devel      如果采用默认安装,该命令执行后通常会提示openmotif,compat-db,compat-gcc,compat-gcc-c++,compat-libstdc++,compat-libstdc++-devel 没有安装。如下所示      gcc-4.1.1-52.el5
          make-3.81-1.1
          binutils-2.17.50.0.6-2.el5
          package openmotif is not installed
          setarch-2.0-1.1
          package compat-db is not installed
          package compat-gcc is not installed
          package compat-gcc-c++ is not installed
          package compat-libstdc++ is not installed
          package compat-libstdc++-devel is not installed      对缺失的包需要通过光盘或其他介质安装,笔者采用光盘安装      4.1.1          在/mnt 下创建cdrom
          4.1.2          将光盘放入光驱
          4.1.3          执行命令 mount -t iso9660 /dev/cdrom /mnt/cdrom
          命令执行后/mnt/cdrom下将产生光盘下面的文件
          4.1.4          进入光盘Server目录下  cd /mnt/cdrom/Server
           
    由于缺失的包之间有严格的依赖关系,所以必须按照如下顺序安装缺失的包
    rpm -Uvh compat-db-4*
    rpm -Uvh libaio-0*
    rpm -Uvh compat-libstdc++-33-3*
    rpm -Uvh glibc-headers-2.5-12.i386.rpm
    rpm -Uvh glibc-devel-2.5-12.i386.rpm
    rpm -Uvh compat-gcc-34-3*
    rpm -Uvh compat-gcc-34-c++-3*
    rpm -Uvh libXp-1*
    rpm -Uvh openmotif-2*
    rpm -Uvh gcc-4*
    rpm -Uvh glibc-2.5-12.i686.rpm
    rpm -Uvh libgomp-4.1.1-52.el5.i386.rpm
    rpm -Uvh gcc-4.1.1-52.el5.i386.rpm安装完成后仍然提示部分包没有安装,不过不影响使用
    package compat-gcc is not installed
    package compat-gcc-c++ is not installed
    package compat-libstdc++ is not installed
    package compat-libstdc++-devel is not installed4.2     vi /etc/sysctl.conf filekernel.shmall = 2097152
    kernel.shmmax = 2147483648
    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=262144
    net.core.rmem_max=262144
    net.core.wmem_default=262144
    net.core.wmem_max=262144运行下面命令使设置生效/sbin/sysctl -p4.3     vi /etc/security/limits.conf vf
    * soft nproc 2047
    * hard nproc 16384
    * soft nofile 1024
    * hard nofile 655364.4     vi /etc/pam.d/loginsession required /lib/security/pam_limits.so4.5     vi /etc/selinux/config# This file controls the state of SELinux on the system.
    # SELINUX= can take one of these three values:
    # enforcing - SELinux security policy is enforced.
    # permissive - SELinux prints warnings instead of enforcing.
    # disabled - SELinux is fully disabled.
    SELINUX=disabled
    # SELINUXTYPE= type of policy in use. Possible values are:
    # targeted - Only targeted network daemons are protected.
    # strict - Full SELinux protection.
    #SELINUXTYPE=targeted
    SELINUXTYPE=disabled4.6     添加oracle用户和组groupadd oinstall
    groupadd dba
    groupadd oper
    useradd –m -g oinstall -G dba oracle  
    (# /usr/sbin/useradd -g oinstall -G dba oracle)
    passwd oracle4.7     创建安装目录并赋予oracle相应权限
    mkdir -p /u01/app/oracle/product/10.2.0/db_1
    chown -R oracle:oinstall /u01
    chmod -R 775 /u014.8     添加访问控制列表xhost + machine-name4.9     设置主机名和IPvi /etc/hosts   
    删除文件内容,添加如下两行
    127.0.0.1    localhost
    IP地址      主机名称如果不添加第一行,安装以后数据库可以打开,通过http://ip:1158/em访问  控制台发现数据库和监听器均无法启动(箭头指向下)以管理员帐号进入em,页面提示Network Adapter error,如果通过命令lsnrctl start提示如下错误LSNRCTL for Linux: Version 10.2.0.1.0 - Production on 17-OCT-2007 15:35:07
    Copyright (c) 1991, 2005, Oracle.  All rights reserved.
    Starting .......
    ................
    Listening on: (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=olivenan)(PORT=1521)))
    Listening on: (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=EXTPROC0)))Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=olivenan)(PORT=1521)))
    TNS-12547: TNS:lost contact
     TNS-12560: TNS:protocol adapter error
      TNS-00517: Lost contact
       Linux Error: 104: Connection reset by peer
    Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC0)))
    TNS-12541: TNS:no listener
     TNS-12560: TNS:protocol adapter error
      TNS-00511: No listener
       Linux Error: 111: Connection refused4.10  修改redhat版本vi /etc/redhat-release
    Red Hat Enterprise Linux Server release 5 (Tikanga) 替换成 redhat-44.11  修改oracle的环境变量su - oracle
    vi ~/.bash_profile
    # Oracle Settings
    TMP=/tmp; export TMP
    TMPDIR=$TMP; export TMPDIR
    ORACLE_BASE=/u01/app/oracle; export ORACLE_BASE
    ORACLE_HOME=$ORACLE_BASE/product/10.2.0/db_1
    export ORACLE_HOME
    ORACLE_SID=orcl
    export ORACLE_SID
    ORACLE_TERM=xterm
    export ORACLE_TERM
    PATH=/usr/sbin:$PATH
    PATH=$ORACLE_HOME/bin:$PATH
    export PATH
    LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib
    export LD_LIBRARY_PATH
    CLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib
    export CLASSPATH
    #LD_ASSUME_KERNEL=2.4.1; export LD_ASSUME_KERNEL
    if [ $USER = "oracle" ]; then
      if [ $SHELL = "/bin/ksh" ]; then
        ulimit -p 16384
        ulimit -n 65536
      else
        ulimit -u 16384 -n 65536
      fi
    fiexport LANG=en_US.utf8
    export LANGUAGE=en_US.utf8
    export NLS_LANG="Simplified Chinese_China.UTF8"
    export LC_ALL=en_US.utf84.13  安装以oracle用户登录系统,打开终端将当前位置定位到database中
    Unset LANG
    ./runInstaller.sh如果之前的包按照要求安装完成,安装过程应该很顺利,如果安装进度在63%左右出现错误,如提示遇到问题需要重试,忽略等等,一般就是系统要求的包没有安装完全。安装完成后重启机子,登录oracle 打开终端
    sqlplus ‘/as sysdba'
    启动数据库
    startup
    启动控制台
    emctl start dbconsole
    启动监听器
    lsnrctl starthttp://ip:1158/em4.14  后修改vi /etc/redhat-release 内容为Red Hat Enterprise Linux Serverrelease 5 (Tikanga)4.15  设置开机启动vi /etc/oratab
    orcl:/u01/app/oracle/product/10.2.0/db_1:Y
      

  2.   

    建立文件夹后,用root用户建立用户和组,
    然后用建立的用户在安装oracle到这个目录下,就可以了
      

  3.   

    .oui?
    我觉得这里首先是linux使用不够熟练的问题了
    楼主可以详细地把自己安装的步骤写出来,说不定整理的时候自己发现问题了呢,呵呵
      

  4.   

    看oracle联机文档,里面有详解步骤
      

  5.   


    安装Oracle软件,你只能以Oracle用户的身份安装,文件权限不够的话,应该是没有执行权限哦。
    解决方法:chmod +x 文件名 ,给每个文件赋执行权限之后,就OK了。