查看 DB Link(数据库链接)状态 的方法取决于你用的是哪种数据库。下面以 Oracle 为主(最常见),并补充 MySQL / PostgreSQL 的说明。
SELECT db_link, username, host FROM user_db_links;
SELECT db_link, owner, username, host FROM dba_db_links;
SELECT 1 FROM dual@db_link_name;
✅ 能返回结果 → DB Link 正常
❌ 报错(ORA-12154、ORA-02019、ORA-12541 等) → DB Link 异常
SELECT * FROM v$dblink;
说明:
SELECT * FROM dba_objects WHERE object_type = 'DATABASE LINK';
常见错误:
ORA-12154:TNS 无法解析ORA-02019:未找到 DB LinkORA-12541:无法连接远程监听ORA-01017:用户名/密码错误MySQL 没有 Oracle 那种 DB Link,但可用 FEDERATED 表 模拟。
SHOW TABLE STATUS WHERE Engine = 'FEDERATED';
SELECT * FROM federated_table LIMIT 1;
SELECT * FROM pg_extension WHERE extname = 'dblink';
SELECT dblink_connect('conn_name', 'host=xxx dbname=xxx user=xxx password=xxx');
SELECT * FROM dblink('conn_name', 'SELECT 1') AS t(a int);
| 数据库 | 查看方式 |
|---|---|
| Oracle | SELECT 1 FROM dual@dblink ✅ |
| Oracle | v$dblink |
| MySQL | FEDERATED 表 |
| PostgreSQL | dblink() 函数 |
如果你能告诉我:
我可以给你 精确到命令级别 的排查方案。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。