您的位置:首页 > 其它

链表的几个经典问题

2008-03-27 21:21 232 查看
从在这个公司接触到Oracle数据库以后就产生了兴趣,不算浓厚但是想学好它(听说好有前途)。于是就开始了学习过程,学的很慢,现在也已基本把Oracle数据库的相关知识了解了一遍了,在准备学习更深层次的东西前,想分享一下我对Oracle的一些特别之处的理解。

就从这个基本的名字开始吧,我学习用的是11g ;

Oracle11g数据库出现了这三个看是一样容易迷糊的“名字”。

1. 数据库名(db_name):这个从名字上理解就行,就是简单的数据库的名字。

2. 实例名(instance_name):这是实例名,可以和数据库名一样,也可以不一样。主要是让外部识别的,共连接用的;创建的时候记录在spfile里面,例如:instance_name = ’ORCL‘;这个是可以更改的。

数据库名和实例名确定一个数据库,一个数据库中可以有多个实例,相互运行不受影响。

3. ORACLE_SID:这是Oracle数据库在操作系统中的环境变量(例:Linux下 对Oracle环境变量里的参数配置有这一项 ORACLE_SID=ORCL ),因此它是让操作系统识别的,也就是说操作系统就认识这个SID,其他的名字起的再好听,操作系统不会识别。但是这个SID是怎么来的呢?为什么操作系统不识别其他的名字呢?总是感觉他是自己起的,这样理解是不对的,自己起的名字一个就够了为什么还需要这么多种呢?SID是实例名和操作系统哈希出来的名字,他又独特的标志标志让操作系统记住。但是哈希出来的东西为什么没有变化呢,这就是Oracle和操作系统间的处理了。

理解就到此吧,其实挺好理解,他们的用处不同罢了;

如果一个数据库中有好多实例怎么启动呢,同时启动多个实例呢?

这个很简单因为操作系统只认识SID所以在启动每一个实例的时候只需要让操作系统识别到不同的SID就行了。例如:数据库中有三个实例怎么启动呢,SID分别是ORCL、TEST、MARK,怎么全部启动有两种方法:

1. 启动每一个实例前都修改环境变量,也就是把ORACLE_SID改成对应的实例名就行了,在启动。这样好理解,但是多麻烦呀,要是有N个实例可要死人了。

2. 就用Linux命令就行了,export ORACLE_SID = ’**';这样仅仅是让操作系统改变了认识,其他的都不变,如果出错也不影响任何参数,数据库的参数配置毕竟是慎重些好!

结束,这几天在研究oracle RMAN 感觉现在的数据库越来越强大,越来越安全。使用的人越来越笨;

过几天分享我的RMAN体会!
本文出自 “乌溜溜的黑眼珠” 博客,请务必保留此出处http://maidi.blog.51cto.com/2456163/721659
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: