暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

梦开始的地方 | 部署Oracle 11g单实例详细步骤

DBA的辛酸事儿 2021-04-07
1359
本文来自一位网友的投稿,该网友初入职场,带着对未来的憧憬,踏上梦想的征程;从他的身上,我看到了曾今的自己;不悔梦归处,只恨太匆匆!本文主要内容是关于Oracle 11g数据库的安装的详细步骤,供大家参考学习;

  1.简介

Oracle Database,又名Oracle RDBMS,或简称Oracle。是甲骨文公司的一款关系数据库管理系统。它是在数据库领域一直处于领先地位的产品。可以说Oracle数据库系统是目前世界上流行的关系数据库管理系统,系统可移植性好、使用方便、功能强,适用于各类大、中、小微机环境。它是一种高效率的、可靠性好的、适应高吞吐量的数据库方案。

  2.下载

Oracle11g下载

  3.版本

本次安装使用的系统版本:CentOS Linux release 7.6,oracle版本:11.2.0.4.0

4.安装前检查准备

4.1搭建yum 仓库

    df -h
    mount /dev/cdrom mnt
    cd /etc/yum.repos.d/
    mkdir bak

    先将其他的yum的repo源,使用本地镜像源,备份到bak目录中

      mv * bak/

      vi local.repo
      [centos]
      name=centos
      baseurl=file:///mnt
      gpgcheck=0
      enable=1

      4.2关闭防火墙

        systemctl stop firewalld

        4.3安装数据库软件所需要的包

          yum install binutils* -y
          yum install compat* -y
          yum install elfutils* -y
          yum install gcc* -y
          yum install glibc* -y
          yum install kernel* -y
          yum install ksh* -y
          yum install libaio* -y
          yum install libgcc* -y
          yum install libgomp* -y
          yum install libstdc* -y
          yum install make* -y
          yum install sysstat* -y
          yum install unzip -y
          yum install smartmontools -y
          yum -y install xdpyinfo
          yum install openssh-clients -y


          4.4添加主机名

            vi etc/hosts
            添加
            192.168.19.10 lnode #主机名

            4.5修改内核参数

              vi /etc/sysctl.conf
              添加
              fs.aio-max-nr = 1048576
              fs.file-max = 6815744
              kernel.shmall = 2097152
              kernel.shmmax = 4294967295
              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

              修改后让内核参数生效
              sysctl -p

              4.6资源限制

                vi /etc/security/limits.conf
                添加
                oracle soft nproc 2047
                oracle hard nproc 16384
                oracle soft nofile 1024
                oracle hard nofile 65536
                oracle soft stack 10240

                4.7创建dba,oinstall组和oracle用户

                  groupadd dba
                  groupadd oinstall
                  useradd -g oinstall -G dba oracle

                  设置密码

                    passwd oracle


                    4.8创建安装目录和授权

                      mkdir -p u01/app/oracle
                      chown -R oracle:oinstall u01

                      4.9添加oracle环境变量

                        su - oracle
                        vi .bash_profile
                        添加
                        export ORACLE_SID=orcl
                        export ORACLE_BASE=/u01/app/oracle
                        export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/db_1
                        export PATH=$PATH:$ORACLE_HOME/bin
                        export ORACLE_TERM=xterm
                        export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$ORACLE_HOME/lib
                        export CLASSPATH=$ORACLE_HOME/JRE:ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib

                        保存,并使参数生效
                        source .bash_profile

                        4.10使用ftp工具将oracle软件上传到虚拟机/tmp上

                          [root@node tmp]# cd tmp/
                          [root@node tmp]# ll p13390677_112040_Linux-x86-64_*
                          -rw-r--r--. 1 root root 1395582860 Aug 14 2019 p13390677_112040_Linux-x86-64_1of7.zip
                          -rw-r--r--. 1 root root 1151304589 Aug 14 2019 p13390677_112040_Linux-x86-64_2of7.zip

                          授权为oracle
                          chown -R oracle:oinstall p13390677_112040_Linux-x86-64_*

                          4.11切换到oracle用户

                            su - oracle
                            cd /tmp
                            分别解压
                            unzip p13390677_112040_Linux-x86-64_1of7.zip
                            unzip p13390677_112040_Linux-x86-64_2of7.zip

                            解压完成后得到database

                              drwxr-xr-x. 7 oracle oinstall        136 Aug 27  2013 database

                              4.12解压完毕后使用root安装一个rpm包

                                su - root
                                cd /tmp/database/rpm/
                                rpm -ivh cvuqdisk-1.0.9-1.rpm

                                4.13到此准备完毕,开始安装软件

                                使用Xmanager 软件连接虚拟机

                                  [oracle@node database]$ ./runInstaller


                                  选择:是

                                  去掉我希望通过我的Oracle支持获得安全更新。

                                  选择:next

                                  选择:yes

                                  选择:跳过软件安装,在next

                                  选择:只安装数据库软件,在next

                                  选择:安装单实例数据库,在next

                                  确定是English,在选择next


                                  选择:企业版,在next

                                  确定oracle base目录 software location目录,这两个目录是在环境变量中设置的(注意权限,否则报错)

                                  确定后选择next

                                  确定软件安装目录以及归属,默认即可

                                  选择:next

                                  确定database adminstrastor group 为dba,database operator group为可选项

                                  选择:next

                                  等待进度条


                                  发现有三个告警,一个swap大小,两个包没有安装安装上

                                  Swap大小只要有剩余没问题,一般生产上都是足够的,需要修改,所以忽略。

                                  compat-libstdc-33-3.2.3-72.el7.x86_64和pdksh-5.2.14;

                                  compat-libstdc-33-3.2.3-72.el7.x86_64在centos源中没有,便从别的源中下载下来了,为了在以后oracle不会出错,建议最好安装上

                                  需要的可以在下面的百度网盘下载

                                  链接:https://pan.baidu.com/s/1Y5RZR1fGVBPPCKlQro8q0Q

                                  提取码:1234

                                  下载后上传,使用root安装

                                  [root@node tmp]# rpm -ivh compat-libstdc-33-3.2.3-72.el7.x86_64.rpm

                                  pdksh-5.2.14的是oracle建议在oracle定制机上安装,我这里的不是,所以会报这个告警,可以忽略。

                                  在安装compat-libstdc-33-3.2.3-72.el7.x86_64.rpm后,在次检查

                                  现没有缺少compat-libstdc-33-3.2.3-72.el7.x86_64.rpm

                                  选择:忽略全部,在next

                                  选择:yes

                                  选择:install

                                  等待

                                  当进度条达到86%时报错

                                  这个原因是系统版本和oracle版本造成,在centos6不会报这错。

                                  官方的解释说是先继续安装,然后再打补丁,这个bug19692824是在创建数据库的时候引发的。如果你在安装数据库软件的时候就报错。

                                  建议使用下面的解决方法使用oracle用户。

                                  修改$ORACLE_HOME/sysman/lib/ins_emagent.mk,将 $(MK_EMAGENT_NMECTL)修改为:

                                  $(MK_EMAGENT_NMECTL) -lnnz11

                                  建议修改前备份原始文件

                                  cd $ORACLE_HOME/sysman/lib

                                  cp ins_emagent.mk ins_emagent.mk.bak

                                  vi ins_emagent.mk

                                  进入vi编辑器后命令模式输入/NMECTL 进行查找,快速定位要修改的行在后面

                                  追加参数-lnnz11 第一个是字母l 后面两个是数字

                                  #===========================

                                  $(SYSMANBIN)emdctl:

                                  $(MK_EMAGENT_NMECTL) -lnnz11

                                  #===========================

                                  修改完成后

                                  到最后弹出要使用root运行

                                    /u01/app/oraInventory/orainstRoot.sh
                                    /u01/app/oracle/product/11.2.0/db_1/root.sh

                                    这两个脚本

                                      [root@node ~]# /u01/app/oraInventory/orainstRoot.sh
                                      Changing permissions of /u01/app/oraInventory.
                                      Adding read,write permissions for group.
                                      Removing read,write,execute permissions for world.

                                      Changing groupname of /u01/app/oraInventory to oinstall.
                                      The execution of the script is complete.

                                      [root@node ~]# /u01/app/oracle/product/11.2.0/db_1/root.sh
                                      Performing root user operation for Oracle 11g

                                      The following environment variables are set as:
                                      ORACLE_OWNER= oracle
                                      ORACLE_HOME= /u01/app/oracle/product/11.2.0/db_1

                                      Enter the full pathname of the local bin directory: [/usr/local/bin]: <strong>此处回车</strong>
                                      Copying dbhome to /usr/local/bin ...
                                      Copying oraenv to /usr/local/bin ...
                                      Copying coraenv to /usr/local/bin ...


                                      Creating /etc/oratab file...
                                      Entries will be added to the /etc/oratab file as needed by
                                      Database Configuration Assistant when a database is created
                                      Finished running generic part of root script.
                                      Now product-specific root actions will be performed.
                                      Finished product-specific root actions.

                                      运行完成回来,选择ok

                                      至此软件安装完成,选择关闭

                                      5.下面开始安装实例

                                      [oracle@node database]$ dbca

                                      选择:next

                                      选择:创建数据库,在next

                                      一般用途或事务处理,在next

                                      入global database name和sid,在选择next

                                      去掉企业管理器

                                      去掉自动维护,在选择next

                                      一般在生产上都有自己的管理和维护方式

                                      设置管理员密码可以先简单设置,安装后在按照公司需求修改,在选择next

                                      选择:yes

                                      选择:使用oracle管理文件,再next

                                      默认即可,有需求另外定制

                                      选择:next

                                      选择:next

                                      (SGA and PGA)内存大小根据业务量设计

                                      块大小和进程数也是根据需求设计

                                      字符集也是根据需求,一般为utf-8

                                      连接模式默认

                                      处设置数据文件,redo log文件,日志成员数最大数,也是根据需求设置,后期可以修改。

                                      此处设置redo log文件的大小,和添加个删除,后期可以修改。

                                      选择:next

                                      选择:完成

                                      选择ok

                                      等待完成即可

                                      选择exit

                                      至此完成实例安装

                                      6.检查

                                        [oracle@node ~]$ sqlplus / as sysdba

                                        SQL*Plus: Release 11.2.0.4.0 Production on Tue Mar 9 21:06:23 2021

                                        Copyright (c) 1982, 2013, Oracle. All rights reserved.

                                        Connected to:
                                        Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Production
                                        With the Partitioning, OLAP, Data Mining and Real Application Testing options

                                        SQL> select status from v$instance;

                                        STATUS
                                        ------------
                                        OPEN

                                        7.配置监听

                                        选择:监听配置,在next

                                        选择:添加,在next

                                        默认LISTENR,在选择next

                                        选择:next

                                        使用默认端口1521

                                        选择:next

                                        有需求就另外配另一个

                                        选择:next

                                        选择:next

                                        选择完成

                                        8.使用PL/SQL工具连接测试

                                        连接成功


                                        欢迎关注公众号

                                        文章转载自DBA的辛酸事儿,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

                                        评论