Orcale的连接和常见概念

1.客户端的安装

客户端--安装选择 管理员

2.监听文件 和 本地net配置文件 缺失

问题:C:\app\myadmin\product\11.2.0\client_1\network\admin不见tnsnames.ora和listener.ora两文件
解决问题
        开始菜单里面找这个: 配置和移植工具 
        Net Configuration Assistant 
        进去后第一项是监听程序配置,配完就有listener.ora 
        第3项是本地Net服务名配置,配完就有tnsnames.ora
            服务名:SERVICE_NAME  
            网络协议:PROTOCOL = TCP
            主机名:(HOST = ***.***.***.***)
            端口(PORT = 1521))
            网络服务名:orcl
        方案二:手动创建

3.安装plsql

Product Code(产品编号):
serial Number(序列号):
password(口令):

4.服务器地址

服务器端:C:\My_Files\Oracle\app\oracle\product\11.2.0\server\bin
客户端:  C:\app\myadmin\product\11.2.0\client_1
oracle    默认端口号为:1521
mysql      默认端口号为:3306
初始化参数文件---启动实例---
    SPFILE--文件名为spfile_[sid].ora
数据库名(db_name)
数据库实例名(instance_name)
数据库域名(db_domain)、
服务名(service_name)、  Service_name参数对应一个数据库。如果不指定,默认的是Db_name. Db_domain,也就是global_name
系统环境变量(ORACLE_SID)。SID来表示标识数据库的一个实例。每个实例各不相同
Oracle 推荐的格式,因为对于集群来说,每个节点的SID 是不一样的,但是SERVICE_NAME 却可以包含所有节点。

SERVICE_NAME = orcl
    用户名 username    ***
    密码    Password  ***
    数据库 Database    ORCL
    连接作为            Normal      
    Select Oracle identifier type:
        1 - Service Name
        2 - SID

C:\app\myadmin\product\11.2.0\client_1\network\admin
tnsnames.ora中添加
ORACLR_CONNECTION_DATA = 
  (DESCRIPTION = 
    (ADDRESS_LIST = 
      (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1)) 
    ) 
    (CONNECT_DATA = 
      (SID = CLRExtProc) 
      (PRESENTATION = RO) 
    ) 
  )


C222 =
  (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = ***.***.***.***)(PORT = 1521))
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = orcl)
    )
  )

5.Orcale的Java API连接

数据库url连接最后一个 orcl代表的是配置的数据库 SID,而不是数据库名 或者 SERVICE_NAME
jdbc的驱动方式
Oraclejdbc驱动三种主要分类:
1JDBC OCI ocioracle call interface的缩写,此驱动类似于传统的ODBC 驱动。
    因为它需要Oracle Call Interface and Net8,所以它需要在运行使用此驱动的JAVA程序的机器上安装客户端软件,
    其实主要是用到orcale客户端里以dll方式提供的oci和服务器配置。

2JDBC Thin thinfor thin client的意思,这种驱动一般用在运行在WEB浏览器中的JAVA程序。
 它不是通过OCI or Net8,而是通过Java sockets进行通信,是纯java实现的驱动,
 因此不需要在使用JDBC Thin的客户端机器上安装orcale客户端软件,
 所以有很好的移植性,通常用在web开发中。
Java JDBC Thin Driver 连接 Oracle有三种方法
        格式一: Oracle JDBC Thin using a ServiceName: 
                         jdbc:oracle:thin:@//<host>:<port>/<service_name> 
                Example: jdbc:oracle:thin:@//192.168.2.1:1521/XE 
            注意这里的格式,@后面有//, 这是与使用SID的主要区别。 
        这种格式是Oracle 推荐的格式,因为对于集群来说,每个节点的SID 是不一样的,但是SERVICE_NAME 确可以包含所有节点。

        格式二: Oracle JDBC Thin using an SID: 
                 jdbc:oracle:thin:@<host>:<port>:<SID> 
        Example: jdbc:oracle:thin:@192.168.2.1:1521:X01A 
        Note: 
        Support for SID is being phased out. Oracle recommends that users switch over to usingservice names.

        格式三:Oracle JDBC Thin using a TNSName: 
                jdbc:oracle:thin:@<TNSName> 
        Example: jdbc:oracle:thin:@GL 
        Note: 
        Support for TNSNames was added in the driver release 10.2.0.1 
3JDBC KPRB 这种驱动由直接存储在数据库中的JAVA程序使用,
    Java Stored Procedures triggersDatabase JSP's。因为是在服务器内部使用,
    他使用默认或当前的会话连接来访数据库,不需要用户名密码等,也不需要数据库url

连接OrcaleURL
        jdbc:oracle:thin:@192.168.0.23:端口号(一般为1521):数据库名称","用户名","密码"
        "jdbc:oracle:thin:@10.10.20.15:1521:ora9"
连接sqlserver
        url=jdbc:microsoft:sqlserver://127.0.0.1:1433;

参考:

PLSQL Developer连接远程oracle配置 http://blog.csdn.net/tanguooo19866/article/details/8504564

blogroll

social