olsnodes,这个命令用来显示集群点列表(grid即oracle rac的第三个安装包内的软件,可找到)

//集群名称
[grid@shdb02 ~]$ olsnodes -c
shfpdb-cluster
//集群有两个节点
[grid@shdb01 network-scripts]$ olsnodes
shdb01
shdb02
//集群的编号

[grid@fpdb02 ~]$ olsnodes -n
  shdb01 1
  shdb02 2

[grid@shdb02 ~]$ srvctl config asm
ASM home: /u01/app/11.2.0/grid
ASM listener: LISTENER

[grid@shdb02 ~]$ srvctl status listener
Listener LISTENER is enabled
Listener LISTENER is running on node(s): shdb02,shfpdb01

[grid@shdb02 ~]$ srvctl status instance -d fpmai -i fpmai1,fpmai2
Instance fpmai1 is running on node shdb01
Instance fpmai2 is running on node shdb02  

[grid@shdb02 ~]$ crs_stat -t|grep lsnr
ora....ER.lsnr ora....er.type ONLINE ONLINE shdb01
ora....N1.lsnr ora....er.type ONLINE ONLINE shdb02
ora....01.lsnr application ONLINE ONLINE shdb01
ora....02.lsnr application ONLINE ONLINE shdb02

[grid@shdb02 ~]$ srvctl config nodeapps -n shdb01 -a
-n <node_name> option has been deprecated.
Network exists: 1/10.128.51.0/255.255.255.0/eth0, type static
VIP exists: /shfpdb01-vip/10.128.51.23/10.128.51.0/255.255.255.0/eth0, hosting node shdb01

//查看集群的状态

[grid@shdb01 ~]$ crsctl status res -t
--------------------------------------------------------------------------------
NAME TARGET STATE SERVER(节点) STATE_DETAILS
--------------------------------------------------------------------------------
Local Resources
--------------------------------------------------------------------------------
ora.ARCH.dg
ONLINE ONLINE shdb01
ONLINE ONLINE shdb02
.....
ora.asm
ONLINE ONLINE shdb01 Started
ONLINE ONLINE shdb02 Started
ora.gsd
OFFLINE OFFLINE shdb01
OFFLINE OFFLINE shdb02
...
ora.registry.acfs
ONLINE ONLINE shdb01
ONLINE ONLINE shdb02
--------------------------------------------------------------------------------
Cluster Resources
--------------------------------------------------------------------------------
ora.LISTENER_SCAN1.lsnr
1 ONLINE ONLINE shdb02
ora.cvu
1 ONLINE ONLINE shdb02
ora.fp.db
1 ONLINE ONLINE shdb01 Open //已打开
2 ONLINE ONLINE shdb02 Open //已打开
ora.htc.db
1 OFFLINE OFFLINE Instance Shutdown
2 OFFLINE OFFLINE Instance Shutdown
ora.hts.db
1 ONLINE ONLINE shdb01 Open
2 ONLINE ONLINE shdb02 Open
ora.oc4j
1 ONLINE ONLINE shdb01
ora.scan1.vip
1 ONLINE ONLINE shdb02
ora.shdb01.vip
1 ONLINE ONLINE shdb01
ora.shdb02.vip
1 ONLINE ONLINE shdb02

网络层由各个节点的网络组件组成

[grid@shdb01 network-scripts]$ oifcfg iflist
eth0 10.128.51.0
eth1 10.128.53.0
eth1 169.254.0.0

[grid@shdb01 network-scripts]$ oifcfg getif
eth0 10.128.51.0 global public
eth1 10.128.53.0 global cluster_interconnect

[grid@shdb01 network-scripts]$ oifcfg getif -type public
eth0 10.128.51.0 global public

查看数据库,查看当前节点信息

[grid@shdb01 network-scripts]$ hostname
shdb01
[grid@shdb01 network-scripts]$ srvctl config database -d fp -a
Database unique name: fp
Database name: fp
Oracle home: /u01/app/oracle/product/11.2.0/db_1
Oracle user: oracle
Spfile: +DATA/fp/spfilefp.ora //用的是asm
Domain:
Start options: open
Stop options: immediate
Database role: PRIMARY
Management policy: AUTOMATIC
Server pools: fp
Database instances: fp1,fp2 //有两个实例
Disk Groups: DATA
Mount point paths:
Services:
Type: RAC
Database is enabled
Database is administrator managed
//解读信息,数据库名为fpmai , 他有两个数据库实例 fpmai1,fpmai2

综合以上信息,我们调研情况为
1、集群有2个节点 shdb01,shdb02
2、集群中有一个数据库名为fpmai
3、fp数据库有2个实例.

