poo*_*nam 2 database oracle express
我使用的是 Oracle 11g Express 版本。我已经创建了表、存储过程并且工作正常。我的用户“System”和密码“xyz”(安装期间的主用户)。
然后我使用同一用户创建了两个数据库“abc”和“pqr”。
我想创建从 abc 到 pqr 的数据库链接。
create database link testlink
connect to pqr identified by xyz
using '(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=localhost)(PORT=1521)) (CONNECT_DATA=(sid=xe)))';
Run Code Online (Sandbox Code Playgroud)
我收到错误“权限不足”。请帮帮我。
它应该是CONNECT TO用户名而不是数据库名称,如下图所示,它描述了CREATE DATABASE LINK. 我们在子句下定义数据库实例/服务USING connect_string。
先决条件
要创建私有数据库链接,您必须具有
CREATE DATABASE LINK系统权限。要创建公共数据库链接,您必须具有CREATE PUBLIC DATABASE LINK系统权限。此外,您必须拥有CREATE SESSION远程 Oracle 数据库的系统权限。
参考:创建数据库链接
演示
[oracle@orcl Desktop]$ sqlplus system/oracle
SQL> create user abc identified by abc;
User created.
SQL> create user xyz identified by xyz;
User created.
SQL> grant create session to abc;
Grant succeeded.
SQL> conn abc/abc
Connected.
SQL> create database link testlink connect to pqr identified by pqr using '(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=orcl.dba.com)(PORT=1522)) (CONNECT_DATA=(service=orcl)))';
create database link testlink connect to pqr identified by pqr using '(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=orcl.dba.com)(PORT=1522)) (CONNECT_DATA=(service=orcl)))'
*
ERROR at line 1:
ORA-01031: insufficient privileges
SQL> conn system/oracle
Connected.
SQL> grant create database link to abc;
Grant succeeded.
SQL> create database link testlink connect to pqr identified by pqr using '(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=orcl.dba.com)(PORT=1522)) (CONNECT_DATA=(service=orcl)))';^[[3~^C
SQL> conn abc/abc
Connected.
SQL> create database link testlink connect to pqr identified by pqr using '(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=orcl.dba.com)(PORT=1522)) (CONNECT_DATA=(service=orcl)))';
Database link created.
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
31566 次 |
| 最近记录: |