个人原创,转自请在文章开头显眼位置注明出处:https://www.cnblogs.com/sunshine5683/p/10048824.html
一、以后看一个oracleserver,可以使用如下语句
1、ps -ef|grep ora_|uniq : 查看oracle实例后台进程
2、ps -ef|grep ora_|cut -d ‘_’ -f3|uniq :过滤
3、ps -ef|grep ora_|cut -d ‘_’ -f3|sort|uniq :过滤排序
实例:存储的是内存结构与后台进程, 实例和后台进程是数据库启动的时候才配,实例处理oracle数据库的大部分操作,访问实例,v$instance,数据库是由物理文件和构造物理文件的逻辑文件做组成的,访问数据库v$database,一个实例对应并访问一个数据库:
可以看到上面的实例orcl访问了下面的数据库orcl,只要能看到以上两个名字,就说明oracleserver是个完整的oracleserver,但是如果将oracle启动到nomount阶段,这时候来查询实例名,再查询库名,会发现实例名正常查到,但是库名报如下错误:(下面将数据库强制关闭然后启动到nomount阶段)
将数据库启动到mount阶段,发现数据库名也可以查询,这个时候数据库物理结构是正常的,即部分结构正常,但是其逻辑结构是不正常的,下图可以看到,其物理结构是正常的
这个时候由于其逻辑结构是不正常的,我们访问一些资源是不能访问的,比如访问某个用户下面的资源,下面连接scott用户可以看到,是不能够连接的
要alter到open阶段,这个时候才是正常的,可以看到是可以连接的,也就是说完整的数据库是将其完全打开,即open,但是要改变其物理结构,必须要在mount阶段才可以。
这些就是oracleserver中的一些查看操作,当然在生产环境中实例名和库名是可以不一样,在oracle集群环境中中可以使用gv$instance查看实例名和库名(后续总结中详细解释)。