SID就是实例名。你在机器上创建多个实例,但是你每次只能运行一个实例(两个实例)不能同时运行,你的这几个实例都有自己独立的数据文件,日志文件,控制文件,参数文件等。它们直接没有任何关联。
一个数据库对应多个实例的情况是:比如RAC,是两个及以上的实例共享数据文件,日志文件等,在同一时刻都对外可用,这样的好处是就算其中一个实例出了问题,客户端还可以通过领外一个实例来使用数据库。
一个数据库对应多个实例的情况是:比如RAC,是两个及以上的实例共享数据文件,日志文件等,在同一时刻都对外可用,这样的好处是就算其中一个实例出了问题,客户端还可以通过领外一个实例来使用数据库。
解决方案 »
- 初学ORACLE,一个简单的删除问题
- 【紧急求救】PL/SQL数据库导入问题!~高手请进~急啊!在线等
- 请问如何写这个SQL
- 如何将oracle的数据库移植到mysql5.0上?
- 在win2000环境下安装developer6.0出错(也许是developer2000)
- 锁表
- 夜里的请求 修改字段出错 给分(100)
- 谁能告诉我IIF在Oracle和SQL Server中的语法(急)
- 如何在ORACLE中调优SQL,及跟踪
- 请各位大虾帮帮忙!
- 安装Oracle011g(64位)提示[INS-20802] Oracle Net Configuration Assistant 失败
- Oracle有没有类似SQL那样的事件探查器工器啊?
SID是在数据库建立的时候就已经确定的了?
NOMOUNT,启动数据库实例和读取数据库参数,依据参数分配合适的SGA和PGA给实例,并且启动核心的后台数据库进程(实例是由数据库进程和内存所组成)。从参数文件中读取相应的数据库名,进而可建立实例和数据间的关系。这时已经可以查询到一些动态性能视图
MOUNT,读取参数文件,主要读取的内容是SCN、数据文件、日志文件、归档文件、临时文件、UNDO文件的位置
OPEN,依据控制文件及参数文件的信息,打开数据库,主要是将数据文件置于OPEN状态,如果发现数据文件的SCN与控制文件的SCN不一致,则有SMON进程进行REDO和UNDO
SID主要用于在一些DBA操作以及与操作系统交互,从操作系统的角度访问实例名,必须通过ORACLE_SID,且它在注册表中也是存在的.
而数据库名是在安装数据库、创建新的数据库、创建数据库控制文件、修改数据结构、备份与恢复数据库时都需要使用到的。
以上三个,应该是 LZ 创建的用户(USER),不是实例,你安装在你的机器上库,会让你指定一个 SID ,我想LZ应该是在 Windows 上安装的,你到 服务 中看看 OracleServiceXXXX 服务有几个,如果有一个,就是一个SID ,其中 XXXX 就是实例名,如果有 5 个,就是 5个SID 。
On most platforms, the ORACLE_SID environment variable sets the SID. When connecting to an instance, clients can specify the SID in an Oracle Net connection or use a net service name. Oracle Database converts a service name into an ORACLE_HOME and ORACLE_SID.
每个库在建之时都要填一个服务名和sid,这玩意儿就是用来标识这个库的;--你连接oracle时不仅要说 ip、端口 还要说 sid 的 ;
最常见,大家惯用的orcl,就是个sid;
你也可以随便起一个~ fukioe什么的,哈哈~我暂时是这么理解的~