linux系统安装oracle11g阿里云CentOS7上好不容易通过命令行静默安装方式安好了Oracle11g_R2,然而并不会操作。阿里云上的oracle用户才是偶然除了数据库的所有者,只能通过oracle用户完成安装,但是由于vncserver的某些原因,配置后只能通过root用户正常远程登录桌面环境,oracle用户无法正常访问桌面,也就无法完成Oracle 数据库的图形化安装过程,故采取了静默安装方式。
Oracle11g的静默安装总体来讲有3步,各大论坛、大神们讲解的也大同小异,但是有的配置令人摸不着头脑,不知道到底有没有用,尤其是需要改内核参数和系统版本的地方。第一步就是修改系统和内核参数、环境变量、创建用户组等,并利用修改好的db_install.rsp配置文件运行安装程序,完成静默安装;第二步是使用监听配置文件设置监听,为了后面远程访问数据库做准备;第三步,使用自己修改好的配置文件dbca.rsp建库。完整的至少是适用于centOS7的亲测可用的基于centOS7的Oracle11g安装过程请见版主另一篇文章。接下来讲讲一件Oracle11g安装完成后无法登录和远程访问的排错过程。
Xshell远程登录阿里云,切换到oracle用户,输入:
$ sqlplus /
as sysdba
结果提示:不到命令……
查看监听:$ lsnrctl status
也不到命令……
原来oracle的 .bash_profile 里的环境变量失效了,只好重新生效一下:
$ source .bash_profile
本来静默安装Oracle的过程就有点虚,安装完成之后自己也感觉到不会那么容易实现直接建库导表使用,而且出现问题后一直以为是安装过程中的配置有错误所致,再有的可能就是阿里云本身的网络监听端口设置或者防火墙屏蔽的原因。然而,防火墙早已完全关闭,该添加放行的端口已经设置好,阿里云控制台也添加了所有用到的安全规则,这两方面是不存在问题的。那就牵涉到Oracle和centOS系统两者之间某些参数配置的问题了。
centOS7阿里云的Oracle远程访问错误排查
2017年7月31日 星期一22:33
由于当时用了sqlplus 实例名orcl/密码**** 登录总是失败(因为安装时配置文件里设置了实例
名、SID、密码等乱七八糟的一些,一直把实例名当成数据库用户名登录,虽然密码是一致的),并且在汪工帮忙检查的时候发现oracle用户的环境变量里还把SID名称写错了一个字母(纯属偶然错误,安装时配置了好多文件,修改了好多环境参数,难免会有点错误没有发现,况且后来觉得这个错误并不至于影响数据库的访问使用,它就是个SID标识而已,在远程访问时可以用来登录)。
接下来,查看了集中oracle登录的方式,原来使用sqlplus as sysdba登录可具有最高权限,不需要密码,但是不能远程访问啊(当然是出于安全考虑)。我们一直错误地使用实例名orcl当用户名登录,期间遇到了各种小错误,导致我们总以为是安装配置过程除了问题,也绝望地尝试过继续配置vncserver实现oracle用户登录再用图形化界面重装一次Oracle11g,结果vncserver总是不行,除了root用户登录正常,其余都黑屏或者无法访问。后来也提交过工单,问过阿里云工程师,最终人家检测说不是阿里云本身的问题,推测是Oracle的问题,把锅甩了(其实甩的没毛病,是我们自己绝望了)。无意中,抱着新建一个Oracle数据库用户试试看的想法,尝试一番:
SQL> create user zzkj identified by ****(passwd);  //以密码***创建用户zzkj
SQL> grant connect,resource,dba to zzkjl;  //为用户授权,dba有最高权限
其实 SQL> 贼难用,远不如Linux的终端命令好使,不能使用控制键,不能删除,也不能翻历史命令行,写错了只能下一行重写,辣鸡!
不过,创建好zzkj用户后,Windows上面竟然可以使用客户端远程访问了!
接下来,应该继续研究一下Oracle用户的权限问题,屏蔽不必要的默认的不安全用户,开始着手导入数据表试一下,并且可以尝试web端连接了,因为这已经说明监听设置没有问题,数据库安装使用也正常。
其实本文只是讲解了一个Oracle数据库远程访问的排错过程,也没什么实际的参考价值,毕竟下次你安装时主补丁遇见什么错误。笔者另一篇介绍阿里云centOS7下静默安装oracle11gR2的文章更具代表性和参考价值,按照上面的步骤仔细操作,应该会避免笔者遇到的这种这么人的小错误。之所以遇到这样的问题,很大程度上也是由于所参考的文章描述不清楚,让人摸不着头脑。
共勉。
Frank Liu
2017.7.31于鉴湖

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。