1.数据库----物理操作系统文件的集合。
2.实例----一组oracle进程和SGA。
两者之间的关系:一个数据库可以多个实例安装(Mount)和打开(open)。在任何时候,实例可以及时地装载并打开 一个单独的数据库。被实例打开并安装 的数据库在启动时不必相同。(数据库:实例=1:n)
实例:简单来说是一级操作系统进程和一些内存,它们在数据库上运行。
数据库:仅是一些文件(数据文件,临时文件,重做日志文件,控制文件)的集合。
一个实例交只有一组与之相关的文件。一个数据库只有一个在其上运行的实例。在oracle并行服务器(oracle parallel server,ops)的特殊情况下,可以在一个数据库上同时安装并打开多个实例 。
一个数据库对许多实例都是可以访问的,而实例则提供一次对一个数据库的访问。
在unix上只一个二进制oracle程序,它称为oracle它只是用不同的名字运行许多次。
3.发出命令:C:\>sqlplus scott/tiger@orcl
这里,客户端是程序sql*plus,scott/tiger是我的用户名和密码,orcl是tns服务器名称。TNS代表透明网络底层(Transparent Network Substrate),它是内建于Oracle客户端的“平台”软件,它处理远程连接----允许进行对待通信。
TNS连接串告诉oracle软件如何连接到远程数据库。一般来说,运行在机器上的客户端软件将读取一个称为TNSNANES.ORA的文件,这是一个纯文本的配置文件。可以在目录[ORACLE_HOME]\network\admin中找到,其中包含的条目看上去如下:
ORCL =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = yong-a215016052)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = orcl)
)
)
就是这个配置信息使Oracle客户端软件可以将orcl转化为一些有用的信息---一个主机名、“监听器”进程允许连接于其上的这台主机上的端口、在主机上希望连接的数据库的SID(site Identifier,站点标识符),等等。