CentOS系统上安装配置Oracle数据库的详细教程

CentOS系统上安装配置Oracle数据库的详细教程


1. 前置条件

  • CentOS系统(本教程基于CentOS 7)
  • Oracle数据库zip安装文件(下载地址: https://www.oracle.com/database/technologies/oracle-database-software-downloads.html)
  • 配置好的YUM源

2. 安装依赖包

在安装Oracle数据库之前,需要先安装一些系统依赖包。

sudo yum install -y binutils \
compat-libcap1 \
compat-libstdc++-33 \
compat-libstdc++-33.i686 \
gcc \
gcc-c++ \
glibc \
glibc.i686 \
glibc-devel \
glibc-devel.i686 \
ksh \
libaio \
libaio.i686 \
libgcc \
libgcc.i686 \
libstdc++ \
libstdc++.i686 \
libstdc++-devel \
make \
sysstat \
unixODBC \
unixODBC-devel

3. 安装配置Oracle数据库

  1. 解压Oracle数据库zip包

unzip /path/to/oracle/database.zip -d /path/to/destination/

  1. 创建安装响应文件db_install.rsp

```
[oracle@hostname ~]$ vi ~/db_install.rsp

oracle.install.responseFileVersion=/oracle/install/rspfmt_dbinstall_response_schema_v19.0.0
ORACLE_HOSTNAME={hostname}
ORACLE_UNQNAME={oracle_sid}
INVENTORY_LOCATION=/u01/app/oraInventory
SELECTED_LANGUAGES=en
ORACLE_HOME=/u01/app/oracle/product/19.3.0/dbhome_1
ORACLE_BASE=/u01/app/oracle
oracle.install.db.InstallEdition=EE
oracle.install.db.OSDBA_GROUP=dba
oracle.install.db.OSOPER_GROUP=oper
oracle.install.db.OSBACKUPDBA_GROUP=backupdba
oracle.install.db.OSDGDBA_GROUP=dgdba
oracle.install.db.OSKMDBA_GROUP=kmdba
oracle.install.db.OSRACDBA_GROUP=racdba
SECURITY_UPDATES_VIA_MYORACLESUPPORT=false
DECLINE_SECURITY_UPDATES=true
oracle.installer.autoupdates.option=SKIP_UPDATES

```

其中,{hostname}和{oracle_sid}需要分别替换为主机名和Oracle的SID。

  1. 运行安装文件

[oracle@hostname ~]$ /path/to/destination/database/runInstaller -silent -showProgress -ignoreSysPrereqs -responseFile ~/db_install.rsp

  1. 执行Oracle数据库配置脚本

[oracle@hostname ~]$ /u01/app/oraInventory/orainstRoot.sh
[oracle@hostname ~]$ /u01/app/oracle/product/19.3.0/dbhome_1/root.sh

4. 验证Oracle数据库安装

  1. 切换到Oracle用户

[oracle@hostname ~]$ su - oracle

  1. 启动Oracle

[oracle@hostname ~]$ sqlplus / as sysdba
SQL> startup

  1. 连接Oracle数据库

[oracle@hostname ~]$ sqlplus / as sysdba

  1. 查看Oracle版本

SQL> select * from v$version;

示例输出:

```
BANNER CON_ID


Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production 0
Version 19.3.0.0.0
```

说明Oracle数据库已成功安装并启动。

5. 配置Oracle数据库实例

在Oracle数据库中,实例是指由SGA和后台进程组成的一组内存结构和进程。通常需要为不同的应用程序配置不同的实例。

  1. 创建pfile

SQL> create pfile='/u01/app/oracle/product/19.3.0/dbhome_1/dbs/init{oracle_sid}.ora' from spfile;

  1. 编辑pfile

[oracle@hostname ~]$ vi /u01/app/oracle/product/19.3.0/dbhome_1/dbs/init{oracle_sid}.ora

修改以下参数:

db_name={oracle_sid}
db_domain={domain_name}
memory_target={memory_target}
sga_target={sga_target}
pga_aggregate_target={pga_target}
db_create_file_dest={datafile_dest}
db_recovery_file_dest={flash_recovery_dest}
db_recovery_file_dest_size={flash_recovery_dest_size}

  1. 启动实例

SQL> startup pfile='/u01/app/oracle/product/19.3.0/dbhome_1/dbs/init{oracle_sid}.ora';

  1. 查看实例状态

SQL> select instance_name,status from v$instance;

示例输出

```
INSTANCE_NAME STATUS


{oracle_sid} OPEN
```

说明实例已成功启动。

6. 配置Oracle数据库监听

Oracle数据库监听是监听来自网络上客户端连接请求的进程。客户端通过监听可以访问Oracle数据库实例。

  1. 编辑监听文件listener.ora

[oracle@hostname ~]$ vi /u01/app/oracle/product/19.3.0/dbhome_1/network/admin/listener.ora

添加以下内容:

LISTENER={oracle_sid}_listener
(
DESCRIPTION=
(
ADDRESS=(PROTOCOL=tcp)(HOST={ip})(PORT={port})
)
)

其中,{oracle_sid}需要替换为Oracle的SID,{ip}需要替换为主机的IP地址,{port}需要替换为监听的端口号。

  1. 编辑tnsnames.ora

[oracle@hostname ~]$ vi /u01/app/oracle/product/19.3.0/dbhome_1/network/admin/tnsnames.ora

添加以下内容:

{oracle_sid} =
(
DESCRIPTION=
(
ADDRESS=(PROTOCOL=tcp)(HOST={ip})(PORT={port})
)
(
CONNECT_DATA=
(
SERVICE_NAME={oracle_sid}
)
)
)

  1. 启动监听

[oracle@hostname ~]$ lsnrctl start {oracle_sid}_listener

示例输出:

```
LSNRCTL for Linux: Version 19.0.0.0.0 - Production on 01-JUN-2022 15:59:47
Copyright (c) 1991, 2019, Oracle. All rights reserved.
Starting /u01/app/oracle/product/19.3.0/dbhome_1/bin/tnslsnr: please wait...

TNSLSNR for Linux: Version 19.0.0.0.0 - Production
System parameter file is /u01/app/oracle/product/19.3.0/dbhome_1/network/admin/listener.ora
Log messages written to /u01/app/oracle/product/19.3.0/diag/tnslsnr/hostname/{oracle_sid}_listener/alert/log.xml
Listening on: (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST={ip})(PORT={port})))
Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST={ip})(PORT={port})))
STATUS of the LISTENER


Alias {oracle_sid}_listener
Version TNSLSNR for Linux: Version 19.0.0.0.0 - Production
Start Date 01-JUN-2022 15:59:47
Uptime 0 days 0 hr. 0 min. 0 sec
Trace Level off
Security ON: Local OS Authentication
SNMP OFF
Default Service {oracle_sid}
Listener Parameter File /u01/app/oracle/product/19.3.0/dbhome_1/network/admin/listener.ora
Listener Log File /u01/app/oracle/product/19.3.0/diag/tnslsnr/hostname/{oracle_sid}_listener/alert/log.xml
Listening Endpoints Summary...
(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST={ip})(PORT={port})))
The listener supports no services
The command completed successfully
```

  1. 验证监听是否正常

[oracle@hostname ~]$ lsnrctl status {oracle_sid}_listener

示例输出:

```
LSNRCTL for Linux: Version 19.0.0.0.0 - Production on 01-JUN-2022 16:13:09
Copyright (c) 1991, 2019, Oracle. All rights reserved.
Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC1)))
STATUS of the LISTENER


Alias {oracle_sid}_listener
Version TNSLSNR for Linux: Version 19.0.0.0.0 - Production
Start Date 01-JUN-2022 15:59:47
Uptime 0 days 0 hr. 13 min. 21 sec
Trace Level off
Security ON: Local OS Authentication
SNMP OFF
Listener Parameter File /u01/app/oracle/product/19.3.0/dbhome_1/network/admin/listener.ora
Listener Log File /u01/app/oracle/product/19.3.0/diag/tnslsnr/hostname/{oracle_sid}_listener/alert/log.xml
Listening Endpoints Summary...
(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST={ip})(PORT={port})))
The listener supports no services
The command completed successfully
```

说明监听已成功启动。

示例说明:

示例一: 安装Oracle数据库

小明需要在自己的CentOS7服务器上安装Oracle 19c数据库,并启动实例和监听,以便为自己的应用程序提供数据库服务。

他首先在Oracle官网下载了19c数据库zip安装文件,并解压到/u01/oracle/database目录下。

然后,他按照教程中的指导,依次安装了系统依赖包,创建了安装响应文件db_install.rsp,并运行安装文件,并执行了Oracle数据库配置脚本。

接下来,小明切换到Oracle用户,启动了Oracle数据库,并连接了Oracle数据库实例,并查看了Oracle版本。

最后,他为自己的应用程序配置了一个实例,并配置了监听。

示例二:验证Oracle数据库安装

小红在服务器上安装了Oracle数据库,并按照教程中的步骤启动了实例和监听。

为了验证数据库是否已经成功安装并启动,她使用sqlplus连接到了数据库实例,并查询了数据库版本信息,证明数据库已经成功安装并启动。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:CentOS系统上安装配置Oracle数据库的详细教程 - Python技术站

(0)
上一篇 2023年5月22日
下一篇 2023年5月22日

相关文章

  • MySQL根据某一个或者多个字段查找重复数据的sql语句

    下面是MySQL根据某一个或多个字段查找重复数据的sql语句攻略: 方式一:使用GROUP BY和HAVING语句 第一步:使用GROUP BY语句根据某一个或多个字段进行分组 在查找重复数据时,第一步是需要用到GROUP BY语句进行分组。例如,我们有一个user表,其中包含id、name、email三个字段,现在我们要根据email字段查找重复数据,可以…

    database 2023年5月22日
    00
  • MySQL GTID全面总结

    MySQL GTID全面总结 什么是GTID? GTID(Global Transaction ID)是MySQL为分布式事务提供的统一标识符。每个事务在执行时,都会被分配一个全局唯一的GTID。GTID由source_id和transaction_id两部分组成,其中source_id表示MySQL实例的唯一标识符,transaction_id表示该实例中…

    database 2023年5月21日
    00
  • 直接拷贝数据文件实现Oracle数据迁移

    要实现Oracle数据的迁移,可以采用直接拷贝数据文件的方式。以下是具体的步骤: 1.备份源数据库在迁移前,务必先备份源数据库以防止不必要的风险和数据丢失。 2.停止源数据库的服务在数据迁移时,需要停止源数据库的服务。 3.复制数据文件在停止源数据库服务之后,将数据文件复制到目标服务器的相应位置。Oracle数据库的数据文件一般存储在ORACLE_HOME/…

    database 2023年5月22日
    00
  • CentOS 7.0编译安装lnmp教程(Nginx1.6.0+MySQL5.6.19+PHP5.5.14)

    CentOS 7.0编译安装lnmp教程(Nginx1.6.0+MySQL5.6.19+PHP5.5.14) 简介 本文旨在介绍如何在CentOS 7.0系统下编译安装lnmp,其中包括Nginx1.6.0、MySQL5.6.19和PHP5.5.14三个组件的安装过程。 准备工作 在开始之前,需要准备以下工作: 一台运行CentOS 7.0的服务器 管理员权…

    database 2023年5月22日
    00
  • CentOS 8.2部署CouchDB 3.3数据库的方法

    下面我将为您详细介绍“CentOS 8.2部署CouchDB 3.3数据库的方法”的完整攻略。 准备工作 在部署CouchDB 3.3之前,我们需要先进行一些准备工作,以下是准备工作的步骤。 安装依赖 在安装CouchDB之前,我们需要先安装一些依赖,可以使用以下命令在CentOS 8.2系统上安装依赖。 sudo dnf install epel-rele…

    database 2023年5月22日
    00
  • 解决mysql数据库设置远程连接权限执行grant all privileges on *.* to ‘root’@’%’ identified by ‘密码’ with grant optio报错

    这个问题可能是由于MySQL数据库服务器没有设置允许来自远程主机的连接,或者没有正确设置用户名和密码所致。为了解决这个问题,我们可以采取以下步骤: 修改MySQL数据库配置文件 首先需要修改MySQL数据库的配置文件 my.cnf,打开终端并输入以下命令查看文件是否存在: $ sudo ls -ahl /etc/mysql/my.cnf 如果文件不存在,可以…

    database 2023年5月18日
    00
  • redis在Windows中下载及安装、设置教程

    Redis在Windows中下载及安装、设置教程 下载Redis 在Windows系统下,我们可以从Redis官网下载Redis for windows版本,下载地址为:https://github.com/microsoftarchive/redis/releases 选择最新版本,下载后解压到我们所需的目录即可。 安装Redis 下载完成后,双击进入解压…

    database 2023年5月22日
    00
  • redis问题:redis-server.exe双击闪退 win10系统

         遇到这种情况 一、打开dos命令窗,进入到 redis 文件目录下,在i命令窗口中输入:redis-server.exe redis.windows.conf 若出现 [113352] 25 Mar 21:54:30.394 # QForkMasterInit: system error caught. error code=0x000005af,…

    Redis 2023年4月13日
    00
合作推广
合作推广
分享本页
返回顶部