现在我们在来讲可能就比较容易理解一些oarcle数据库服务器主要有两部分组成:物理数据库和数据库管理系统
1、实例
     数据库管理系统是用户和物理数据库之间的一个中间层,是软件层。这个软件层具有一定的结构,这个结构又被称为实例结构。
    在启动数据库时,oracle首先要在内存中获取、划分、保留各种用途的区域,运行各种用途的后台进程,即创建一个实例(instance),
    然后由该实例装载、打开数据库,最后由这个实例来访问和控制数据库的各种物理结构。
   数据库至少由一个oracle实例引用,该实例由oracle系统标识符(system identity)唯一标识,用于区别此计算机上的任何其他实例。

登录某实例
[grid@shdb01 network-scripts]$ export ORACLE_SID=fp1
[grid@shdb01 network-scripts]$ echo $ORACLE_SID
fpmai1

[grid@shdb02 ~]$ srvctl status instance -d fp -i fp1
Instance fp1 is running on node shdb01  //实例fpmai1运行在shfpdb01节点

[grid@shdb02 ~]$ srvctl status instance -d fp -i fp2
Instance fp1 is running on node shdb02  //实例fpmai2运行在shfpdb02节点

[grid@shdb01 network-scripts]$ sqlplus / as sysdba

SQL*Plus: Release 11.2.0.4.0 Production on Thu Mar 10 19:47:11 2022

Copyright (c) 1982, 2013, Oracle. All rights reserved.

Connected to an idle instance.  //已经连接到某

2、通过实例来连接、使用数据库。

  在启动数据库并使用数据库的时候,实际上是连接到该数据库的实例.
所以实例是用户和数据库之间的一个中间层。(客户端---》实例---》数据库)
实例是由操作系统的内存结构和一系列进程所组成的,可以启动和关闭。

3、每个实例都要用称为SID的符号来区分

   一台计算机上可以创建多个oracle数据库,当同时要使用这些数据库时,就要创建多个实例。
为了不使这些实例相互混淆,每个实例都要用称为SID的符号来区分,即创建这些数据库时填写的数据库SID。 数据库实例是用户访问数据库的中间层,是使用数据库的手段,它为用户访问数据库提供了必要的内存空间和多个工作进程,它是动态的、临时的, 简单的说,Oracle实例就是由内存空间和工作进程两部分组成。 我们只能通过实例操作数据库,
同一时间,一个实例只能打开一个数据库,也就是一个实例只能操作或管理一个数据库,但一个数据库可以被多个是实例打开。
实例可以在没有数据文件的情况下单独启动,(startup nomount)但这通常是没有意义的,
一个实例在生成期内只能装载(alter database mount)和打开(alter database open)数据库。

4、ORACLE实例有两种类型:单进程实例 和 多进程实例。

单进程ORACLE(又称单用ORACLE)是一种数据库系统,一个进程执行全部ORACLE代码。由于ORACLE部分和客户应用程序不能分别以进程执行,
所以ORACLE的代码和用户的数据库应用是单个进程执行。在单进程环境下的ORACLE 实例,仅允许一个用户可存取。例如在MS-DOS上运行ORACLE 。 多进程ORACLE实例(又称多用户ORACLE)使用多个进程来执行ORACLE的不同部分 ,对于每一个连接的用户都有一个进程。
在多进程系统中,进程分为两类:用户进程 和ORACLE进程。当一用户运行一应用程序,如PRO*C程序或一个ORACLE工具(如SQL*PLUS),为用户运行的应用建立一个用户进程。

Oracle系统的进程包括三种类型

①用户进程
②服务进程
③后台进程

5、实例名(instance_name)

数据库实例名(instance_name)用于对外部连接。在操作系统中要取得与数据库的联系,必须使用数据库实例名。
例如,要去连接一个数据库服务器,就必须知道其数据库实例名。 查询当前数据库实例名
方法一:select instance_name from v$instance;
方法二:show parameter instance_name
方法三:在参数文件中查询。

6、服务名(Service_name)

该参数是oracle8i新引进的。在8i以前,我们用SID来表示标识数据库的一个实例,但是在Oracle的并行环境中,一个数据库对应多个实例,这样就需要多个网络服务名,设置繁琐。
为了方便并行环境中的设置,引进了Service_name参数,该参数对应一个数据库,而不是一个实例,而且该参数有许多其它的好处。该参数的缺省值为Db_name.
Db_domain,即等于Global_name。
一个数据库可以对应多Service_name,以便实现更灵活的配置。该参数与SID没有直接关系,即不必Service name 必须与SID一样。
如果数据库有域名,则数据库服务名就是全局数据库名,否则,数据库服务名与数据库名相同。 查询当前数据库服务名
方法一:select value from v$parameter where name = ‘service_name’;
方法二:show parameter service_name
方法三:select instance_namefrom v$instance;
方法四:在参数文件中查询。 注意:方法三:select instance_namefrom v$instance; 的值是来自操作系统的oracle_sid,oracle_sid是操作系统的环境变量。

