ORACLE中的数据库、服务名、实例的概念

王朝oracle·作者佚名  2008-05-31
窄屏简体版  字體: |||超大  

实例 就是治理相关库的内存结构的名字(由SGA、PGA、服务器进程、用户进程、后台进程等组成)

数据库 就是实际的磁盘上的文件(数据文件、日志文件、控制文件等),负责保存数据,但由对应的实例来操作它的数据

服务名 就是对外公布的名称,为网络监听服务

其实,在我们传统的概念里,数据库是一个统称的名字,在Oracle中,你可以把“数据库”理解成一个大概念,也要把它理解成一个小概念

1、一个Oracle数据库系统中可以同时安装几个数据库,每一个数据库对应一个唯

一的实例,但是OPS系统除外,可以多个实例同时对一个数据库操作,称为并行服务

2、只是一个名字,SID即是INSTANCE_NAME,SERVICE_NAMES主要用在监听器中,

为了方便吧,有些是为了传统习惯的延续,有些是为了更方便的使用

3、NET EASY CONFIG操纵的应该是主机字符串,是为客户端服务的

一个数据库可以对外公布多个服务名(SERVICE_NAMES)

一个客户端也可以用多个主机字符串连接到同一个数据库服务器上

4、一个OS上可以装多个Oracle数据库(小的概念),每个库可以对外公布多个服

务名,都通过init.ora和listener.ora来实现

今天运气真好,竟碰到了高手。

我得抓紧时间。

那么再问:

假如按你的解释,主机字符串,数据库服务名,数据库别名应该是同一个概念吧?

不太一样

service_names是对外的服务名,是服务器端使用的,一个库可以设置多个对外服

务名,以实现不同的目的

“主机字符串”的叫法主要在SQL*Plus中使用,是在客户端使用,

“数据库别名”主要用在一些开发工具连接Oracle服务器时使用,是通俗叫法

还有像配置ODBC时的Data Source的Service Name,

它们都是一个道理,指向的都是客户端tnsnames.ora文件中的一小段文本

差不多明白了。

但我还要问:

1。在SQL/PLUS中的登陆中,用USER/PWD@***,那么,这个***是什么呢?是主机字

符串还是服务名呢?

2。在设置ODBC时的用户和密码是不是一定要是ORACLE中的合法用户和密码?

3。 若要向ORACLE代理商购买ORACLE,是以用户数来算钱的。

那么,这个“用户”跟我们在ORACLE中通过CREATE USER USERNAME IDENTIFIED

BY PASSWord创建的用户是一个概念吗?若不是一样的话,他们有什么区别?

还有,ORCLE是通过什么机制来控制用户的最大数量的?要是我买了8个用户的,我

能开12个用户吗?

能给我的EMAIL吗?

1、主机字符串

2、是的,但不输也行,引用ODBC名时再给出也可以

3、不是,“用户数”指的是并发访问用户数

(我理解是同时间访问同一个内存地址的进程数)

买8个用户,建几十、上百个用户也没问题,只要峰值达不到并发数就可以了

(这里的用户数不是Oracle内部的自己建立的那种用户,应该是进程数)

(多台机器,每个Oracle内部用户多次调用,开多个进程)

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航