重要提示:Oracle 10g
在开始之前,请务必了解以下几点:

- 极度老旧:Oracle 10g 发布于 2005 年左右,早已停止官方支持,这意味着它没有安全补丁,存在严重的安全漏洞,绝对不能暴露在互联网上,仅建议用于学习、历史项目维护或特定的内部测试环境。
- 硬件和软件兼容性:由于年代久远,它与现代操作系统(如 Windows 10/11, 新版 Linux)和硬件(如 64位 CPU)存在严重的兼容性问题,在安装过程中,你可能会遇到各种意想不到的错误。
- 强烈建议升级:如果你有实际的生产需求,请考虑升级到至少 Oracle 19c 或更高版本,如果你只是学习,可以考虑使用 Oracle XE (Express Edition) 18c 或 21c,它们是免费且现代的版本。
第一部分:安装前准备
硬件和软件要求
- 操作系统:
- Windows Server 2003 (32/64-bit)
- Windows XP (32-bit) - 不推荐,但可尝试
- Red Hat Enterprise Linux 4 / 5 (32/64-bit)
- SUSE Linux Enterprise Server 9 / 10 (32/64-bit)
- ... (请查阅官方文档获取完整列表)
- 硬件要求:
- CPU: 至少 550 MHz,推荐 1 GHz 或更高。
- 内存: 最小 512MB,推荐 1GB 或更高。(关键!) 在现代系统上,你可能需要手动调整内存分配,否则安装程序会报错。
- 硬盘空间: 最小 1GB 的安装空间 + 1GB 的数据文件空间,推荐至少 5-10GB 的可用空间。
- 交换空间: 物理内存的 2 倍。
下载安装文件
你需要下载两个核心文件:
- 数据库安装文件:
- Windows:
10201_database_win32.zip(32位) 或10201_database_win64.zip(64位) - Linux:
10201_database_linux32.zip(32位) 或10201_database_linux32.zip(64位) - 注意:64位Linux的文件名有时也包含32,需要根据CPU判断
- Windows:
- 客户端或即时客户端文件 (可选):
10201_client_win32.zip或10201_client_linux32.zip
你可以从 Oracle 官网的 "Software Delivery Cloud" 或一些历史软件存档网站找到这些文件。
关键系统配置 (以 Windows 为例)
由于 10g 安装程序无法识别现代系统的大内存,这是最关键的一步。
-
创建安装用户:
(图片来源网络,侵删)- 在 Windows 中,创建一个本地用户,
oracle。 - 设置一个强密码。
- 将此用户添加到
Administrators组。
- 在 Windows 中,创建一个本地用户,
-
禁用 UAC (用户账户控制):
- 在 Windows 7/8/10/11 中,为了避免安装权限问题,建议暂时禁用 UAC。
- 路径:
控制面板->用户账户->更改用户账户控制设置,然后拉到最底部“从不通知”。
-
设置虚拟内存 (Swap Space):
- 右键点击“此电脑” ->
属性->高级系统设置。 - 在“高级”选项卡下,点击“性能”区域的
设置。 - 在新的“性能选项”窗口中,切换到“高级”选项卡,点击“虚拟内存”区域的
更改。 - 取消勾选“自动管理所有驱动器的分页文件大小”。
- 选中你的系统盘(如 C:),选择“自定义大小”。
- 初始大小 和 最大值 都设置为 2048 MB (2GB)。
- 点击
设置->确定,系统会提示重启。
- 右键点击“此电脑” ->
-
关闭杀毒软件和防火墙:
临时关闭所有杀毒软件和 Windows Defender 防火墙,以免它们干扰文件写入和端口监听。
第二部分:安装步骤 (Windows 环境)
步骤 1:解压安装文件
- 将下载的
10201_database_win32.zip文件解压到一个固定的、不含中文字符的路径下,D:\oracle\database。
步骤 2:启动安装程序
- 以你之前创建的
oracle用户身份登录系统。 - 进入解压后的
database文件夹。 - 找到
setup.exe文件,右键点击它,选择 “以管理员身份运行” (Run as administrator)。
步骤 3:安装向导
- 欢迎界面: 点击
Next。 - 安装选项:
- 选择 “创建和配置数据库” (Create and configure a database)。
- 点击
Next。
- 系统类:
- 选择 “高级安装” (Advanced Installation),这可以让你进行更多自定义配置。
- 点击
Next。
- 安装类型:
- 选择 “通用” (General Purpose),这是最常用的数据库类型。
- 点击
Next。
- 数据库标识:
- 全局数据库名: 输入一个全局唯一的名称,
orcl或mydb,这通常是你的数据库名称。 - SID (系统标识符): 默认会自动填入,与全局数据库名相同,保持默认即可。
- 点击
Next。
- 全局数据库名: 输入一个全局唯一的名称,
- 数据库 character set (字符集):
- 这是非常重要的步骤!
- 强烈建议选择
UTF-8,选择 “使用 Unicode (AL32UTF8) 的 UTF-8”。 - 不要选择
ZHS16GBK,除非你的应用或旧系统明确要求它,否则未来会遇到很多字符集转换的麻烦。 - 点击
Next。
- 数据库连接配置:
- “选择数据库连接选项”: 选择 “专用服务器模式” (Dedicated Server Mode)。
- “启动数据库配置助手”: 勾选这个选项。
- 点击
Next。
- 管理选项:
- “配置自动存储管理”: 保持默认的
不使用 ASM。 - “数据库控制选项”:
- 勾选 “使用数据库控制管理数据库”。
- 端口通常会默认为
1158,如果被占用,可以修改一个未被占用的端口(如 5500)。 - 设置一个 SYS 和 SYSTEM 用户的口令。务必记住这两个密码!
- 安全警告: 点击
Password Management...。 - 在弹出的窗口中,取消勾选
SCOTT用户的Account Locked,并为其设置一个密码(如tiger),这是 Oracle 最经典的示例用户。 - 点击
OK返回。
- 点击
Next。
- “配置自动存储管理”: 保持默认的
- 概要: 仔细检查所有配置信息,如果没有问题,点击
Install。
步骤 4:等待安装完成
- 安装程序会开始复制文件、配置数据库,这个过程可能需要 20-60 分钟,请耐心等待。
- 你会看到一个进度条,并能看到正在执行的脚本。
步骤 5:安装后配置
- 配置助手: 安装完成后,会自动启动一些配置助手,如
Oracle Net Configuration Assistant和Database Configuration Assistant,等待它们自动完成。 - 完成: 当看到 "Installation complete" (安装完成) 的提示时,点击
Finish。
第三部分:验证安装
-
检查服务:
- 按
Win + R,输入services.msc并回车。 - 在服务列表中,你应该能看到以下服务,并且它们的“状态”应为“正在运行”:
OracleServiceORCL(你的SID)OracleOraDb10g_home1TNSListener(监听器服务)
- 按
-
*使用 SQLPlus 连接**:
- 开始菜单 ->
Oracle - OraDb10g_home1->Application Development->SQL*Plus。 - 在登录界面:
- 用户名:
sys - 口令: 你之前设置的 SYS 密码
- 连接身份: 选择
SYSDBA
- 用户名:
- 如果成功登录,并看到
SQL>提示符,说明数据库实例已启动。 - 输入
SELECT * FROM v$instance;查看实例信息,然后输入exit;退出。
- 开始菜单 ->
-
使用企业管理器:
- 打开浏览器,访问
https://localhost:1158/em(如果修改了端口,则使用你设置的端口)。 - 注意: 浏览器可能会提示证书不安全,点击“高级”并继续访问。
- 用户名:
sys - 口令: 你之前设置的 SYS 密码
- 连接身份: 选择
SYSDBA - 如果能成功登录并看到企业管理器控制台,说明安装完全成功。
- 打开浏览器,访问
第四部分:常见问题与解决
-
问题: 安装过程中提示
Checking operating system memory failed或内存不足。- 解决: 这是因为安装程序检测到的内存超过了其支持范围,请严格按照 第一部分第3点 的说明,将虚拟内存设置为 2GB,这是最常见的问题。
-
问题: 监听器无法启动。
- 解决:
- 检查
D:\oracle\product\10.2.0\db_1\NETWORK\ADMIN目录下的listener.ora和tnsnames.ora文件是否存在且配置正确。 - 以管理员身份打开命令行,切换到
D:\oracle\product\10.2.0\db_1\BIN目录。 - 运行
lsnrctl start,查看启动信息。 - 运行
lsnrctl status,查看监听器状态和监听的端口。
- 检查
- 解决:
-
问题: SQL*Plus 连接报错
ORA-12514: TNS:listener does not currently know of service requested in connect descriptor。- 解决: 这意味着监听器知道你的请求,但不知道数据库实例这个“服务”存在,通常是因为数据库实例没有启动。
- 在命令行运行
sqlplus / as sysdba,然后执行startup命令来启动数据库。
-
问题: 在 64 位 Windows 上安装 32 位 Oracle。
- 解决: 32 位 Oracle 可以安装在 64 位 Windows 上,但只能使用 32 位客户端工具,并且无法访问超过 4GB 的内存,如果条件允许,尽量下载 64 位的安装包。
第五部分:卸载
如果需要卸载,请按以下顺序操作:
- 停止所有相关服务: 在
services.msc中停止所有 Oracle 开头的服务。 - 使用 Universal Installer: 开始菜单 ->
Oracle - OraDb10g_home1->Universal Installer,选择“卸载产品”。 - 手动删除: 卸载后,手动删除 Oracle 的安装目录(如
D:\oracle)。 - 清理注册表: (可选,但推荐) 使用
regedit删除所有以Oracle、OraDb10g等为键名的注册表项。操作注册表有风险,请谨慎! - 重启电脑。
希望这份详细的教程能帮助你成功安装 Oracle 10g,再次强调,请务必将其视为一个学习工具,并注意其安全风险。
