有两台database server,分别为A,B.其中A中有多个用户要用到B中的一个用户下的几个table,对此,我针对A中的每个用户对B建了Database link,但是这样的话,前台在访问的时候经常会提示分布式处理事务过多,我用的是BS结构,请问有解决的方法吗?

解决方案 »

  1.   

    没有遇到过,,这类问题应该不是database link的问题。
    不过你可以试试只对一个用户建立database link,然后其他用户取表时加属主试试看了。
    我也关注!!
      

  2.   

    用A数据库中权限最高的那个用户(不一定是需要读表的用户,DBA即可)
    建立数据库链接,对远程数据库的表建立同义词,
    给其他需要读表的用户赋予相应权限,然后使用该表。
    或者不想用同义词的话,只能用用户名.表名@链接名来读取了。
      

  3.   

    我针对A中的每个用户对B建了Database link???两个数据库只需要建立一个DBLINK就OK了,只要你连接的用户有权限、
    访问别的用户信息就行。
      

  4.   

    建立database link
    建立同义词
      

  5.   

    create public database link 
    ...
    在init.ora里的设open_links
      

  6.   

    修改init*.ora
    global_names=false