zoukankan      html  css  js  c++  java
  • CentOS 5.5 安装 Oracle 11gR2 并随系统启动

    一.安装环境&&相关约定 
    system:CentOS 5.5
    oracle version: Oracle 11gR2
    基本需求:
    物理内存大小:至少1G
    SWAP:最好达到3G以上
    oracle安装目录:/oracle
    安装包:安装包有两个包,一定要解压到一个目录下,即database目录下。
    二.安装准备工作 
    1)固定IP地址(这点很重要,一定要固定IP)
    2)安装依赖包
    在CentOS下Oracle 11gR2依赖的包:
    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
    glibc-headers-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
    numactl-devel-0.9.8.i386
    sysstat-7.0.0
    检查以上包是否有安装,没有就安装之。
    yum -y install binutils compat-libstdc++-33 elfutils-libelf elfutils-libelf-devel glibc glibc-common glibc-devel gcc gcc-c++ libaio-devel libaio libgcc libstdc++ libstdc++-devel make sysstat unixODBC unixODBC-devel pdksh numactl-devel glibc-headers

    (如果有报错现 yum clean all)
    三.修改内核参数 
    #vi /etc/sysctl.conf
    #oracle settings
    fs.file-max = 6815744
    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 = 262144
    net.core.rmem_max = 4194304
    net.core.wmem_default = 262144
    net.core.wmem_max = 1048576
    fs.aio-max-nr = 1048576

    没有的可以加在最后
    修改完毕执行
    #sysctl -p  //让上面的修改生效
    四.修改/etc/security/limits.conf 
    #oracle settings
    oracle           soft    nproc   2047
    oracle           hard    nproc   16384
    oracle           soft    nofile  1024
    oracle           hard    nofile  65536
    五.修改系统版本(Redhat 5.×系列系统略过这步) 
    #cp /etc/redhat-release /etc/redhat-release.bk
    #vi /etc/redhat-release
    修改内容为:
    Red Hat Enterprise Linux AS release 5 (Taroon)
    六.修改/etc/pam.d/login 
    添加以下内容:
    session    required     /lib/security/pam_limits.so
    session    required     pam_limits.so
    七.修改/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
    添加到 vi /etc/csh.login 以下内容:
    if ( $USER == "oracle" ) then
    limit maxproc 16384
    limit deors 65536
    endif
    八.创建相关用户 
    groupadd oinstall
    groupadd dba
    useradd -g oinstall -G dba oracle
    passwd oracle
    九.创建相关目录,并赋予对应权限 
    mkdir -p /oracle/app/oracle/product/
    chown -R oracle:oinstall /oracle/
    chmod -R 775 /oracle/
    十.设置oracle用户相关变量 
    #su – oracle
    $ vi .bash_profile
    添加以下内容:
    ORACLE_BASE=/oracle/app/oracle
    export ORACLE_BASE
    ORACLE_HOME=$ORACLE_BASE/product/11.1.0/db_1
    export ORACLE_HOME
    ORACLE_SID=ORCL
    export ORACLE_SID
    ORACLE_TERM=xterm
    export ORACLE_TERM
    TNS_ADMIN=$ORACLE_HOME/network/admin
    export TNS_ADMIN
    PATH=$ORACLE_HOME/bin:$PATH
    export PATH
    LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib
    export LD_LIBRARY_PATH
    CLASSPATH=$ORACLE_HOME/jdk/jre:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib
    export CLASSPATH
    ORACLE_UNQNAME=$ORACLE_SID export ORACLE_UNQNAME
    umask 022
    $source .bash_profile
    $exit
    十一.开始安装 
    #xhost + (这里使用root用户执行,一定要执行以下2步,如果没有执行,将无法启动图形安装界面)
    #xhost + localhost
    #su – oralce
    $./runInstaller  (到oracle安装文件所在目录执行该命令)
    十二.安装过程中注意事项 
    1)第一步是让你填支持的邮箱,不填也可以,会报错,直接略过即可。
    2)接下来就一步步的点下一步即可。
    3)到检验系统内存,swap大小,依赖包以及内核参数设定是否正确时,更据提示去满足他的需求即可。最好不要轻易略过。
    4)下面就是无尽的等待。

    5)vi /ect/profile 最后加上 source /home/oracle/.bash_profile (可以不加)
    十三.开机启动设置 
    1)vi /oracle/app/oracle/product/11.1.0/db_1/bin/dbstart
    ORACLE_HOME_LISTNER=$1
    修改为:

    ORACLE_HOME_LISTNER=$ORACLE_HOME
    2)vi /oracle/app/oracle/product/11.1.0/db_1/bin/dbshut

    ORACLE_HOME_LISTNER=$1
    修改为:
    ORACLE_HOME_LISTNER=$ORACLE_HOME
    3)编写开机启动文件
    #vi /etc/init.d/oracle
    添加以下内容:
    #!/bin/sh
    # chkconfig: 345 61 61
    # description: Oracle 11g AutoRun Services
    # /etc/init.d/oracle
    #
    # Run-level Startup script for the Oracle Instance, Listener, and
    # Web Interface
    export ORACLE_BASE=/oracle/app/oracle
    export ORACLE_HOME=$ORACLE_BASE/product/11.1.0/db_1
    export ORACLE_SID=ORCL
    export PATH=$PATH:$ORACLE_HOME/bin
    ORA_OWNR=oracle
    # if the executables do not exist — display error
    if [ ! -f $ORACLE_HOME/bin/dbstart -o ! -d $ORACLE_HOME ]
    then
    echo "Oracle startup: cannot start"
    exit 1
    fi
    # depending on parameter — startup, shutdown, restart
    # of the instance and listener or usage display
    case "$1" in
    start)
    # Oracle listener and instance startup
    su $ORA_OWNR -lc $ORACLE_HOME/bin/dbstart
    echo "Oracle Start Succesful!OK."
    ;;
    stop)
    # Oracle listener and instance shutdown
    su $ORA_OWNR -lc $ORACLE_HOME/bin/dbshut
    echo "Oracle Stop Succesful!OK."
    ;;
    reload|restart)
    $0 stop
    $0 start
    ;;
    *)
    echo $”Usage: `basename $0` {start|stop|reload|reload}”
    exit 1
    esac
    exit 0


    #chmod 750 /etc/init.d/oracle
    #ln -s /etc/init.d/oracle /etc/rc1.d/K61oracle
    #ln -s /etc/init.d/oracle /etc/rc3.d/S61oracle
    #chkconfig --level 345 oracle on
    #chkconfig --add oracle
    [root@localhost init.d]# service oracle start
    Processing Database instance “orcl”: log file /oracle/app/oracle/product/11.1.0/db_1/startup.log
    Oracle Start Succesful!OK.
    [root@localhost init.d]# service oracle stop
    Processing Database instance “orcl”: log file /oracle/app/oracle/product/11.1.0/db_1/shutdown.log
    Oracle Stop Succesful!OK.
    这样就可以使用service oracle start/stop来启动oracle,是不是很方便呢?
    开始您的oracle安装之旅吧~
    备注:启动企业管理器命令#emctl start dbconsole 反之停止#emctl stop dbconsole



    如果启动有问题/oracle/app/oracle/product/11.1.0/db_1/bin/lsnrctl: error while loading shared libraries: /oracle/app/oracle/product/11.1.0/db_1/lib/libclntsh.so.11.1: cannot restore segment prot after reloc: Permission denied
    执行下面两句
    1.semanage fcontext -a -t textrel_shlib_t /oracle/app/oracle/product/11.1.0/db_1/lib/libclntsh.so.11.1

    2.restorecon -R -v /oracle/app/oracle/product/11.1.0/db_1/lib/libclntsh.so.11.1
    如果在执行 startup时报
    ORA-01078: failure in processing system parameters
    LRM-00109: could not open parameter file '/oracle/app/oracle/product/11.1.0/db_1/dbs/initORCL.ora'
    解决方法:(来自http://bbs.chinaunix.net/thread-3605714-1-1.html)
    方法:

    $ORACLE_BASE/admin/(dbname) /pfile目录下的init.ora(.01200923383 文件复制到

    $ORACLE_HOME/dbs目录下即可

    [root@phoneDB pfile]# pwd
    /home/oracle/admin/phone/pfile
    [root@phoneDB pfile]# ls
    init.ora.010200882414
    [root@phoneDB pfile]# 
    [root@phoneDB dbs]# pwd
    /home/oracle/10.2.0/db_1/dbs
    [root@phoneDB dbs]# ls
    hc_phone.dat  init.ora               lkPHONE     spfilephone.ora
    initdw.ora    init.ora.010200882414  orapwphone

    #cp init.ora.010200882414  initORCL.ora'
    来源:http://www.ayio.net/32.html

    Oracle 其他用户可以登录,sys用户登录ORA-01031: insufficient privileges
    (http://blog.sina.com.cn/s/blog_6c1151890100opwt.html
    http://blog.sina.com.cn/s/blog_6c1151890100opwq.html
    )
    有同事反映,数据库使用 conn sys/oracle@xxxx as sysdba登录不上去,提示ORA-01031: insufficient privileges,而用户名密码都是完全正确的,不使用@xxx连接符conn / as sysdba登录正常。
    过程:首先判断当前系统采用的是操作系统认证,再使用system/manager@xxxx登录时没有问题,只有使用sysdba权限的用户登录才会报这种错误。接下来进行 grant sysdba to scott; 报错,ORA-01994: GRANT failed: password file missing or disabled。注意,问题就在这里,系统提示密码文件问题。查找$ORACLE_HOME/dbs下的orapwSID文件,发现存在。
    原因:orapwdorcl不正确,应该为orapwORCL,实例名应大写,安装时输入的实例名为小写造成。

  • 相关阅读:
    启动容器失败:endpoint with name cop already exists in network host.
    docker定时任务执行脚本报错:the input device is not a TTY
    期末总结
    云图学习
    豆瓣top250
    爬取学习
    爬取图片
    爬取学习bs4
    爬取学习 屠戮盗版天堂
    爬取学习
  • 原文地址:https://www.cnblogs.com/einyboy/p/2913971.html
Copyright © 2011-2022 走看看