Oracle 数据库安装和配置详解

ops/2024/10/20 5:37:24/

Oracle 数据库安装和配置详解

Oracle 数据库是一款功能强大、广泛使用的企业级关系数据库管理系统 (RDBMS),适用于处理大型数据库和复杂事务。本文将介绍如何在 Linux 和 Windows 环境下安装 Oracle 数据库,并对其进行基本配置,帮助开发者快速部署和使用该数据库。

目录:
  1. 安装前的准备
  2. 在 Linux 上安装 Oracle 数据库
  3. 在 Windows 上安装 Oracle 数据库
  4. Oracle 数据库的基本配置
  5. 使用 SQL*Plus 连接 Oracle 数据库
  6. 备份与恢复策略
  7. 性能调优建议

在这里插入图片描述

1. 安装前的准备

安装 Oracle 数据库之前,您需要确保系统满足基本的硬件和软件要求。以下是安装前需要检查的几点:

硬件要求:
  • 至少 4GB 的内存(建议 8GB 以上)
  • 至少 10GB 的可用磁盘空间
  • 推荐的 CPU 处理器速度
软件要求:
  • Linux 环境:确保安装了必备的库,如 glibclibaio 等。支持的 Linux 版本包括 Oracle Linux、Red Hat Enterprise Linux (RHEL)、CentOS、SUSE 等。
  • Windows 环境:确保 Windows 版本为 64 位操作系统,支持 Windows Server 和 Windows 10/11。
下载 Oracle 数据库:

您可以从 Oracle 官方网站下载所需的数据库安装包。常见的版本包括 Oracle Database 19c 和 Oracle Database 21c。

官方网站下载地址:https://www.oracle.com/database/technologies/


在这里插入图片描述

2. 在 Linux 上安装 Oracle 数据库

以下是在 Oracle Linux 7 或 CentOS 7 上安装 Oracle 19c 数据库的步骤。

1. 更新系统并安装必备软件包:
sudo yum update -y
sudo yum install -y bc binutils compat-libcap1 gcc gcc-c++ glibc glibc-devel ksh libaio libaio-devel libXrender libXrender-devel libX11 libXau libXi libXtst libXext make sysstat
2. 创建 Oracle 用户和组:
sudo groupadd oinstall
sudo groupadd dba
sudo useradd -g oinstall -G dba oracle
passwd oracle
3. 创建 Oracle 安装目录:
sudo mkdir -p /u01/app/oracle
sudo chown -R oracle:oinstall /u01/app/oracle
sudo chmod -R 775 /u01/app/oracle
4. 设置内核参数:

编辑 /etc/sysctl.conf,添加以下内容:

fs.aio-max-nr = 1048576
fs.file-max = 6815744
kernel.shmall = 2097152
kernel.shmmax = 8589934592
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

执行以下命令应用更改:

sudo sysctl -p
5. 安装 Oracle 数据库:

解压下载的安装文件,并运行安装程序:

unzip LINUX.X64_193000_db_home.zip -d /u01/app/oracle/
cd /u01/app/oracle
./runInstaller

按照安装向导的提示,选择安装类型和配置选项。完成后,使用 root 用户运行提示的脚本来完成安装。

6. 启动 Oracle 数据库:
su - oracle
sqlplus / as sysdba
startup

在这里插入图片描述

3. 在 Windows 上安装 Oracle 数据库

1. 下载并解压安装包:

从 Oracle 官网下载适用于 Windows 平台的 Oracle Database 19c ZIP 文件。将文件解压缩到一个目录,例如 C:\oracle\.

2. 启动安装程序:

双击解压目录中的 setup.exe,启动安装程序。按照安装向导的步骤进行配置:

  • 选择“创建并配置单实例数据库”
  • 指定 Oracle 基础目录和数据库文件位置
  • 设置数据库管理员密码
3. 完成安装:

安装完成后,Oracle Database 会自动启动,并为您配置基本的数据库服务。


4. Oracle 数据库的基本配置

修改 Oracle 参数文件(init.ora 或 spfile):

Oracle 数据库的配置可以通过 init.ora 或二进制的 spfile 文件进行修改。这些文件包含数据库的启动参数,如内存分配、日志大小等。

示例:调整 SGA 和 PGA 的大小:

alter system set sga_target=2G scope=spfile;
alter system set pga_aggregate_target=1G scope=spfile;
设置监听服务:

监听器负责处理客户端连接请求。使用以下命令启动监听服务:

lsnrctl start

要查看监听状态,使用命令:

lsnrctl status
创建表空间和用户:

在数据库中创建用户和表空间:

CREATE TABLESPACE users DATAFILE '/u01/app/oracle/oradata/orcl/users01.dbf' SIZE 100M;
CREATE USER test IDENTIFIED BY testpassword DEFAULT TABLESPACE users;
GRANT CONNECT, RESOURCE TO test;

在这里插入图片描述

5. 使用 SQL*Plus 连接 Oracle 数据库

SQL*Plus 是 Oracle 提供的命令行工具,用于连接和管理数据库。

