ARTICLE DETAIL

资讯详情

深耕网站视觉设计与运营推广的一线实战洞察。

Oracle安装包zip解压与安装报错全解析:从EOCD到ORA-28547

Oracle安装包zip解压与安装报错全解析:从EOCD到ORA-28547 简介在数据库部署与运维中基于zip格式分发的安装介质已成为跨平台交付的通用标准其解压后的目录结构、校验逻辑与安装前置条件直接决定后续流程能否顺畅推进。不少开发者初次接触Oracle时常因压缩包完整性校验缺失而遭遇“file is not a zip file问题所在”或“导入失败caused by: invalid zip archive: could not find eocd”等典型错误这些现象本质上源于文件下载不完整、格式误判或EOCD记录缺失。理解zip与iso、exe的差异掌握哈希校验、解压工具选型及Linux下的unzip用法是规避基础故障的第一步。进一步地安装阶段还可能遇到Java Runtime Environment版本缺失、12c卸载残留等环境问题而连接阶段的ORA-28547则与监听器、tnsnames.ora及防火墙配置密切相关。本文从zip介质形态切入系统梳理Oracle安装包从解压到配置的核心链路并结合导出导入、分页查询、rowid概念等日常运维场景帮助读者建立从介质处理到数据库可用的完整认知。1. 为什么Oracle安装包是zip格式1.1 zip格式的来龙去脉看到“Oracle安装包.zip”这个文件名第一反应大概率是这到底是从官网下载的正式发行包还是别人从某个网盘里转存出来的二手货我这些年帮人处理过不少数据库环境问题收到的安装包文件名五花八门但“Oracle安装包.zip”这个叫法确实属于典型的三无命名——没有版本号、没有操作系统标识、没有文件大小仅凭文件名根本判断不出里面装的是11g还是19c是Windows版还是Linux版。Oracle官方从很早开始就采用zip格式分发数据库安装介质这一点和很多人的直觉相反。大家习惯了Windows下那种双击即装的exe安装包或者刻盘用的iso镜像但Oracle在11g之后官方提供的下载文件基本都是zip压缩包。比如Oracle Database 11g R2 for Linux x86-64的官方下载文件就叫linux.x64_11gR2_database_1of2.zip和linux.x64_11gR2_database_2of2.zip两个zip加起来接近2GB。Windows版同样如此是一整个含setup.exe的zip包。为什么用zip而不用exe自解压原因很简单Oracle的安装介质要跨平台分发、要支持静默安装、要允许用户自定义安装路径zip格式足够通用解压后直接拿里面的setup或者runInstaller启动安装程序即可。而且zip在Linux/macOS/Windows三大平台上都有原生支持对DBA来说反而更友好。你回想一下Oracle官网JDK下载页是不是也是zip和tar.gz两种格式逻辑完全一致。所以拿到“Oracle安装包.zip”第一个核心任务不是马上双击运行而是确认这个zip的内部结构是否完整、是否包含完整的安装程序目录。这一步做不好后面就是各种莫名其妙的安装报错在等着你。1.2 zip、iso、exe三种介质形态的取舍Oracle安装包常见的介质形态有这么几种搞清楚它们的区别能省掉大量踩坑时间。我整理了一张表方便你对照理解。介质形态常见场景优点缺点zip压缩包官网标准下载、跨平台分发通用性强支持静默安装可自定义路径解压需要额外步骤解压失败排查成本高iso光盘镜像老版本附赠光盘、虚拟机挂载可直接挂载结构固定Windows下需要额外工具解压或挂载exe自解压程序第三方整合包、个别Windows组件双击即用无需解压工具无法跨平台有被捆绑修改的风险具体到Oracle如果你是从官网下载的官方zip包解压后你会看到一个标准的目录结构里面包含database文件夹、setup.exeWindows或者runInstallerLinux、response文件夹用于静默安装的响应文件、rpm文件夹Linux下的依赖包等。如果解压后没有看到这些关键文件那这个zip八成有问题要么是下载不完整要么是被二次打包过。反过来说如果你拿到的zip解压后只看到一个孤零零的exe文件那很可能是第三方做的一键安装整合包。这类包不是不能用但风险在于你不知道它在里面动了什么手脚比如改过默认端口、预置了某个密码、或者集成了来源不明的组件。在企业生产环境里我的建议是只认官网下载的zip连所谓的“绿色版”“精简版”都别碰。图省事一时爽出了事就有得受了。1.3 zip后缀并不代表文件一定没问题这里必须吐槽一个常见误区很多人看到文件名以.zip结尾就默认它是有效压缩包解压失败时第一反应是换一个解压工具。实际上zip后缀只是文件名的一部分文件到底是不是真正的zip压缩格式要看文件头部字节。一个标准的zip文件前两个字节是PK如果你的文件用十六进制编辑器打开看到的不是PK开头那说明它根本不是zip哪怕后缀名写一百遍.zip也没用。搜热搜词里能看到“file is not a zip file问题所在”和“导入失败caused by: invalid zip archive: could not find eocd”这两个关键词正好对应了两种典型错误场景。前者是解压工具直接告诉你文件不是zip后者是解压到一半说找不到EOCD记录End Of Central Directory压缩包中央目录结尾标记。这两个问题后面我会在解压章节里详细拆这里先记住一个原则文件名不能证明文件格式校验文件内容才是硬道理。2. 解压Oracle安装包八成问题都出在这一步2.1 解压工具选型不是越新越好但也不能太旧拿到zip格式的Oracle安装包解压工具有讲究。Windows下最常用的就是WinRAR和7-Zip这两个我都用过很长一段时间坦白讲7-Zip在解压大文件时的稳定性和速度表现更好而且完全免费、没有弹窗广告。WinRAR虽然也是经典老牌但那个试用弹窗确实烦人。这里只讨论解压场景不评价压缩功能因为Oracle安装包我们只解压不重压。还有一点容易被忽略解压Oracle安装包这类动辄1到2GB的大文件尽量不要用Windows系统自带的那套“右键-全部提取”功能。自带功能不是不能用而是它的错误提示不够明确解压到一半中断时你甚至不知道是磁盘空间不够还是文件损坏了。用7-Zip或者WinRAR解压至少能看到明确的错误码和出错文件路径排查起来效率高得多。Linux环境下解压zip就简单了一个unzip命令搞定。但这里有个小坑有些精简版Linux系统默认没装unzip工具需要先执行yum install unzip或apt install unzip安装。不少人在Linux上第一次解压zip时报“command not found”然后一脸懵其实就是少装了个工具而已。2.2 “file is not a zip file”到底是怎么来的这个报错我见得实在太多了。你满心欢喜地下载了好几个G的Oracle安装包双击解压结果弹出一句“file is not a zip file”心态直接炸裂。别急着骂工具先想想是不是以下原因。第一种情况下载文件不完整。这是最普遍的原因。浏览器下载大文件时如果网络不稳定会在文件末尾截断而zip格式恰恰在文件末尾存了关键索引信息EOCD记录文件末尾缺失解压工具自然无法识别。这时候你检查一下文件大小是否和官网标注的字节数一致差一个字节都不行。第二种情况下载的文件根本不是zip。有些下载链接实际指向的是HTML页面或者下载到了奇怪的中间文件但浏览器根据Content-Disposition的配置还是把它保存成了.zip文件名。打开这个“zip”一看全是HTML源码别说Oracle了连个正经压缩包都不算。第三种情况文件被二次压缩或错误改名。有人把.tar.gz包改名为.zip或者把rar格式直接改后缀这种文件拿到任何zip解压工具下都会报错。遇到这种情况先判断真实格式再对症下药。判断方法很简单用十六进制工具看文件头部zip的PK、rar的Rar!、gzip的1F 8B一眼就能分辨。2.3 “invalid zip archive: could not find EOCD”深度剖析“could not find EOCD”这类报错比“not a zip file”要高级一点它说明压缩包头部识别成功了但解压工具在扫描整个压缩包时没找到末尾的EOCD记录。我把这个报错的排查路径整理成了一张速查表可能原因判断方法解决方案文件下载不完整最常见对比官网文件大小或MD5值重新下载建议用支持断点续传的下载工具磁盘空间不足导致解压中断检查目标盘剩余空间清理磁盘或更换目录后重新解压文件系统限制FAT32的4GB上限查看U盘/分区格式换NTFS分区或重新复制文件压缩包本身损坏用7-Zip的“测试压缩包”功能从可信源重新获取安装包被杀毒软件拦截部分文件查看杀毒软件隔离记录添加信任后完整解压看到EOCD报错我一般第一个动作就是看文件大小。如果是下载到一半中断的文件大小会明显偏小如果大小看起来差不多但依然报错那就用certutil -hashfile 文件名 MD5Windows或md5sum 文件名Linux对比哈希值和官网公布的校验值不一致就果断重下。这里再补充一个冷门但真实存在的坑FAT32格式的U盘或移动硬盘单文件最大只能4GB。Oracle 11g的两个zip分包虽然都小于4GB但解压后的部分文件可能超过4GB或者你下载的完整版单zip超过4GB复制到FAT32介质时就会直接失败。报错可能不是“not a zip file”而是“文件过大”或复制中断。遇到这种问题确认一下你的分区格式换成NTFS或者exFAT就行。2.4 zip密码是什么情况热搜词里出现了“zip密码移除”和“zip密码恢复”说明不少人手里有带密码的压缩包。这里我要泼一盆冷水如果这个带密码的zip是正版来源官方发布的Oracle安装包是绝对不会有密码的。带密码的Oracle安装包大概率来自两个渠道一是别人二次打包后顺手加了密码二是某个技术交流群里流传的“内部版本”。官方不提供密码保护的安装包所以如果你手中的Oracle安装包有密码先问自己一个问题这个包的来源还可靠吗如果来源都不确定我建议直接放弃去官网下载。千万不要尝试什么密码恢复工具——一是耗时极长纯字典攻击跑几天都可能开不了二是你为破解一个来路不明的压缩包密码花费的时间成本远高于重新下载一次安装包。把精力花在验证来源上比花在破解密码上靠谱一百倍。2.5 Linux下解压zip的正确姿势Linux环境解压Oracle安装包常见的命令有三条适用场景不同我逐个说一下。# 解压到当前目录 unzip oracle安装包.zip # 解压到指定目录推荐 unzip oracle安装包.zip -d /opt/oracle_install # 列出压缩包内容不解压先看结构 unzip -l oracle安装包.zip第三个命令unzip -l值得多说一句。拿到一个来源不明的zip先不解压先列出内容看看。如果列表里显示的目录结构跟你预期的Oracle安装包结构对不上那就不用解压了直接换包。另外如果压缩包里的文件名有中文乱码可能是编码问题可以加-O GBK参数指定编码集但Oracle安装包的文件名基本都是英文一般用不到这个参数。Linux下还有个容易踩的坑是权限问题。用root解压出来的文件默认属主是root之后用oracle用户安装时可能会遇到权限不足。规范操作是先创建oracle用户和安装目录再把解压出来的文件属主改成oracleuseradd oracle mkdir -p /opt/oracle_install unzip oracle安装包.zip -d /opt/oracle_install chown -R oracle:oinstall /opt/oracle_install3. 从安装包到数据库实例安装配置的核心细节3.1 安装前的环境检查清单解压完成后别急着双击setup.exe。Oracle安装最大的特点就是“准备充分的人一路畅通准备不足的人处处踩雷”。我总结了一套安装前检查清单按顺序过一遍能避开一大半安装报错。检查项要求说明操作系统版本必须匹配安装包版本11g不支持Windows 1119c不支持老旧的Windows 7内存至少2GB推荐4GB以上内存不足会直接触发安装程序的前置检查失败磁盘空间至少10GB可用空间安装程序占用约5到8GB加临时文件需要更多Java环境安装程序依赖JDK/JREOUI图形界面需要JDK报错“此计算机上未安装Oracle Java SE Runtime Environment”就是这里出问题管理员权限Windows需以管理员运行Linux需用oracle用户不能用root直接跑图形安装关闭杀毒软件建议临时关闭杀毒软件拦截文件会导致安装中断这里重点说说Java环境这个坑。搜索热词里赫然有一条“此计算机上未安装oracle java se runtime environment 版本7更新51(64位)或更高”这个报错是我见过频率最高的Oracle安装前置错误之一。原因是Oracle的图形化安装界面OUI依赖JDK而老版本Oracle比如11g内置的JDK版本较老在比较新的Windows系统上可能无法正常加载安装程序就会抛出这个提示。解决办法有两条路一是从Oracle官网下载所需版本的JDK并配置JAVA_HOME环境变量二是检查是否已有多个Java版本导致环境变量冲突。之前在Windows上遇到过装的是64位JDK但环境变量被Path里某个32位程序抢先引用的情况折腾好久才定位到建议配置JAVA_HOME时把路径名里的空格处理好比如装在C:\Java\jdk1.7.0_51这种无空格的路径下。3.2 版本差异带来的部署方式差异拿到zip安装包后还要确认一件事你手上这个安装包对应哪个大版本11g、12c、19c、21c这几个版本虽然安装流程相似但细节差异不小。11g11.2.0.x分1of2和2of2两个zip包需要全部下载并解压到同一目录运行database文件夹里的setup.exe。安装完成后默认不创建ORCL数据库的话需要手动用DBCA创建。12c/18c/19c统一为单一zip包或几个split分卷引入了CDB/PDB架构安装过程中会让你选择是否创建容器数据库。对新手来说 это是个新概念其实可以理解为一栋大楼CDB里分了几套房间PDB每个房间可以独立对外提供服务。21c目前最新的长期支持版本之一安装过程基本延续19c但对操作系统版本要求更高。如果你是从“Oracle 11g数据库下载”相关搜索结果里拿到的安装包得提醒一句11g和Windows 10/11的兼容性并不好建议在虚拟机里装或者直接用较新的19c/21c。不是11g不能用而是它的许多组件和老系统绑定太深在新系统上跑会不断弹出兼容性警告体验相当糟糕。3.3 12c删除不干净与卸载残留问题热搜词里有一条很真实“12c删除不干净oracle”这是很多运维人员的心头痛。Oracle的卸载机制确实做得很烂简单用“控制面板-卸载程序”删不干净重新安装时旧实例信息还在导致新装失败。目前的通用做法是彻底手工清理大概分四步走。第一步停止服务。Windows下打开服务管理器把所有Oracle开头的服务全部停止。注意有些服务是依赖关系逐个停止而不是直接禁用避免系统卡死。第二步运行官方卸载工具。在开始菜单中找到Oracle自带的Universal Installer选择卸载产品列表里所有Oracle组件按顺序依次卸载。这一步其实能卸载大部分组件但残留依然存在。第三步手工清理注册表和文件目录。运行regedit删除HKEY_LOCAL_MACHINE\SOFTWARE\Oracle下所有键值删除HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services中所有Oracle开头的服务项。同时删除安装目录默认C:\app、C:\Program Files\Oracle以及C:\Users\用户名\AppData\Local\Temp下相关临时文件。第四步重启再检查。重启后再次搜索注册表和文件系统里是否还有Oracle残留。这个过程比较繁琐但执行一次能省掉后面反复重装的麻烦。如果你对注册表操作不熟建议先备份注册表再动手改坏了还能恢复。3.4 ORA-28547连接报错的经典排查安装完成后还有一个高频错误值得单独拿出来讲就是“ORA-28547: connection to server failed, probable Oracle Net admin error”。这个报错的场景通常是在客户端或PL/SQL Developer中连接数据库时出现字面意思是Oracle Net网络层出了问题。根据我的经验ORA-28547最常见的诱因有三个一是监听器没有启动。检查方法很简单用lsnrctl status看监听状态如果显示服务没有注册执行lsnrctl start启动。有些新手会把Oracle服务都启动了但独独漏了监听服务连接时报错就成了必然。二是tnsnames.ora配置错误。这个文件位于$ORACLE_HOME\network\admin目录下里面定义了连接描述符包括主机名、端口和服务名。最常见的错误是端口号写错默认1521、主机名写成了本机名而解析不到、或者服务名写成了SID。用tnsping 连接名测试配置是否生效这个命令能帮你快速定位是网络问题还是配置问题。三是防火墙拦截。Windows防火墙或系统防火墙默认不开放1521端口即使本地一切正常远程客户端连不上也会报ORA-28547。这种情况直接检查防火墙规则放行1521端口或你自定义的监听端口即可。4. 安装完成后必须掌握的核心概念与SQL4.1 dual表到底“最大”能存多少热搜词里有“oracle中dual最多存多大”这个问题一看就是从网上搜出来的经典疑问。dual是Oracle里的一个特殊单行单列表作用就是提供一个“伪表”让你执行没有实际表依赖的SQL。比如查当前时间、做计算、取序列值都需要借dual来完成-- 查当前系统日期 SELECT SYSDATE FROM DUAL; -- 查当前日期到天的字符串 SELECT TO_CHAR(SYSDATE, YYYY-MM-DD) FROM DUAL; -- 当天零点的日期 SELECT TRUNC(SYSDATE) FROM DUAL;回到“dual最多存多大”这个问题严格说dual表本身只有一列叫DUMMY类型是VARCHAR2(1)只存一个字符。但它作为计算跳板时能承载的“结果”大小取决于你查询的表达式返回类型。比如SELECT DBMS_RANDOM.STRING(A, 4000) FROM DUAL理论上能返回4000字符这和dual表本身没关系是函数返回值撑起来的。所以这个问题不要纠结“存多少”要理解dual的定位就是“语法上的工具人”。4.2 rowid是什么理解Oracle行定位的钥匙另一个高频搜索词是“oracle的rowid是什么”。Rowid在Oracle里可以理解成每一行数据在磁盘上的“物理门牌号”它直接指向数据行所在的数据文件、块号和块内行槽。SELECT出来是一串类似AAAR3sAAEAAAACXAAA的字符。新手学到rowid时最容易懵的地方是既然有了主键为什么还要rowid主键是逻辑标识rowid是物理定位。查询时Oracle会根据索引找到rowid再用rowid直接去数据文件里取行这就是为什么走索引比全表扫描快。但rowid也有局限性它只在当前表生命周期内有效行被删除后rowid可能被复用表被重建后rowid全变。所以rowid适合做临时去重、快速定位不适合长期保存作为业务标识。-- 查看某行的rowid SELECT ROWID, EMPNO, ENAME FROM EMP WHERE EMPNO 7788;4.3 Oracle分页SQL两种写法对比“oracle分页”作为一个搜索热词出现在这里再正常不过因为Oracle分页的写法跟MySQL完全不同是无数从MySQL转Oracle的人第一个碰壁点。MySQL用LIMITOracle里没有LIMIT这个东西传统做法是ROWNUM嵌套子查询-- Oracle经典分页第1页10条 SELECT * FROM ( SELECT T.*, ROWNUM RN FROM ( SELECT * FROM EMP ORDER BY SAL DESC ) T WHERE ROWNUM 20 ) WHERE RN 10;这个三层嵌套看起来绕核心逻辑其实很清晰最内层排序中层给每行编号并截取上限外层过滤下限。注意ROWNUM是在排序前赋值的所以必须先把排序结果做子查询否则分页顺序会乱。如果你用的是12c及以上版本还有一个更优雅的写法就是FETCH FIRST N ROWS ONLY语法和MySQL的LIMIT类似但功能更强-- 12c语法跳过前10行取10条 SELECT * FROM EMP ORDER BY SAL DESC OFFSET 10 ROWS FETCH NEXT 10 ROWS ONLY;这个写法在19c里用起来非常顺手但要注意11g不支持。如果你的生产库还是老版本老老实实用ROWNUM写法。4.4 Oracle导出导入与等保命令安装并建好库之后日常运维离不开数据的导出导入以及安全合规检查。热搜词里“oracle导出导入”和“oracle等保命令”两个词放在一起看挺有意思一个是数据备份一个是安全基线的查验。Oracle的传统导出导入工具是exp/imp逻辑备份老版本和expdp/impdp数据泵更推荐。数据泵的完整导出命令大致如下# 创建一个目录对象指向操作系统的备份目录 CREATE DIRECTORY dump_dir AS /u01/backup; # 导出整个库生产环境控制权限 expdp system/密码orcl DIRECTORYdump_dir DUMPFILEfull_$(date %Y%m%d).dmp LOGFILEexpdp_$(date %Y%m%d).log FULLY; # 只导出某个用户的数据 expdp system/密码orcl DIRECTORYdump_dir DUMPFILEscott.dmp LOGFILEexpdp_scott.log SCHEMASSCOTT;等保方面Oracle数据库需要关注的安全配置项包括密码复杂度校验UTLPWDMG.SQL、登录失败锁定参数FAILED_LOGIN_ATTEMPTS、审计日志开启AUDIT_TRAIL参数、远程登录超时IDLE_TIME等。常见命令如下-- 查看密码策略和资源限制 SELECT PROFILE, RESOURCE_NAME, LIMIT FROM DBA_PROFILES WHERE RESOURCE_NAME IN (FAILED_LOGIN_ATTEMPTS, PASSWORD_LOCK_TIME, IDLE_TIME); -- 开启数据库审计需要重启生效 ALTER SYSTEM SET AUDIT_TRAILDB, EXTENDED SCOPESPFILE; -- 查看当前所有用户和状态 SELECT USERNAME, ACCOUNT_STATUS, EXPIRY_DATE FROM DBA_USERS;安全基线这块每个公司的要求不一样但上面这几个命令基本是检查清单必列项。做DBA的早掌握早省心别等到等保测评之前才临时抱佛脚。5. 常见问题与排查技巧实录5.1 Oracle相关报错速查表综合前面的内容我把常见报错按“安装阶段”和“使用阶段”分类整理成一张速查表方便你遇到问题时直接对号入座。报错信息所属阶段核心原因快速处理file is not a zip file解压文件损坏或非zip格式校验MD5后重新下载invalid zip archive: could not find EOCD解压文件末尾缺失/磁盘不足重下并确认磁盘空间此计算机上未安装Oracle Java SE Runtime Environment 版本7更新51安装前置JDK缺失或版本不匹配安装匹配版本的64位JDKORA-28547: connection to server failed连接监听未启/网络配置错误/防火墙检查监听和tnsnames.oraORA-12541: TNS:no listener连接监听未启动启动监听或检查端口ORA-28001: the password has expired登录密码过期ALTER USER 用户 IDENTIFIED BY 新密码INST-07269 / 无法启动服务安装服务残留或权限不足清理旧服务并用管理员运行数据库授权过期使用license到期或试用期结束联系甲骨文销售获取正式授权或降级使用免费版XE第8条是热搜词里出现过的“数据库oracle授权过期”这个和密码过期不一样它是License层面的问题。如果你是学习用途可以安装Oracle Database XE免费版官方允许免费使用且功能足够实验如果是商业用途老老实实走正规渠道买授权。不要试图通过改系统时间来绕过License检查这种操作风险极大一旦数据出问题连救援的余地都没有。5.2 安装包完整性校验最不能省的一步前面反复说到校验哈希这里把具体操作写清楚。不管是在Windows还是Linux平台下载完Oracle安装包后第一步永远是校验哈希值而不是立刻解压。Windows下用PowerShell执行Get-FileHash .\linux.x64_11gR2_database_1of2.zip -Algorithm MD5Linux下用md5summd5sum linux.x64_11gR2_database_1of2.zip然后把计算出的MD5值和Oracle官网公布的校验值对比。官网每个下载文件旁边都有对应的校验值完全一致才说明文件完整。这一步真的花不了30秒却能把“解压报错”“安装到一半报文件损坏”这类问题消灭在发生之前。还有一个细节下载Oracle安装包建议用支持断点续传的下载工具浏览器自带的下载功能在大文件场景下太脆弱网络稍微抖动一下就得从头再来。有些下载工具会自动计算并显示SHA-1或MD5值省得你手动再算一次。5.3 我踩过的安装包相关坑最后分享几个我这些年跟Oracle安装包斗智斗勇的真实案例希望你能绕开这些坑。第一个坑是“官网下载的zip解压后setup.exe双击没反应”。当时排查了半天最后发现是Windows Defender把setup.exe给隔离了。因为Oracle安装程序会修改系统服务杀毒软件可能误判。解决方法是临时关闭实时防护安装完再打开。现在很多现代杀毒软件学聪明了会直接弹出询问窗口但Defender有时候不声不响就处理了。第二个坑是“解压时提示磁盘空间不足但明明还有20GB可用”。后来发现是C:\Users\用户名\AppData\Local\Temp所在分区满了。很多人默认解压到D盘或E盘但解压工具运行时先往临时目录写缓存。遇到这种问题手动把系统临时目录改到剩余空间大的分区或者定期清理Temp文件夹就能解决。第三个坑常出现在多人协作的场景中同事明明从官网下载了完整zip传给另一个同事后解压就报EOCD错误。最后查明是传输工具在传大文件时出了问题。所以跨机器传输Oracle安装包传完后一定要重新校验哈希别觉得多此一举文件大到一定程度什么奇怪的事都可能发生。我从这些经历里沉淀出一条铁律凡是Oracle安装包拿到手先校验再解压不校验就解压纯属赌运气。这套流程也许不能让你安装100%成功但它能过滤掉最基础、最浪费时间的那些蠢错误把精力留给真正需要动脑的问题。希望你也能从一开始就养成这个习惯别等到对着报错日志发愁时才想起来自己当初少做了一步校验。本文还有配套的精品资源点击获取
返回列表