利用Oracle SQL Developer创建database link数据库连接
来源:互联网 发布:国内编程语言排行2016 编辑:程序博客网 时间:2024/05/16 12:20
这其实是个小问题,创建dblink的语法语句随处可见,可我着实为了这个连接远程数据库的事情折腾了几天。
需求是这样的,在本地利用Oracle SQL Developer工具创建一个远程数据库A的连接,然后在该连接上建立另一个远程数据库B的连接,以便于两个数据库同步数据。
我以往在win系统上用PL/SQL的时候习惯了直接去配置oracle的tnsnames.ora文件,直接配置link然后在PL/SQL里执行@linkName就行了。
后来因为改用ubuntu系统所以使用了sqldeveloper,免安装且exe、sh同时支持很方便。
后来又换回win7系统还是用了这个,但是我配置远程连接的习惯还是没变,我依然会去tnsnames.ora里面直接配置link信息。
这次的配置原本在本地和服务器A上都是可以用的,后来客户服务器A上的jdk被客户重装了(这导致我在远程服务器上使用sqldeveloper时启动报错:无法启动java虚拟机,这个问题我网上找了各种解决方案均未成功,客户装的jdk是1.6的,我使用的sqldeveloper工具大概是3.0?我也忘了);
然后我本地的oracle被我卸载了,为了这个问题又给装回来了,结果却行不通了,每次执行sql语句@linkName都会报错:ORA-12154: TNS: 无法解析指定的连接标识符,这个问题我也在网上找了各种解决方案均未成功,后来我重新下载了最新版本的sqldeveloper4.1.3和匹配的最新版本的jdk-8,安装配置完执行sql发现还是同样的错误,在我一筹莫展求助朋友时,一个朋友说他从来都是用sql语句创建的databaselink,让我恍然大悟,我为啥要执着于配置tnsnames.ora呢?(心里在流泪,好受伤T^T)
然后我直接执行了这个create语句,创建成功。然后执行sql@linkName结果出来了。就这样我琢磨了两天的问题解决了。
创建dblink语句如下:
create database link linkName
connect to linkUser identified by linkPwd
using '(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = linkIP)(PORT = 1521))
)
(CONNECT_DATA =
(SERVICE_NAME = linkServiceName)
)
)';
使用dblink例如:select * from tableName@linkName;
这里linkName自己定,linkUser和linkPwd就是我这里的数据库B的用户名、密码,linkIP是B所在服务器的ip,1521是默认端口不一样的直接改,然后是linkServiceName是服务名,这里如果是SID名,就换成SID_NAME=linkSIDName。
我的电脑是win7系统64位。
嗯,说完了。
- 利用Oracle SQL Developer创建database link数据库连接
- 创建oracle数据库连接(database link)的两种方法
- 创建oracle数据库连接(database link)的两种方法
- 创建oracle DataBase Link
- oracle database link创建
- oracle database link创建
- oracle创建database link
- Oracle 创建database link
- 创建Oracle的database link
- ORACLE中创建database link
- oracle下创建database link
- oracle如何创建Database Link
- Oracle创建、删除DATABASE LINK
- Oracle数据库创建DATABASE LINK
- database:ubuntu oracle sql developer
- 在pl/sql developer中如何创建 database link及使用详解
- oracle sql Developer 新建数据库连接
- 如何在Oracle中创建database link
- 动态加载:ViewPager数量
- 分页查询(一)——真假分页学习
- 安卓Service的开启方式
- 吴晓培 2012.6.21 C/S-单播-线程
- Quartz2D 简单介绍及应用(图片裁剪)
- 利用Oracle SQL Developer创建database link数据库连接
- Nvidia回应Linux之父的指责 坚持不做任何让步
- python 使用微信远程控制电脑
- 关于安卓开发theme样式style中三个重要颜色colorPrimary、colorPrimaryDark、colorAccent
- 【dotnet跨平台】关于VS Code扩展和主题市场
- QgsApplication的功能总结
- 我们能拥有孩子多少年?
- 制作winPE、Linux、maxdos三合一U盘启动盘
- 在linux中添加字体