--我的命令行sql脚本:SQL> create public database link faq1 connect to faq identified by faq using 'faqOnline';create public database link faq1 connect to faq identified by faq using 'faqOnline'ORA-01031: insufficient privileges但是用plsql工具的database links 的new选项就可以建立dblink,而且select 能查到远程的数据。这是为什么呢,我的命令行有错吗,好像没有,但是为什么报权限问题呢,plsql工具登录的用户都是一样的,一个用sql脚本在建,一个用plsql自带的选项框来建。怎么差距那么大呢?

解决方案 »

  1.   

    要附上权限才行的。SQL>conn system/pwd;
    SQL>grant create database link to username;
      

  2.   


    你登录plsql的工具 和sqlplus时的用户不一样,而sqlplus的时候,用户没有这个权限。
      

  3.   

    我好像记得 using 'faqOnline',这个密码不需要加单引号吧?
      

  4.   


    LS的看错了,using引用的是服务名,不是密码
    identified by 对应的才是密码
      

  5.   

    'faqOnline'这个不是密码,这个是tnsnames.ora配置的数据库连接串的名字吧
      

  6.   

    你把SQL语句中的create public database link 改为create databse link建一个全局的DBLINK应该是要有DBA的身份或者用sys,system这两个用户
      

  7.   

    7楼的说对了,因为你建的是一个public database link
    而你用plsql工具建的不是public的
    去掉public就可以了
      

  8.   

    哥们,我现在遇到的问题是我用plsql登录到数据库A 在A上可以创建一个DBlink连接到数据库B,并且可以再A上查询操作B数据库中的数据。但是我用plsql登录到B上,在B上创建一个DBlink连接数据库A,则不能操作A中的数据操作的时候报下面的错误
    ORA-01017: invalid username/password; logon denied
    ORA-02063: 紧接着 line (起自 LPDBLINK)
    有谁遇到的没,帮忙解决一下 谢谢!