Oracle数据库包括两个部分数据库和数据库实例的更多相关文章

  1. ORACLE如何比较两个数据库的差异

    ORACLE怎么比较两个数据库的差异 方法1:使用PL-SQL工具 点击 工具->比较用户对象

  2. .Net 中读写Oracle数据库常用两种方式

    .net中连接Oracle 的两种方式:OracleClient,OleDb转载 2015年04月24日 00:00:24 10820.Net 中读写Oracle数据库常用两种方式:OracleCli ...

  3. oracle使用DataBase Configuration Assistant创建、删除数据库

    可以使用DataBase Configuration Assistant来创建一个心得数据库.Database Configuration Assistant简称是DBCA,是创建.配置以及管理数据库 ...

  4. [转]oracle学习入门系列之五内存结构、数据库结构、进程

    原文地址:http://www.2cto.com/database/201505/399285.html 1 Oracle数据库结构 关于这个话题,网上一搜绝对一大把,更别提书籍上出现的了,还有很多大 ...

  5. Gartner 2018 数据库系列报告发布 巨杉数据库连续两年入选

    近期,Gartner陆续发布了2018年的数据库系列报告,包括<数据库魔力象限><数据库核心能力>以及<数据库推荐报告>.其中,SequoiaDB巨杉数据库作为业界 ...

  6. ADOdb 支持的数据库包括哪些?

    ADOdb 支持的数据库包括 MySQL, PostgreSQL,Interbase,Firebird,Informix,Oracle,MS SQL 7,Foxpro,Access,ADO,Sybas ...

  7. 基于Oracle的SQL优化(社区万众期待 数据库优化扛鼎巨著)

    基于Oracle的SQL优化(社区万众期待数据库优化扛鼎巨著) 崔华 编   ISBN 978-7-121-21758-6 2014年1月出版 定价:128.00元 856页 16开 编辑推荐 本土O ...

  8. oracle数据库使用心得之与SQL serve数据库的差异

    网上对于SQL数据库的使用比较详细,但是对于Oracle的使用比较少,本文特别适合学过SQL数据库但是工程需要使用Oracle数据的编程人员查看, 时间匆忙,文章可能写得不够详细,希望有人指出错误或者 ...

  9. C++连接mysql数据库的两种方法

    本文主要介绍了C++连接mysql数据库的两种方法,希望通过本文,能对你有所帮助,一起来看. 现在正做一个接口,通过不同的连接字符串操作不同的数据库.要用到mysql数据库,以前没用过这个数据库,用a ...

随机推荐

  1. MySQL between and 边界测试

    看到有一些博客说 between and 有不含边界的情况,于是测试了一把,记录如下.先说结论:between and 不存在不含边界的情况 1. between and 是包含边界的 id betw ...

  2. python+pytest接口自动化(9)-cookie绕过登录(保持登录状态)

    在编写接口自动化测试用例或其他脚本的过程中,经常会遇到需要绕过用户名/密码或验证码登录,去请求接口的情况,一是因为有时验证码会比较复杂,比如有些图形验证码,难以通过接口的方式去处理:再者,每次请求接口 ...

  3. HC-05蓝牙模块使用教程

    1.接线 蓝牙模块 与 USB转TTL模块的接线: 5V->5V GND->GND RX->TXD TX->RXD 2.调试 给蓝牙模块上电,手机端下载蓝牙串口助手SPP,手机 ...

  4. 一个lseek引起的思考

    先看一段代码: int find_value(int fd) { int ret; char buff[8] = ""; struct timeval st,ed; long lo ...

  5. 基于MRS-ClickHouse构建用户画像系统方案介绍

    业务场景 用户画像是对用户信息的标签化.用户画像系统通过对收集的各维度数据,进行深度的分析和挖掘,给不同的用户打上不同的标签,从而刻画出客户的全貌.通过用户画像系统,可以对各个用户进行精准定位,从而将 ...

  6. Redis 如何设置密码及验证密码?

    设置密码:config set requirepass 123456 授权密码:auth 123456

  7. Django中间件 (middleware)

    中间件是处理django的请求和响应的框架级别的钩子,本质是一个类(直白一点中间件是帮助我们在视图函数执行之前和执行之后都可以做一些额外的操作) 由于其影响的是全局,所以需要谨慎使用,使用不当会影响性 ...

  8. scrapy基于请求传参实现深度爬取

    请求传参实现深度爬取 请求传参: 实现深度爬取:爬取多个层级对应的页面数据 使用场景:爬取的数据没有在同一张页面中 在手动请求的时候传递item:yield scrapy.Request(url,ca ...

  9. js技术之分割split()

    案例:把所有单词以空格为分割并将首字母转为大写 <!DOCTYPE html><html lang="en"><head> <meta c ...

  10. Logistic 回归模型的参数估计为什么不能采用最小二乘法?

    logistic回归模型的参数估计问题,是可以用最小二乘方法的思想进行求解的,但和经典的(或者说用在经典线性回归的参数估计问题)最小二乘法不同,是用的是"迭代重加权最小二乘法"(I ...