前阵子有个朋友找我,说公司服务器要升级,Oracle 10g数据库装了三遍都报错,气得想砸电脑。我问他用的是什么操作系统,他说 Windows Server 2008 R2,我一听就乐了——这搭配就像让八十岁的老头去跑马拉松,虽不是不能跑,但得先给他准备根拐杖。Oracle 10g 虽然经典,但毕竟是 2005 年的老古董,放到今天的环境里装,各种坑等着你踩。今天我就把自己踩过的坑、走过的路,掰开揉碎地跟你聊聊。

装 Oracle 10g 之前,得先弄清楚一件事:你装它到底图什么?如果只是为了跑旧系统,那没问题;如果是为了学数据库,我劝你装 11g 或 12c,因为 10g 的文档都快找不到了。但既然你铁了心要装,那就得做好心理准备——这玩意儿对操作系统特别挑剔。Windows Server 2003 和 XP 是它的亲儿子,Windows 7 和 2008 就得靠补丁和兼容模式来哄。我见过最夸张的案例,有人为了装 10g,专门在一台旧笔记本上装了 Windows 2000,结果跑得比新服务器还稳。
下载安装包是个技术活。别去 Oracle 官网找了,10g 早就被归档到“古老软件”区,翻起来比找传家宝还费劲。我一般去一些技术论坛或者网盘搜索,关键词 “Oracle 10g R2 for Windows” 准没错。下载时注意看文件大小,两个压缩包加起来大概 1.2 GB 左右,解压后是个叫 “Database” 的文件夹。要是下到只有几百兆的玩意儿,八成是缺文件的阉割版,装到一半肯定报错。还有个小细节:解压路径别带中文,也别有空格,最好直接放在 D 盘根目录,不然安装程序会直接罢工。
系统环境配置这一步,很多人会跳过,然后哭着来找我。你得把 Windows 的防火墙关掉,不然安装程序连端口都打不开。确保 C 盘有至少 3 GB 的剩余空间,因为 Oracle 会在系统盘装一堆依赖组件。最关键的是,去控制面板的 “程序和功能” 里,把 “Microsoft .NET Framework 3.5” 勾上安装——这玩意儿是 Oracle 10g 的命根子,没有它,点击安装程序后只会弹出一个空白的错误框。我见过一个哥们儿,在这步卡了三天,重装系统后才发现是 .NET 没装。
双击 setup.exe 之后,真正的噩梦才开始。如果系统版本不对,安装界面可能直接闪退,这时候得右键 setup.exe,选“属性”,在“兼容性”选项卡里勾上“以 Windows XP SP3 模式运行”,再勾上“以管理员身份运行”。顺利的话,你会看到一个经典的灰色界面,像回到了 2005 年。选择“高级安装”而不是“基本安装”,因为基本安装会自作主张把数据库装在 C 盘,万一系统崩了,数据全完蛋。高级安装里,你可以手动指定 Oracle 基目录,例如 D:oracleproduct.2.0,这样以后重装系统,数据文件还能保留。
安装过程中,最烦人的一步是“检查先决条件”。它会提示一大堆“失败”,比如“物理内存不足”或“环境变量不符合要求”。别慌,这些大多是虚惊一场。内存不足?你有 8 GB 内存它说不足,那是因为 10g 没认出大内存,直接点“忽略”就行。环境变量问题?如果提示 “PATH 太长”,就去系统环境变量里把 PATH 里那些乱七八糟的路径删掉一些,只保留核心的就行。记得,每次修改完环境变量后,重新启动一次安装程序,不然它不认账。
数据库配置助手(DBCA)那一步,最容易出幺蛾子。它会自动运行一个图形化工具来创建数据库实例,这时候千万别手贱去点别的窗口。有一次我边装边刷手机,结果 DBCA 卡在 “创建数据文件” 这一步,等了半小时没反应。后来发现是杀毒软件在后台扫描 Oracle 的文件,把进程堵死了。解决办法很简单:装 Oracle 之前,先把 360、腾讯管家、火绒这些全卸了,装完再装回来。如果 DBCA 报错说 “无法启动 OracleService”,就去服务管理器里手动启动一下,通常就能继续。
装完之后,验证安装是否成功,别光看界面提示 “安装完成”。打开命令行,输入 ,如果能看到 提示符,恭喜你,基本成功。但还有一步很多人会忘:配置监听器。在开始菜单里找到 “Oracle – OraDb10g_home1” 下的 “Net Configuration Assistant”,打开后选 “监听程序配置”,添加一个监听器,端口默认 1521,协议选 TCP。没有这一步,远程客户端根本连不上你的数据库。另外,别忘了把 Oracle 的服务设为 “自动启动”,不然每次重启服务器都得手动去服务管理器点启动。
说点掏心窝子的话。Oracle 10g 就像一辆老式捷达,虽然皮实耐用,但修起来配件都难找。如果你是为了学习,真的建议换个新版本,10g 的很多特性已经被淘汰了,比如自动存储管理(ASM)在 10g 里还是半成品,11g 才真正成熟。但如果你跟我一样,手头有跑了几十年的老系统,必须用 10g,那就按上面这些步骤来,每一步都别偷懒。装好之后,记得做一个系统还原点,万一哪天崩了,能少流点眼泪。


