因为才开始学习oracle,所以在开始存在很多问题。
1. 安装的时候很多没有安装上,不知道后面会出现什么问题。
2. sql developer使用的是jdk8,版本太高,也不知道后面会不会出现什么问题。
3. 刚开始的时候建立的两个数据库,连接不上,一直报错,最后发现是监听器没开。(因为重新装了一次,路径改变了,但是系统还是使用的之前的路径),linstener.ora保存很多相关信息。。。
3. 使用dblink注意的地方:
(1)新建dblink
create database link "testlink4"(链接名称)
connect to "system" identified by "3361836" (注意要打引号,不然会报错)
using 'test'; (注意是数据库名,不是连接名称)
(2)建好之后,可以在图形化界面进行查看
![](https://img-blog.csdn.net/20160813163025544?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center)
先测试一下,成功之后再进行后面的操作。
开始时,测试dblink一直报错:无法识别的标志符,最后查看tnsnames.ora才发现数据库名写成了连接名。
使用的代码:
create database link testlink4
connect to "system" identified by "3361836"
using 'test';
select *from AUD$@testlink4;(因为数据库存在lob什么的,然后报错,所以使用下面的代码)
Create global temporary table T_TEST_LOB1 on commit delete rows as
select * from AUD$@testlink4;
5. 一些重要的文件
listener.ora------listener 监听器进程的配置文件
关于listener 进程就不多说了,接受远程对数据库的接入申请并转交给oracle 的服务器进程。所以如果不是使用的远程的连接,并且不需要使用OEM时,listener 进程就不是必需的,同样的如果关闭listener 进程并不会影响已经存在的数据库连接。
Tnsnames.ora------ 这个文件类似于unix 的hosts 文件,提供的tnsname 到主机名或者ip 的对应,只有当sqlnet.ora 中类似
NAMES.DIRECTORY_PATH= (TNSNAMES) 这样,也就是客户端解析连接字符串的顺序中有TNSNAMES 是,才会尝试使用这个文件。
参考:
http://blog.163.com/js_xiaoyi/blog/static/196600094201210274837140/
http://blog.itpub.net/352988/viewspace-611978/
http://blog.csdn.net/xulei_19850322/article/details/8219023