Oracle Database 21c在Oracle Linux 8上的安装与SQL Developer连接指南

本文详细介绍了在Oracle Linux 8.10系统上安装Oracle Database 21c的完整步骤,包括系统准备、RPM安装、数据库配置、环境变量设置、远程访问启用及通过SQL Developer进行连接的方法。

Oracle Database 21c installation on Oracle Linux 8 and connect with SQL Developer

以下是完整的步骤指南,用于在Oracle Linux 8.10上安装Oracle Database 21c,配置它,并从另一个系统(如Windows)通过SQL Developer连接到它:

✅ 先决条件

📌 系统要求

  • Oracle Linux 8.10(64位)
  • 建议至少8 GB RAM
  • 40+ GB 空闲磁盘空间
  • 互联网访问或离线RPM包

🧱 步骤1:准备Oracle Linux 8.10

🖥️ 1.1 更新系统

1
2
sudo dnf update -y
sudo dnf install -y oracle-epel-release-el8

🛠️ 1.2 安装先决条件包

1
sudo dnf install -y oracle-database-preinstall-21c wget zip unzip vim

📦 步骤2:下载并安装Oracle Database 21c

🌐 2.1 下载Oracle 21c RPM(企业版)

从以下链接下载: 🔗 https://www.oracle.com/database/technologies/oracle21c-linux-downloads.html 文件: oracle-database-ee-21c-1.0-1.ol8.x86_64.rpm 💡 如果服务器离线,使用SCP或USB驱动器上传RPM到服务器。

📦 2.2 安装RPM

1
sudo dnf localinstall oracle-database-ee-21c-1.0-1.ol8.x86_64.rpm -y

⚙️ 步骤3:配置并启动Oracle数据库

🧾 3.1 运行配置脚本

1
sudo /etc/init.d/oracledb_ORCLCDB-21c configure

这将:

  • 创建可插拔数据库ORCLPDB1
  • 启用自动启动
  • 设置SYS、SYSTEM等的默认密码为Oracle_4U

您将看到类似输出:

1
2
Database configuration complete.
...

🔐 步骤4:在oracle用户中设置环境变量

1
2
3
4
5
su - oracle
echo "export ORACLE_HOME=/opt/oracle/product/21c/dbhome_1" >> ~/.bash_profile
echo "export PATH=\$ORACLE_HOME/bin:\$PATH" >> ~/.bash_profile
echo "export ORACLE_SID=ORCLCDB" >> ~/.bash_profile
source ~/.bash_profile

🔥 步骤5:启动Oracle服务(如果尚未运行)

1
sudo systemctl start oracle-database

启用启动时启动:

1
sudo systemctl enable oracle-database

🌐 步骤6:启用远程访问

📍 6.1 打开监听器端口(1521)

1
2
sudo firewall-cmd --add-port=1521/tcp --permanent
sudo firewall-cmd --reload

📝 6.2 在监听器中允许远程连接

编辑文件:

1
sudo vi $ORACLE_HOME/network/admin/listener.ora

确保监听器绑定到0.0.0.0或服务器的IP:

1
2
3
4
5
6
LISTENER =
  (DESCRIPTION_LIST =
    (DESCRIPTION =
      (ADDRESS = (PROTOCOL = TCP)(HOST = 0.0.0.0)(PORT = 1521))
    )
  )

重启监听器:

1
2
lsnrctl stop
lsnrctl start

👤 步骤7:创建用户用于远程访问

💻 登录到SQL*Plus

1
2
3
4
5
6
sqlplus / as sysdba
SQL> show pdbs;
    CON_ID CON_NAME                       OPEN MODE  RESTRICTED
---
     2 PDB$SEED                       READ ONLY  NO
     3 ORCLPDB1                       READ ONLY  NO
1
2
3
4
5
SQL> SHOW CON_NAME;
---
  CON_NAME
---
CDB$ROOT

🫙 检查实例状态

1
2
3
4
5
SQL> SELECT status FROM v$instance;
---
  STATUS
---
OPEN

如果数据库未打开,则运行以下命令:

1
2
SQL> ALTER DATABASE OPEN;
Database altered.

👥 创建用户

1
2
3
4
SQL> ALTER SESSION SET CONTAINER = ORCLPDB1;
SQL> CREATE USER chirag IDENTIFIED BY Tiger123;
SQL> GRANT CONNECT, RESOURCE TO chirag;
SQL> ALTER USER chirag DEFAULT TABLESPACE users;

✅ 可选:授予DBA权限

1
GRANT DBA TO chirag;

🧪 步骤8:本地测试

1
sqlplus chirag/Tiger123@localhost:1521/ORCLPDB1

如果成功,继续远程访问。

💻 步骤9:从SQL Developer连接(其他系统)

下载SQL Developer: https://www.oracle.com/in/database/sqldeveloper/technologies/download/ (Windows 64位,包含JDK 17) https://download.oracle.com/otn_software/java/sqldeveloper/sqldeveloper-24.3.1.347.1826-x64.zip

🎯 使用详情:

  • 用户名:chirag
  • 密码:Tiger123
  • 主机名:Oracle Linux服务器的IP(例如,192.168.224.133)
  • 端口:1521
  • 服务名称:ORCLPDB1 🔍 在Oracle服务器上使用“ip a”查找其IP地址。

📂 在SQL Developer中:

  • 点击➕添加新连接。
  • 输入以上凭据。
  • 测试连接。
  • 点击连接。

✅ 可选:启用重启时自动启动

如果数据库未自动启动:

1
sudo systemctl enable oracle-database

🧽 故障排除提示

问题 解决方案
ORA-01017 错误的用户名/密码
ORA-12514 服务名称错误/未注册
连接超时 防火墙问题 — 确保端口1521已打开
SQL Developer空白屏幕 检查服务名称(ORCLPDB1)或使用SID(ORCLCDB)

📚 附加提示

  • 检查监听器状态:lsnrctl status
  • 检查服务名称:lsnrctl services
  • 查看日志:$ORACLE_BASE/diag/tnslsnr/hostname/listener/alert/log.xml
  • Web UI:https://localhost:5500/em

如有疑问,请在YouTube视频📽️评论💬部分留言。 注意:遵循视频📽️中展示的流程。 😉请订阅并点赞以获取更多视频: https://www.youtube.com/@chiragtutorial 💛不要忘记,💘关注、💝点赞、💖分享💙和评论 谢谢与问候, Chitt Ranjan Mahto “Chirag” https://www.chirags.in

注意:本演示中使用的所有脚本将在我们的网站上提供。 链接将在描述中提供。

comments powered by Disqus
使用 Hugo 构建
主题 StackJimmy 设计