oracle和solaris刚学,俺也不会,学习中。

解决方案 »

  1.   

    这么大的论坛不会没有人知道吧?100分相求啊
    翻了很多资料,都是Oracle的官方资料,太多太杂了,找不到,那里有没有关于troubleshooting的collection啊?
      

  2.   

    system以Normal身份登陆后,通过select userenv('ISDBA') from dual;返回的是FALSE,syetem 不是SYSDBA角色吧
      

  3.   

    DBA角色的权限应该是最高的把。
    密码那个文件叫inipwxxx.ora 就在dbs目录下
      

  4.   

    只有sys用户具有sysdba权限,是全先最高的
    重建密码文件
    ORAPWD FILE=< FILENAME > PASSWORD 注意 密码部分一定要大写
      

  5.   

    remote_login_passwordfile=EXCLUSIVE --> remote_login_passwordfile=SHARED
      

  6.   

    To :bzszp(SongZip)
    为什么密码部分要大写呢?我在Oracle的官方文档里看到SYS和SYSTEM都在安装的时候就授予了DBA角色。但是默认情况下DBA角色又不拥有SYSDBA或者SYSOPER系统权限,就算SYS拥有SYSDBA权限,但是为什么又不能以SYSDBA登陆数据库呢?
    重建密码文件后,重起了Solaris,但是还是不行,不知道为什么!
      

  7.   

    谁有没有遇到过这种问题啊,如果没有遇到就不要误导我好不好?第一次使用ORACEL,很多东西都是很迷茫的,越搞越糊涂了!
      

  8.   

    建立密码文件:ORAPWD FILE=< FILENAME > PASSWORD 
    然后修改参数文件:
    remote_login_passwordfile=EXCLUSIVE 
    看看在Solaris单机环境下能不能用sys来登陆
      

  9.   

    多谢各位,问题已经解决!
    但是如果以后有什么问题绝对不会再来这里问了!
    许多人自己根本就不知道,在那里乱叫,反而误导别人!
    分数那么重要吗?有些人为了给自己多弄些分数,乱灌,真是没道理!在Oracle的官方资料中有写:DBA默认是没有SYSDBA和SYSOPER权限的。
    前面的朋友说的设置密码文件的方法都没有错,但是这些东西在Oracle Document里也有写。问题的关键是密码文件的命名。可能是Oracle的版本原因,我在Solaris+Oracle 9i的环境下设置的密码文件名为orapw,环境变量remote_login_passwordfile=EXCLUSIVE设置好后,在Solaris上重新启动数据库,就可以用SYS以SYSDBA权限登陆数据库,也可以grant权限给SYSTEM了,问题解决!
    可能需要注意的就是具体情况而最可悲的是这个网上的人都没什么耐心,知道一点点皮毛,也不分情况一顿乱讲,不要怪我需要帮助还这么刻薄,我也是看了很多教新人怎么提问的帖子,很认真的写出了自己的问题和情况,以及自己做出的一些尝试和疑问,可惜的是这个论坛缺乏某种东西……太浮躁了!所以这个帖子我是不会结帖的!
      

  10.   

    to surefire() 别人是来帮助你的,你凭什么这么说?
    就算是错误.那怎么了?你觉得你自己很懂么?
    所有用户如果以sysdba登录.都是等同于sys用户的.这个你明白么?
    多看点书再来叫吧!
    学习东西不要怕说错.
      

  11.   

    surefire:
    有些东西在8i和9i可能有些区别
    默认情况下,sys有sysdba权限,当然你可以通过这个用户吧sysdba赋给任何一个用户。我没有能力也没有必要 针对你的问题 单独配置环境帮你测试一下向大小写这样的问题吧!所有这些回复,只是提供参考而已,有什么问题,有投诉专区。
    再说你也没有资格和权力指责回贴的人
    别人给你提供参考,不分青红皂白反咬一口。
    :|
      

  12.   

    to liuyi8903(风继续吹) 
    "所有用户如果以sysdba登录.都是等同于sys用户的.这个你明白么?"
    这个我还真不明白,你有没有看过Oracle的文档?在9i里sys和system默认都会有DBA的role,但是并不代表sys就有SYSDBA的system privilege。通过system以Normal进去后在DBA下面看不到SYSDBA的权限,sys用户也没有该权限。但经过设置密码文件之后就可以看到SYS用户具有了SYSDBA权限!
    所以你那句话并不正确。我是什么也不懂,但我也不怕错,我怕的是那些浮躁的东西弥漫整个论坛!我问问题是没错,需要帮助是没错,但我是抱着一起探讨的心态来的,但是看不到别人这样做,大都很武断地说应该怎样怎样,根本就没考虑具体情况,有的甚至是一知半解,CSDN鼓吹的那些什么什么精神到哪里去了?也许我的言辞太过分,如果不是真的很失望,我才懒得说这么多废话!
      

  13.   

    bzszp(SongZip) 
    如果你还看到这个帖,我跟你说一声Sorry。但是我还是要批评你,为什么?因为你说的情况并不能成为理由。我也知道Oracle因为版本不同而操作肯定会有不同,在提问之前我把所有的情况都整理了一下,前面写了是Oracle 9i+Solaris 8的环境,这些字你大概不会不认识吧?既然你并不清楚8i和9i之前有什么区别,为什么还那么肯定地对我说“注意,密码部分一定要大写”?再怎么讲,你也应该加上“我的环境是Oracle 8i”之类的字样!你知道吗?你是两颗红星呢,你说的话对我这种菜鸟来说是至理名言呢,中国人大都有点迷信“权威”,我也不例外啊!
    扪心自问,你这样的回答,负责任吗?
    所以,对于不负责任的回帖,我从来都觉得每个人都有资格去指责!!!
      

  14.   

    最后想说的是,在Oracle 9i里,密码文件的命名是orapwSID,比如我的BO_DB数据库的密码文件就可以命名为orapwbo_db,其他的数据库我也做了相应的测试,证明是可行的。
    但是orapw这个文件好象能被BO_DB数据库使用,但是其他的数据库却不能使用,我的理解是orapw相当于一个默认的文件,当系统找不到具体数据库对应的密码文件时就来读orapw这个文件,可是我删掉所有的密码文件只留orapw这个文件,去登陆BO_DB以外的数据库时仍然不能以SYSDBA登陆,只有BO_DB可以。感觉很奇怪,不知道怎么回事。可能我的理解有错,但究竟是怎么回事,不清楚!
      

  15.   

    回复人: surefire() ( ) 信誉:96  2005-07-22 18:13:00  得分: 0  
     
     
       to liuyi8903(风继续吹) 
    "所有用户如果以sysdba登录.都是等同于sys用户的.这个你明白么?"
    这个我还真不明白,你有没有看过Oracle的文档?在9i里sys和system默认都会有DBA的role,但是并不代表sys就有SYSDBA的system privilege。  
    ========================================================================= 朋友,请你看清楚了。我说的是以sysdba身份登录。而且是任何用户(假设可以)
    以sysdba身份登录那么都是相当于sys身份(因为默认的sys就是sysdba)。
      

  16.   

    bzszp斑主为大家所做的贡献我想大家都是有目共睹的。
      

  17.   

    to liuyi8903(风继续吹) 
    "朋友,请你看清楚了。我说的是以sysdba身份登录。而且是任何用户(假设可以)
    以sysdba身份登录那么都是相当于sys身份(因为默认的sys就是sysdba)。"
    ----------------------------------
    假设你说的是对的,sys默认是有sysdba或者sysoper系统权限,但我用sys以sysdba或者sysoper进数据库却提示权限不够,不知做何解?我只知道Oracle 9i的官方文档里很明白的写着:
    Note: The DBA role does not include the SYSDBA or SYSOPER system privileges.
    当然sys还会有许多除DBA之外的其他role,如果说除了DBA role之外还有其他role还能默认拥有SYSDBA 或者 SYSOPER权限,那么麻烦你告知。
      

  18.   

    to liuyi8903(风继续吹)
    我的意思就是:任何用户以sysdba权限登录并不一定相当于SYS用户,因为9i中默认情况下SYS并不具有sysdba权限。
    还有请你区分一下Role和Privilege。拥有DBA Role的用户不代表就拥有sysdba Privilege!依据就是Oracle 9i的官方文档以及自己的实验。
      

  19.   

    学术交流成了对质了,不这请大家不要这么样.是对是错由时间来证明,何必心中放不下呢?
    多一点问题多一点交流,要是我喜欢还来不及呢,可惜我都30了,只是被迫要学ORACLE.汗哪!
      

  20.   

    to  surefire()     开放论坛是让大家进来讨论的,既然是讨论,其中有对也有错,错误是在所难免的,我想大家在面对一个问题的时候总是想尽办法来为你解答的。也要看到现今并不是很多人精通oracle,这样的话错漏是难免的。oracle是个很庞大的体系,一般人是不可能做到面面俱到,全盘精通的,所以回答之中有些用语不准或是理解得不太准确也是可以原谅的,这怎么能叫做不负责任呢?大家是有话就说了,尽量帮助你,也并不是说某个人的办法一定可行,需要你在具体环境下用实践验证(因为不可能每个人都有你这样的的环境)。
        你说你是本着探讨的心态来问问题的,并且说这个论坛有些浮躁,我想你在这里严辞凿凿地说这个人不好,那个人不负责任,这本身就是一种浮躁了!技术探讨本不应该这样的。我们广开言路,听听大家不同的思路不是很好吗,只要能解决问题就好了。关键还是在于你自己要多查资料,问题最终还是由你来解决的,你才是问题的主角啊!
        csdn论坛很开放,版块很多,难免有人进来灌水!
        liuyi8903(风继续吹)和bzszp(SongZip),他们对论坛做的贡献是大家有目共睹的,你又何必在此抓别人的漏洞说个不停呢!
        哥们,成熟点吧!
      

  21.   

    ORACLE博大精深,众人皆是山中行者,所谓“高山仰止,景行行止”。
    每个人由于所处角度不同,想到的也就不同,答帖者所回复的一定是他最初想到的可能出现问题的地方。开办论坛的目的也应该就是促进大家交流!倒是希望楼主过个一年半载,再回来看看本帖吧!