oracle 11g安装图解教程,如何安装oracle11g数据库详细过程( 三 )

  • 树形目录下的服务命名可以通过编辑菜单里的重命名菜单更改成任意合法字符组成的服务名称,注意服务名称前不能有空格字符,否则可能无法连接数据库服务器 。
  • 网络配置与访问方式完全解析三个配置文件 listener.ora 、sqlnet.ora 、tnsnames.ora ,都是放在目录:
    ORACLE_HOME\network\admin
    1. sqlnet.ora—– 作用类似于linux 或者其他unix 的nsswitch.conf 文件,通过这个文件来决定怎么样找一个连接中出现的连接字符串 。例如我们客户端输入
    sqlplus sys/oracle@orcl假如我的sqlnet.ora 是下面这个样子
    SQLNET.AUTHENTICATION_SERVICES= (NTS)NAMES.DIRECTORY_PATH= (TNSNAMES,HOSTNAME)那么,客户端就会首先在tnsnames.ora 文件中找orcl 的记录. 如果没有相应的记录则尝试把orcl 当作一个主机名,通过网络的途径去解析它的 ip 地址然后去连接这个ip 上GLOBAL_DBNAME=orcl 这个实例,当然我这里orcl 并不是一个主机名 。如果我是这个样子
    NAMES.DIRECTORY_PATH= (TNSNAMES)那么客户端就只会从tnsnames.ora 查找orcl 的记录, 括号中还有其他选项,如LDAP 等并不常用 。2.Tnsnames.ora—— 这个文件类似于unix 的hosts 文件,提供的tnsname 到主机名或者ip 的对应,只有当sqlnet.ora 中类似
    NAMES.DIRECTORY_PATH= (TNSNAMES) 这样,也就是客户端解析连接字符串的顺序中有TNSNAMES 是,才会尝试使用这个文件 。PROTOCOL:客户端与服务器端通讯的协议,一般为TCP ,该内容一般不用改 。HOST:数据库侦听所在的机器的机器名或IP 地址,数据库侦听一般与数据库在同一个机器上,所以当我说数据库侦听所在的机器一般也是指数据库所在的机器 。在UNIX 或WINDOWS 下,可以通过在数据库侦听所在的机器的命令提示符下使用hostname 命令得到机器名,或通过ipconfig(for WINDOWS) or ifconfig (for UNIX )命令得到IP 地址 。需要注意的是,不管用机器名或IP 地址,在客户端一定要用ping 命令ping 通数据库侦听所在的机器的机器名,否则需要在 hosts 文件中加入数据库侦听所在的机器的机器名的解析 。PORT:数据库侦听正在侦听的端口,可以察看服务器端的listener.ora 文件或在数据库侦听所在的机器的命令提示符下通过lnsrctl status [listener name] 命令察看 。此处Port 的值一定要与数据库侦听正在侦听的端口一样 。SERVICE_NAME:在服务器端,用system 用户登陆后,sqlplus> show parameter service_name 命令察看 。ORCL: 对应的本机,SALES 对应的另外一个IP 地址,里边还定义了使用主用服务器还是共享服务器模式进行连接 。
    连接的时候输入的 TNSNAMEORCL =(DESCRIPTION =(ADDRESS_LIST =# 下面是这个TNSNAME 对应的主机,端口,协议(ADDRESS = (PROTOCOL = TCP)(HOST = 127.0.0.1)(PORT = 1521)))(CONNECT_DATA =https://www.jinnalai.com/fenxiang/# 使用专用服务器模式去连接需要跟服务器的模式匹配,如果没有就根据服务器的模式自动调节(SERVER = DEDICATED)# 对应service_name ,SQLPLUS>;show parameter service_name; 进行查看(SERVICE_NAME = orcl)))# 下面这个类似SALES =(DESCRIPTION =(ADDRESS_LIST =(ADDRESS = (PROTOCOL = TCP)(HOST =dg1)(PORT = 1521)))(CONNECT_DATA =https://www.jinnalai.com/fenxiang/(SERVICE_NAME = sales)))注意:如果数据库服务器用MTS ,客户端程序需要用database link 时最好明确指明客户端用dedicated 直连方式, 不然会遇到很多跟分布式环境有关的ORACLEBUG。一般情况下数据库服务器用直接的连接会好一些,除非你的实时数据库连接数接近1000。3.listener.ora——listener 监听器进程的配置文件关于listener 进程就不多说了,接受远程对数据库的接入申请并转交给oracle的服务器进程 。所以如果不是使用的远程的连接,并且不需要使用OEM时,listener 进程就不是必需的,同样的如果关闭listener 进程并不会影响已经存在的数据库连接 。***Listener.ora***文件的例子

    推荐阅读