测试 DB Link(数据库链接)连通性 的方法取决于你使用的是哪种数据库。下面以常见数据库为例说明。
SELECT 简单查询(最常用)SELECT 1 FROM dual@db_link_name;
✅ 能正常返回结果,说明 DB Link 正常。
SELECT COUNT(*) FROM remote_table@db_link_name;
SELECT db_link, username, host
FROM user_db_links;
或
SELECT * FROM dba_db_links;
SELECT 1 FROM dual@db_link_name;
如果失败,Oracle 会返回详细错误信息(如 ORA-12170、ORA-02019 等)。
SELECT * FROM dblink(
'host=xxx dbname=xxx user=xxx password=xxx',
'SELECT 1'
) AS t(result int);
SELECT 1 FROM remote_table;
sp_testlinkedserverEXEC sp_testlinkedserver 'LinkedServerName';
✅ 无报错即连通。
SELECT TOP 1 1 FROM [LinkedServerName].[DatabaseName].[Schema].[Table];
EXEC sp_linkedservers;
网络是否通
ping 目标主机
telnet 主机 端口
数据库监听是否正常
lsnrctl statuspg_isready用户名 / 密码是否正确
权限是否足够
CREATE DATABASE LINK 权限防火墙 / 安全组是否放行端口
| 数据库 | 推荐测试方式 |
|---|---|
| Oracle | SELECT 1 FROM dual@dblink |
| PostgreSQL | dblink() 查询 |
| SQL Server | sp_testlinkedserver |
如果你能告诉我 具体数据库类型和版本,我可以给你更精确的测试 SQL 和排错步骤。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。