文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

用脖子以上的部位解决问题(1):sqlplus登陆报没有权限错误

2024-04-02 19:55

关注

由于种种原因,好久没有来这里发表自己的文章了。前段时间遇到一个有趣的问题,为难了我整整一个下午,这里写出来与各位分享。

 

使用sqlplus工具以sysdba身份本机登陆oracle数据库时,突然遇到了没有权限的问题。当时感觉很蹊跷,本机登陆命令:sqlplus / as sysdba 据我了解是最保险的一种登陆方法咯。怎么会报告没有权限呢。头上有点冒汗。经过了半个下午的摆弄依然无果,现在想起来当时简直是胡来!根本没有从原理入手去推断问题,只是一通胡乱测试,没有结果也是情理之中。冷静下来思考后,终于理清了思路,这种登陆方式是走的操作系统认证,即可排除监听故障影响。验证一下,通过sqlplus sys/xxx as sysdba 命令登陆正常,排除了密码文件异常的可能。那么操作系统认证的必要条件是uid和gid以及用户名组名的正确性,我来用id命令查一下看看,果然oracle用户id和用户名对应正常,可gid和组名却没有对应起来,只显示了gid并未显示组名。这是为什么呢?好奇怪!想想unix系统的gid与组名对应关系从何而来,答案摆在面前/etc/group文件,对!就是他!查看他的权限发现,除了root用户和root组有读权限,other用户上面却没有,这怎么可以呢?证明oracle用户根本读不到该文件的内容!难怪oracle用户下执行id命令不能看到gid对应的组名。将该文件权限修改正确,chmod a+r /etc/group 。再进入oracle用户查看,id命令显示正常。通过sqlplus / as sysdba即可正常登陆,而不再提示没有权限。

 

至此大功告成!任何事情不从原理推断妄下结论势必不能解决,反而可能把事情搞得更糟糕!


阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     813人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     354人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     318人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     435人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     224人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-数据库
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