哥们姐们,今天来聊聊我之前折腾Oracle安装包那些破事儿。你别说,这东西真能把你气得七窍生烟,但搞定以后,那成就感也真是没谁了。
话说那时候,公司里有个老掉牙的项目,就非得跑Oracle数据库。我手上这台开发机,原本干干净净的,这下可为了装它,我算是把这机器折腾了个底儿掉。
开始的狗血剧情:下载与解压
我记得很清楚,刚开始就是从官网扒拉那堆安装包,几十个G的文件,下了好几回。第一次,我兴冲冲地下载完了,想着终于可以开始了。结果,双击解压,蹦出来个框框,说“文件损坏,无法解压”。我当时就想骂娘,辛辛苦苦等了半天,就给我看这个?
我没死心,又跑去重新下载,这回学聪明了,挨个校验了下文件的MD5值。果然,头一回下的,好几个包都没对上。这下重新下载,等得我头发都快白了。好不容易,所有的包都下齐了,MD5也对上了,终于能解压了。心里想着,这第一关算是过了?呸!想得美!
预检的坑:各种“不符合要求”
解压完,开始跑那个图形化安装程序。点了几下,结果到了“预检”那一步,直接给我泼了盆冷水。
小编温馨提醒:本站只提供游戏介绍,下载游戏请前往89游戏主站,89游戏提供真人恋爱/绅士游戏/3A单机游戏大全,点我立即前往》》》绅士游戏下载专区
- 内存不足!它说我内存不够,建议加到多少多少G。我当时那台机器才8G内存,硬生生给我报了个红。
- 交换分区不够!这玩意儿我还得手动去配置。
- 操作系统包缺失!一大堆什么
compat-libstdc++,elfutils-libelf,还有一大堆我听都没听过的包,全部给我标红。 - 内核参数不对!什么
shmmax、shmmni,一堆数字我也搞不懂,反正就说不达标。
我当时看着那一堆红叉叉,头都大了。心想,这哪是安装数据库,这是考我Linux运维能力!我开始一个一个去搜那些缺失的包,手动敲命令安装。装完一个,再跑预检,又蹦出来几个新的。来来回回折腾了好几天,系统包是补齐了,但内存和交换分区这玩意儿,还得改系统配置。我当时一顿瞎改,还差点把系统给搞崩了,甚至狠心重装了一遍操作系统,就为了一个干净的环境。
权限的坎:创建用户与组
重装系统后,我算是学乖了,先仔细研究了下Oracle官方文档(虽然看文档也是一头雾水)。我发现,Oracle这玩意儿,它不喜欢用root用户直接安装。得创建一个专门的oracle用户,还得有oinstall和dba这两个组。
我敲命令groupadd oinstall,groupadd dba,然后useradd -g oinstall -G dba oracle,给oracle用户设个密码。还tm得把安装目录的权限都给到oracle用户。这些零碎的小玩意儿,当时我根本没经验,全都是看着各种论坛里的帖子,一步一步照葫芦画瓢。有时候一个命令敲错了,就又得从头来。
环境的坑:环境变量和监听
好不容易,前面的坑都填完了,终于进入到真正的安装界面。一步一步往下点,看着进度条慢慢走,心里那叫一个忐忑。结果,到一步,创建数据库实例的时候,又给我报错了!
这回的错误信息更抽象,什么“监听器未启动”、“TNS服务无法连接”。我当时根本不懂什么是监听器,什么是TNS。只知道,数据库没建起来,前面的努力又白费了。
我开始翻日志,那些日志文件跟天书一样,看了半天也没看懂个所以然。后来还是在某个老程序员的博客里看到,说要配置ORACLE_HOME、ORACLE_SID这些环境变量,还要去生成一个和文件。我当时简直要崩溃了,这数据库还没影,先给我整了这么一堆文件配置。
我照着博客里的例子,又是手动创建文件,又是修改配置。还遇到端口冲突的问题,原来我机器上其他程序占了Oracle默认的1521端口。我只好给它改了个不常用的端口。改完以后,试着启动监听器lsnrctl start,这回总算看到它提示“监听器已启动”了。心里那个激动,感觉离成功又近了一步。
曙光来了:终极成功
监听器搞定后,我回到安装程序,重新尝试创建数据库实例。这回进度条终于走到了底,然后屏幕上跳出来一个大大的“安装成功”的字样!
当时的感觉,那简直比中了彩票还高兴!感觉自己不是在装数据库,是在完成一项不可能的任务。整个过程持续了差不多一个星期,从下载到解压,从系统配置到环境变量,每一步都是坑。每解决一个问题,都得花上半天甚至一天的时间。
回头想想,这些都是经验。虽然过程很痛苦,但硬是靠着一股子不服输的劲儿,最终还是把这个老家伙给按在了我的机器上。现在再让我装一遍,虽然没那么生疏了,但我还是宁愿多喝几杯咖啡,省得再跟它较劲。



