• centos6.5_x86_64 下安装 Oracle11gR2 的详细过程


    参考手册:http://docs.oracle.com/cd/E11882_01/nav/portal_11.htm/Database Quick Installation Guide for Linux x86-64
    一,前期准备:
    1,环境说明:
         Linux:64位Centos release 6.5 (Final)
         Oracle:linux.x64_11gR2_database_1of2.zip  linux.x64_11gR2_database_2of2.zip
         方式:通过本地虚拟机给远程服务器安装oracle
     
    2, 在线安装Oracle需要的RPM支持包(选择x86_64的devel类型的安装包,如果没有联网,可以去ISO安装文件里面去找,注意不同的操作系统版本对应的安装包不一样,下面是基于RedHat5的安装要求,centos是基于RedHat的):
          1. binutils-2.17.50.0.6 
          2. compat-libstdc++-33-3.2.3   (33表示3.3版,296表示2.96版)  
          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. unixODBC-2.2.11             (官方文档里面没有写)
        24. unixODBC-devel-2.2.11 
        说明:安装之前可以先通过rpm -qa | grep binutils 来检查本机上已经安装的包,然后在安装未安装的包。这些包在系统安装文件ISO里面有。
     
    3,开始安装前我们首先要配置内核参数,保证Oracle的正常运行(Oracle启动需要较多的资源)。配置如下: 
         修改文件/etc/sysctl.conf,用vi /etc/sysctl.conf打开文件修改一下内容,有责略过,没有责添加。
         
      编辑完成后按Esc键,输入“:wq”存盘退出 各参数意义如下: 
         (1)shmmax:该参数定义了共享内存段的最大尺寸(以字节为单位),通常将其设置为2G或更大。 
         (2)shmmni:用于设置系统范围内共享内存段的最大数量。默认值是 4096 ,通常不需要更改。
         (3)shmall:该参数表示系统一次可以使用的共享内存总量(以页为单位)。缺省值就是2097152,如系统自动生成则不需要修改。 
         (4)sem:该参数表示设置的信号量,当oracle DB初始化参数文件中PROCESSES参数设置较大时,需要调整SEM设置如:kernel.sem =       250 32000 100 128各数据段含义如下。 SEMMSL SEMMNSSEMOPM SEMMNI 
    SEMMSL应该设置为服务器中各个实例中最大的PROCESSES参数+10,如当最大的PROCESSES参数为5000时,SEMMSL应设置为5010。 
    SEMMNS参数应设置为SEMMSL*SEMMNI,如例SEMMSL为5010,SEMMNS参数应为(5010*128)=641280。 SEMOPM参数应设置与SEMMSL参数相同,接上例此处应设置为5010 
         (5)file-max:该参数表示文件句柄的最大数量。文件句柄设置表示在linux系统中可以打开的文件数量。 
         (6)rmem_default — 默认的TCP/IP接收缓冲大小 
         (7)rmem_max — 最大的TCP/IP接收窗口的大小 
         (8)wmem_default — 默认的TCP/IP发送窗口大小 
         (9)wmem_max — 最大的TCP/IP发送窗口的大小
          
         要使 /etc/sysctl.conf 更改立即生效,执行以下命令: > sysctl  -p 
         可能出现如下错误:
         error: "net.bridge.bridge-nf-call-ip6tables" is an unknown key
         error: "net.bridge.bridge-nf-call-iptables" is an unknown key
         error: "net.bridge.bridge-nf-call-arptables" is an unknown key
         解决方法:
         >lsmod | grep bridge
         >modprobe  bridge
         >lsmod | grep bridge
         如果还有其他的出错,那就是配置文件输入时的拼写错误。
    4,修改用户的SHELL的限制,修改/etc/security/limits.conf文件 输入命令:vi /etc/security/limits.conf,按i键进入编辑模式,加入内容。                                        
         oracle   soft     nproc     4096                
         oracle   hard    nproc    16384 
         oracle   soft     nofile     4096 
         oracle   hard    nofile     65536
         oracle   soft     stack     10240
        编辑完成后按Esc键,输入“:wq”存盘退出.
    5,修改/etc/pam.d/login 文件,输入命令:vi  /etc/pam.d/login,按i键进入编辑模式,将下列内容加入该文件。 
          session   required    /lib64/security/pam_limits.so    
          session   required    pam_limits.so      
         备注:如果安装的Oracle是32为的,第一行就应该是  session   required    /lib/security/pam_limits.so,否则登录时会出现循环登录。
    6,编辑 /etc/profile ,输入命令:vi  /etc/profile,按i键进入编辑模式,加入下列内容。
        
    7,创建Oracle用户和安装目录。
         创建用户和用户组,输入命令: 
                 >groupadd  oinstall                                //创建Oracle Inventory 组
                 >groupadd  dba                                     //创建组群DBA 组
                 >useradd -g oinstall -G dba oracle         //创建Oracle软件拥有者(-g表示辅助组,-G表示主组)(还可以在后面接-d dir,表示用户的家目录的位置,默认普通用户的家目录在/home下)
                 >passwd oracle                                      //修改oracle用户的密码
         创建安装目录:
                 >mkdir -p  /home/oracle/app                        #基目录
                 >mkdir /home/oracle/app/oraInventory        #该目录就像Windows下的注册表文件,每当有软件安装,就会向里面写一些注册表
                 >mkdir /home/oracle/app/oracle                   #oracle数据库目录
                 >mkdir /home/oracle/app/oracle/product    #oracle实例目录
         更改目录属主为Oracle用户所有(防止安装过程中发生权限不够的问题),输入命令:
                 >chown -R oracle:oinstall  /home/oracle/app
                 >chmod -R 775  /home/oracle/app/
    8,配置oracle用户的环境变量,要在oracle用户下进行操作,输入:
         >su oracle
         >vi  /home/oracle/.bash_profile
         export  EDITOR=vi  
         export  ORACLE_SID=orcl         #实例名 
         export  ORACLE_BASE=/home/oracle/app 
         export  ORACLE_HOME=$ORACLE_BASE/oracle/product/11.2.0/dbhome_1 
         export  INVENTORY_LOCATION=/home/oracle/app/oraInventory 
         export  LD_LIBRARY_PATH=$ORACLE_HOME/lib:/usr/lib 
         export  NLS_LANG="American_america.zhs16gbk" 
         export  NLS_DATE_FORMAT='yyyy-mm-dd hh24:mi:ss' 
         export  PATH=$PATH:$HOME/bin:$ORACLE_HOME/bin:/bin:/usr/bin:/usr/sbin:/usr/local/bin 
         umask 022 
         export JAVA_HOME=/usr/lib/jvm/java-1.7.0-openjdk-1.7.0.65.x86_64 
         export JRE_HOME=$JAVA_HOME/jre 
         export CLASSPATH=.:$JAVA_HOME/lib:$JRE_HOME/lib:$CLASSPATH 
         export PATH=$JAVA_HOME/bin:$JRE_HOME/bin:$PATH
         export erase ^h     #用于消除换车键产生的乱码
         补充:如果我们的Linux是mini安装的,那么就没有JDK,我们需要安装它: yum install java-1.7.0-openjdk-devel.x86_64 -y
                   注意,安装的目录默认就是上面的JAVA_HOME,但是后面的版本数字可能会不一样,需要改动。
     
    二,安装Oracleuyn
    1,安装准备
         1)退出系统以Oracle用户登陆。 
         2)首先将Oracle软件安装包复制到linux系统中的一个目录下,确保Oracle用户对此目录有足够权限。 
         3)打开一个终端,运行unzip命令解压oracle软件安装包。
             
          解压完成后生成新目录database,进入解压后的database目录查看。
          
        
    2.1,开始安装(系统安装有图形化界面)
         [ oracle@localhost database ]$  ./runInstaller
         安装报错:
         
       
         这种错误有可能发生,也有可能不发生,主要是因为Oracle的安装需要可视化界面。
         解决:
          
         如果解决不了,退出登录,重新用Oracle用户登录,然后用Oracle用户执行startx开启图形化界面。
    2.2,开始安装(系统没有安装图形化界面或者是通过ssh远程安装oracle)
         在这种情况是不能直接安装,因为Oracle的安装需要图形化界面,可以通过Xmanager实现,添加配置如下:
        (1)安装Xmanager,打开Xmanager下的Xmanager - Passive,用户接收显示ssh传来的图形化界面。
        (2)重新编辑配置文件:vi  /home/oracle/.bash_profile,增加一行:
                export DISPLAY=192.168.178.1:0.0      #192.168.178.1是安装Xmanager物理主机的真实IP地址。后面的0.0应该是Xmanager的图形界面认证标识
                               
       (3)[ oracle@localhost database ]$  ./runInstaller
              
    3,安装过程
              
        
              
       选择常见一个数据库和配置一个数据库:
              
        创建一个桌面版数据库:
              
     
              
      
              
      
              
     
              
     
              
    (注意)安装快完成时,系统会提示你需要用root权限执行2个shell脚本。 按照其提示的路径 执 行/home/oracle/app/oracle/product/11.2.0/dbhome_1/root.sh  和 /home/oracle/ oraInventory/orainstRoot.sh,安装完成会有提示信息。 执行命令:①>cd  /home/oracle/app/oracle/product/11.2.0/dbhome_1     
                                                                                                >sh  root.sh         #当中有个敲回车的点
                                                                                             ② >cd /home/oracle/app/oraInventory 
                                                                                                >sh  orainstRoot.sh 
             
     
    close:
     
    三,启动执行Oracle
          1,执行>sqlplus / as sysdba
                      SQL>select TABLE_NAME from user_tables;
               报错:
            ORA-01034: ORACLE not available
            ORA-27101: shared memory realm does not existLinux-x86_64 
            Error: 2: No such file or directory
            Process ID: 0
            Session ID: 0    Serial number: 0
          
           这种问题可能会出现,也可能不会出现,一般是ORACLE_HOME 和ORACLE_SID环境变量的错误,也有可能是Oracle实例没有启动,刚好我两种都碰到了。首先我在ORACLE_HOME前面多加了个斜杠,注意最后面也不能有斜杠:
    >echo $ORACLE_HOME
    //home/oracle/app/oracle/product/11.2.0/dbhome_1
           >echo  $ORACLE_SID
           >orclps -ef | grep smon       
          执行>vi  /home/oracle/.bash_profile查看文件内容:
          
          如果仅仅是修改了上面的错误,还是会报出同样的错误,那是因为我们的oracle数据库实例没有启动,看下一步。
          2,修改后,重启Linux,启动Oracle实例
               >sqlplus / as sysdba   #注意第一次登陆必须要用管理员的身份登陆(无需密码),因为只有管理员才有启动实例的权限。
               >startup
               
               成功启动oracle。
          3,切换用户,操作数据库。 
     
    四,当你进入sqlplus后,发现无法使用上下键来翻出历史命令,我们可以使用第三方工具包解决该问题。
         (1)到官网下载rlwrap-0.42.tar.gz包;
         (2)上传到Linux,然后执行 tar -zxvf rlwrap-0.30.tar.gz 解压;
         (3)进入解压目录,编译配置文件 ./configure,此时可能会报出如下错误:
                 
                这是因为缺少readline相关包,执行yum list | grep readline 可以找到这些包,执行yum -y install readline*
         (4)如果报错,解决后,重新编译直到无误,然后编译安装软件make ; make install;
         (5)编辑Oracle用户配置文件:vi /home/oracle/.bash_profile,添加如下两行:
                        alias sqlplus=‘rlwrap sqlplus'
                        alias rman='rlwrap rman'
                 OK,这样就可以像Windows下一样通过上下翻动调出sqlplus的历史命令了。
     
    至此安装完毕!
     
  • 相关阅读:
    Win10系统的开机启动项如何去关闭?
    如何对Win10电脑文件夹选项进行设置?
    DNS缓存失败怎么解决?
    如何关闭Win10系统的时间轴功能?
    怎么处理Win7电脑打开软件速度慢的情况?
    Win10带有网络连接的安全模式怎么开启?
    如何解决Win10电脑网速慢的问题?
    【Beta】Scrum Meeting 5
    【Beta】Scrum Meeting 4
    【Beta】Scrum Meeting 3
  • 原文地址:https://www.cnblogs.com/pengineer/p/4351370.html
Copyright © 2020-2023  润新知