连接到数据库:
sqlplus test/testpassword@localhost:1521/orcl
  • test 是用户名
  • testpassword 是密码
  • localhost 是主机地址
  • 1521 是默认监听端口
  • orcl 是数据库实例名

通过 SQL*Plus,您可以执行 SQL 查询、创建表、插入数据等操作。

示例查询:
SELECT * FROM all_users;

在这里插入图片描述

6. 备份与恢复策略

Oracle 提供了多种备份与恢复的工具和策略:

  • RMAN(Recovery Manager):提供完整的数据库备份与恢复解决方案。
  • Export/Import:使用 expdpimpdp 工具进行逻辑备份和恢复。
使用 RMAN 备份数据库:
rman target /RMAN> backup database;
恢复数据库:
rman target /RMAN> restore database;
RMAN> recover database;

在这里插入图片描述

7. 性能调优建议

  • 内存优化:调整 SGA 和 PGA 的大小,以适应数据库负载。
  • 索引优化:确保常用的查询字段已创建索引,提升查询效率。
  • I/O 调优:将不同的表空间、数据文件分布在多个磁盘上,以优化磁盘 I/O 性能。

在这里插入图片描述

8. Oracle 数据库常见问题与解决方案

在安装和配置 Oracle 数据库的过程中,您可能会遇到一些常见问题。以下是几种典型的错误及其解决方案:

1. ORA-12541: TNS:no listener

这个错误通常是由于 Oracle 的监听器(listener)没有启动导致的。

解决方法:
确保监听器正在运行,可以通过以下命令查看监听器的状态:

lsnrctl status

如果监听器没有启动,可以通过以下命令启动它:

lsnrctl start
2. ORA-01034: ORACLE not available

此错误表示 Oracle 数据库实例没有启动。

解决方法:
您可以使用 SQL*Plus 启动数据库:

sqlplus / as sysdba
startup
3. ORA-12154: TNS:could not resolve the connect identifier specified

这是一个常见的连接错误,通常表示客户端无法解析数据库的连接字符串。

解决方法:
检查您的 tnsnames.ora 文件,确保连接字符串配置正确。此外,确保 ORACLE_HOMETNS_ADMIN 环境变量设置正确。

4. 内存不足错误

如果 Oracle 数据库在启动或运行过程中出现内存不足的错误,可能是由于 SGA 或 PGA 参数设置过高导致的。

解决方法:
调整 SGA 和 PGA 参数,减小它们的大小。例如:

ALTER SYSTEM SET sga_target=500M scope=spfile;
ALTER SYSTEM SET pga_aggregate_target=200M scope=spfile;

然后重启数据库:

sqlplus / as sysdba
shutdown immediate;
startup;
5. ORA-01536: space quota exceeded for tablespace

这个错误通常是由于用户使用的表空间配额已满。

解决方法:
您可以通过以下命令为用户增加表空间的配额:

ALTER USER test QUOTA UNLIMITED ON users;

或者增加表空间的大小:

ALTER DATABASE DATAFILE '/u01/app/oracle/oradata/orcl/users01.dbf' RESIZE 500M;

在这里插入图片描述

9. 高级配置与管理工具

Oracle 提供了多种图形化的管理工具,用于监控和配置数据库,提升运维效率。

Oracle Enterprise Manager (OEM)

Oracle Enterprise Manager 是一个功能强大的数据库管理工具,提供了直观的图形界面,适用于大规模数据库环境。通过 OEM,您可以执行以下操作:

  • 实时监控数据库的性能
  • 管理数据库的存储和表空间
  • 配置备份和恢复策略
  • 自动化定期的数据库维护任务

要使用 OEM,首先需要确保它已安装并启动。可以通过以下命令启动 OEM 服务:

emctl start dbconsole
Oracle SQL Developer

Oracle SQL Developer 是一个免费的图形化工具,方便开发者与数据库进行交互。使用 SQL Developer,您可以编写和执行 SQL 语句、管理数据库对象、进行数据库调优等。

可以从 Oracle 官方网站下载并安装 SQL Developer:
SQL Developer 下载地址


在这里插入图片描述

10. 常见的 Oracle 数据库管理任务

在 Oracle 数据库的日常管理中,您可能需要定期执行一些常见的任务,如监控数据库性能、备份数据、修复故障等。以下是一些常见的管理任务:

1. 查看数据库性能

您可以使用以下 SQL 语句来查看数据库的性能状态:

SELECT name, value FROM v$sysstat WHERE name IN ('user commits', 'user rollbacks');
2. 监控表空间使用情况

表空间使用情况是数据库管理中的重要部分。您可以通过以下命令查看每个表空间的使用情况:

SELECT tablespace_name, SUM(bytes) / 1024 / 1024 AS used_mb 
FROM dba_data_files GROUP BY tablespace_name;
3. 配置定期备份

建议使用 RMAN 配置定期备份任务,确保数据的安全性。可以通过以下命令设置每日备份:

rman target /
RMAN> configure retention policy to recovery window of 7 days;
RMAN> run {backup database plus archivelog;
}
4. 清理归档日志

随着时间的推移,归档日志会占用大量磁盘空间。可以通过以下命令删除不再需要的归档日志:

rman target /
RMAN> delete archivelog all completed before 'sysdate-7';

