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

CentOS 7部署Oracle 19c数据库

二进制之城 2022-05-22
1737


一、添加用户

添加oracle用户并设置用户密码。

    adduser oracle
    passwd oracle

    添加oinstalldba组。

      groupadd oinstall
      groupadd dba


      设置oracle用户的主组为oinstall附加组为dba

        usermod -g oinstall -G dba oracle


        二、新建目录并设置权限

        新建u01目录。

          mkdir u01

          打开/etc/fstab文件,添加以下内容:

            /dev/sdb1 u01 xfs defaults 0 0

            重启或执行以下命令,将sdb1分区挂载到u01目录。

              mount -a

              新建oracleoraInventory目录。

                mkdir -p u01/app/oracle
                mkdir -p u01/app/oraInventory

                分别将它们指定为dbaoinstall组。

                  chown -R oracle:dba u01/app/oracle
                  chown -R oracle:oinstall u01/app/oraInventory


                  三、配置环境变量

                  打开/home/oracle/.bash_profile文件,配置环境变量。

                    export ORACLE_BASE=/u01/app/oracle
                    export ORACLE_HOME=/u01/app/oracle/product/19.3/dbhome_1
                    export PATH=$PATH:$ORACLE_HOME/bin
                    export ORACLE_SID=orcl


                    四、安装Oracle Database 19c

                    https://www.oracle.com/database/technologies/oracle-database-software-downloads.html选择Linux x86-64(https://download.oracle.com/otn/linux/oracle19c/190000/LINUX.X64_193000_db_home.zip)用迅雷下载Oracle Database 19c,使用WinSCP(https://winscp.net/eng/index.php)上传到Linux。新建dbhome_1目录并解压LINUX.X64_193000_db_home.zip

                      mkdir -p u01/app/oracle/product/19.3/dbhome_1
                      unzip LINUX.X64_193000_db_home.zip -d u01/app/oracle/product/19.3/dbhome_1

                      指定所有者和组。

                        chown -R oracle:dba u01/app/oracle

                        使用oracle用户登录CentOS 7图形界面,打开终端执行以下命令运行runInstaller安装脚本。

                          /u01/app/oracle/product/19.3/dbhome_1/runInstaller

                          然后在弹出的安装界面参考以下步骤安装:

                          1.配置选项,选择“仅设置软件”;

                            配置选项

                          2.数据库安装选项;

                          数据库安装选项

                          3.数据库版本;

                          数据库版本

                          4.安装位置;

                          安装位置

                          5.创建产品清单;

                          创建产品清单

                          6.操作系统组,数据库操作员组选择“dba”;

                          操作系统组

                          7.Root 脚本执行,勾选“自动运行配置脚本”,使用“root”用户身份证明并输入口令;

                          Root 脚本执行

                          8.先决条件检查,修补并再次检查,对于不可修复的需要手动修复后重新检查;

                          先决条件检查

                          9.概要;

                          概要

                          10.安装产品,点击“是”继续;

                          安装产品

                          11.完成。

                          完成


                          五、监听程序与本地 Net 服务名配置

                          执行以下命令配置监听程序与本地Net服务名:

                            netca


                            六、创建数据库

                            执行以下命令创建数据库:

                              dbca


                              七、设置开机自启动

                              打开/etc/oratab文件,将orcl:/u01/app/oracle/product/19.3/dbhome_1:N修改为orcl:/u01/app/oracle/product/19.3/dbhome_1:Y。然后再打开/etc/rc.d/rc.local文件,添加以下内容:

                                su oracle -lc "/u01/app/oracle/product/19.3/dbhome_1/bin/lsnrctl start"
                                su oracle -lc "/u01/app/oracle/product/19.3/dbhome_1/bin/dbstart"


                                执行以下命令使rc.local文件具有可执行权限:

                                  chmod +x etc/rc.d/rc.local


                                  八、开放端口

                                  执行以下命令开放1521端口:

                                    firewall-cmd --zone=public --add-port=1521/tcp --permanent

                                    重新加载firewalld,使规则立即生效。

                                      firewall-cmd --reload


                                      九、问题及解决方法

                                      以下是安装时先决条件检查失败及未设置开机自启动会遇到的问题,对于ORA-12541、ORA-12514和ORA-01034问题,其实设置开机自启动后就可以不用理会了,写出来主要是一些时候方便参考。
                                      先决条件检查失败

                                      • 操作系统内核参数shmmax
                                        要确定共享内存段的最大大小,请运行:

                                        cat /proc/sys/kernel/shmmax

                                        shmmax可以在/proc/sys/kernel/shmmax文件或执行以下命令(4x1024x1024x1024=4G)更改而无需重新启动。

                                          sysctl -w kernel.shmmax = 4294967296

                                          要使更改永久生效,请将以下内容添加到/etc/sysctl.conf文件并重新启动。

                                            kernel.shmmax = 4294967296
                                            • 交换空间大小

                                            在分区时,如果合理分配交换分区就不会存在这个问题了,不过也可以通过添加交换文件的方式来增加交换空间大小。首先要生成2G的swapfile文件:

                                              dd if=/dev/zero of=swapfile bs=1M count=2048

                                              swapfile文件格式化为交换文件。

                                                mkswap swapfile

                                                启用交换文件。

                                                  swapon swapfile

                                                  /etc/fstab文件添加以下内容,以便在重新启动时启用。

                                                    /swapfile swap swap defaults 0 0
                                                    • 程序包

                                                    使用yum安装依赖的程序包。

                                                    ORA-12541: TNS:no listener

                                                    ORA-12541: TNS:no listener

                                                    执行以下命令,启动监听。

                                                      lsnrctl start

                                                      ORA-12514: TNS:listener does not currently know of service requested in connect descriptor

                                                      ORA-12514: TNS:listener does not currently know of service requested in connect descriptor

                                                      打开/u01/app/oracle/product/19.3/dbhome_1/network/admin/listener.ora文件,添加以下内容:

                                                        SID_LIST_LISTENER =
                                                        (SID_LIST =
                                                        (SID_DESC =
                                                        (ORACLE_HOME = /u01/app/oracle/product/19.3/dbhome_1)
                                                        (SID_NAME = orcl)
                                                        )
                                                        )


                                                        ORA-01034: ORACLE not available

                                                        ORA-01034: ORACLE not available

                                                        打开SQL Plus,使用sys用户强制关闭,再启动数据库。

                                                          sqlplus /nolog
                                                          conn sys/sys as sysdba
                                                          shutdown abort
                                                          startup
                                                          文章转载自二进制之城,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

                                                          评论