在这里插入图片描述

11. 性能调优的高级方法

性能调优是数据库管理中的一个关键任务,特别是对于处理大规模数据的企业来说。以下是一些高级的性能调优方法:

1. 查询调优

使用 EXPLAIN PLAN 来分析 SQL 查询的执行计划,找出性能瓶颈。

EXPLAIN PLAN FOR SELECT * FROM large_table WHERE column = 'value';
SELECT * FROM table(DBMS_XPLAN.DISPLAY);
2. 索引优化

确保为频繁使用的查询字段创建索引,以加快查询速度。例如:

CREATE INDEX idx_column ON large_table (column);
3. 内存调优

调整 SGA 和 PGA 大小以适应数据库的负载情况。对于处理大量事务的数据库,增大 SGA 和 PGA 的大小可以提高性能。

ALTER SYSTEM SET sga_target=4G scope=spfile;
ALTER SYSTEM SET pga_aggregate_target=2G scope=spfile;
4. I/O 调优

将不同的表空间分布到不同的磁盘上,以优化磁盘 I/O 性能。您可以使用 Oracle ASM(自动存储管理)来简化存储管理,并提升 I/O 性能。


在这里插入图片描述

总结

安装和配置 Oracle 数据库可能看起来是一项复杂的任务,但通过遵循本文的步骤,您将能够顺利完成 Oracle 数据库的安装和基础配置,并为后续的性能调优、备份与恢复做好准备。掌握这些技巧和方法,您将能够更高效地管理企业级数据库系统,确保系统的稳定性和高效性。

无论是在 Linux 还是 Windows 环境中,使用 Oracle 提供的强大管理工具(如 OEM 和 SQL Developer),都可以显著提升数据库管理的效率。同时,通过合理的性能调优和备份策略,确保数据库的长期运行稳定和数据安全。

希望本文对您在 Oracle 数据库的安装、配置及日常管理过程中有所帮助。
在这里插入图片描述


http://www.ppmy.cn/ops/121917.html

相关文章

day03 笔试练习

1.简写单词 题目链接&#xff1a;简写单词_牛客题霸_牛客网 public static void main(String[] args) {Scanner sc new Scanner(System.in);while(sc.hasNext()){ // 输入多少读入多少char ch sc.next().charAt(0); // 提取首字母if(ch > a && ch < z){System…

Linux多线程

目录 背景知识 重谈地址空间​编辑 理解代码划分数据的本质 线程的概念和Linux中线程的实现 什么是线程 线程的优点 线程的缺点 线程异常 线程用途 澄清并统一进程与线程 见见线程 背景知识 重谈地址空间 理解代码划分数据的本质 虚拟地址本质是一种资源&#xf…

八、特殊类型异常机制

特殊类型&异常机制 数据类型枚举类型匿名类、单例类和伴生对象匿名类单例类伴生对象 委托模式密封类型异常机制异常的使用异常的处理 数据类型 对于那些只需要保存数据的类型&#xff0c;我们常常需要为其重写toString、equals等函数&#xff0c;针对于这种情况下&#xf…

【自定义网络协议】Java基于Vert.x的自定义TCP协议实现

在现代的软件开发中&#xff0c;TCP协议广泛应用于需要高效、低延迟数据传输的场景。相较于HTTP协议&#xff0c;TCP提供了更底层的控制和更高的性能&#xff0c;适用于嵌入式设备、实时数据传输等应用。Vert.x是一个基于事件驱动、异步和多线程的高效开发框架&#xff0c;特别…

【Linux网络】详解TCP协议(3)

&#x1f389;博主首页&#xff1a; 有趣的中国人 &#x1f389;专栏首页&#xff1a; Linux网络 &#x1f389;其它专栏&#xff1a; C初阶 | C进阶 | 初阶数据结构 小伙伴们大家好&#xff0c;本片文章将会讲解 TCP的流量控制和滑动窗口 的相关内容。 如果看到最后您觉得这篇…

Linux和指令初识

前言 Linux是我们在服务器中常用的操作系统&#xff0c;我们有必要对这个操作系统有足够的认识&#xff0c;并且能够使相关的指令操作。今天我们就来简单的认识一下这个操作的前世今生&#xff0c;并且介绍一些基础的指令操作 Linux的前世今生 要说Linux&#xff0c;还得从U…

深度学习基础—卷积神经网络示例

1.卷积神经网络的结构 在之前的博客《深度学习—简单的卷积神经网络》&#xff0c;仅由卷积层构成网络的全部&#xff0c;这还不是标准的网络结构&#xff0c;本文将继续介绍标准的卷积神经网络结构有哪些&#xff1f; 深度学习基础—简单的卷积神经网络https://blog.csdn.net…

qemu-system-aarch64开启user用户模式网络连接

一、问题 在使用qemu构建arm64的虚拟机时&#xff0c;虚拟机没有网络&#xff0c;桥接方式相对麻烦&#xff0c;我只是需要联网更新即可。与宿主机的通信我使用共享文件夹即可满足要求。 使用指令启动虚拟机时&#xff0c;网络部分的参数为 -net user,hostfwdtcp::10022-:22 …