设为首页收藏本站

Bo's Oracle Station

查看: 70|回复: 0

课程第55次(2018-11-17星期六晚上)

[复制链接]

745

主题

1118

帖子

8124

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
8124
发表于 2018-11-17 20:04:30 | 显示全部楼层 |阅读模式
Admin-managed RAC:
  1. [oracle@station23 ~]$ srvctl config database -d c01orcl
  2. Database unique name: c01orcl
  3. Database name: c01orcl
  4. Oracle home: /u01/app/oracle/product/11.2.0/dbhome_1
  5. Oracle user: oracle
  6. Spfile: +DATA/c01orcl/spfilec01orcl.ora
  7. Domain: example.com
  8. Start options: open
  9. Stop options: immediate
  10. Database role: PRIMARY
  11. Management policy: AUTOMATIC
  12. Server pools: c01orcl
  13. Database instances: c01orcl1,c01orcl2
  14. Disk Groups: DATA,FRA
  15. Mount point paths:
  16. Services:
  17. Type: RAC
  18. Database is administrator managed
复制代码

Policy-Managed RAC:
  1. [oracle@station37 ~]$ srvctl config database -d racdb
  2. Database unique name: racdb
  3. Database name: racdb
  4. Oracle home: /u01/app/oracle/product/11.2.0/dbhome_1
  5. Oracle user: oracle
  6. Spfile: +DATA/racdb/spfileracdb.ora
  7. Domain:
  8. Start options: open
  9. Stop options: immediate
  10. Database role: PRIMARY
  11. Management policy: AUTOMATIC
  12. Server pools: servpool
  13. Database instances:
  14. Disk Groups: DATA,FRA
  15. Mount point paths:
  16. Services: myserv
  17. Type: RAC
  18. Database is policy managed
复制代码

Policy-Managed就是serverpool:
  1. [oracle@station37 ~]$ srvctl config srvpool  -g servpool
  2. Server pool name: servpool
  3. Importance: 0, Min: 0, Max: 2
  4. Candidate server names:
复制代码
Free池和Generic池是不可删除的也不需要创建:
  1. [oracle@station37 ~]$ srvctl config srvpool
  2. Server pool name: Free
  3. Importance: 0, Min: 0, Max: -1
  4. Candidate server names:
  5. Server pool name: Generic
  6. Importance: 0, Min: 0, Max: -1
  7. Candidate server names:
  8. Server pool name: servpool
  9. Importance: 0, Min: 0, Max: 2
  10. Candidate server names:
复制代码
  1. [oracle@station37 ~]$ crsctl status  serverpool   -p
  2. NAME=Free
  3. IMPORTANCE=0
  4. MIN_SIZE=0
  5. MAX_SIZE=-1
  6. SERVER_NAMES=
  7. PARENT_POOLS=
  8. EXCLUSIVE_POOLS=
  9. ACL=owner:oracle:rwx,pgrp:oinstall:rwx,other::r-x

  10. NAME=Generic
  11. IMPORTANCE=0
  12. MIN_SIZE=0
  13. MAX_SIZE=-1
  14. SERVER_NAMES=
  15. PARENT_POOLS=
  16. EXCLUSIVE_POOLS=
  17. ACL=owner:oracle:r-x,pgrp:oinstall:r-x,other::r-x

  18. NAME=ora.servpool
  19. IMPORTANCE=0
  20. MIN_SIZE=0
  21. MAX_SIZE=2
  22. SERVER_NAMES=
  23. PARENT_POOLS=
  24. EXCLUSIVE_POOLS=
  25. ACL=owner:oracle:rwx,pgrp:oinstall:rwx,other::r--

  26. NAME=ora.servpool3
  27. IMPORTANCE=10
  28. MIN_SIZE=2
  29. MAX_SIZE=2
  30. SERVER_NAMES=station37 station38
  31. PARENT_POOLS=
  32. EXCLUSIVE_POOLS=
  33. ACL=owner:oracle:rwx,pgrp:oinstall:rwx,other::r--

复制代码

策略管理BA 指定数据库资源运行在哪个服务器池(排除 generic or free)。Oracle
Clusterware 负责将数据库资源放在一台服务器。
Policy managed: Database administrators specify in which server pool (excluding
generic or free) the database resource will run. Oracle Clusterware is
responsible for placing the database resource on a server.
服务器以如下次序被分配入服务器池:
Generic server pool
User assigned server pool
Free
Oralce Clusterware 使用服务器池的重要性决定分配服务器次序:
1. 按重要性次序分配服务器给所有服务器池,直到满足服务器池的最小数目要求
2. 按重要性次序分配服务器给服务器池,直到它们满足服务器池的最大数目要求
3. 默认,任何剩下的服务器加入 FREE 服务器池
策略管理数据库背后的目标是删除到 1 个特定实例或服务 服务的硬编码
数据库可以和 1 个服务器池关联(而不是特定的节点集)。服务器池决定被资源(数据库,服务,
第三方应用程序)所需的最小和最大服务器数目。
数据库实例将运行在已被分配给服务器池的服务器上。(使用 min_size 决定数据库必需运行
在哪些服务器,以及必需运行在多少服务器上)
既然被分配给服务器池的服务器可以动态地变更,这允许 Oracle 基于集群可用的服务器总
数动态地交付服务。
数据库实例将启动在足够多的服务器上(受制于服务器的可用性)。无需硬编码规定数据库实
例运行在哪些服务器上。
数据库的任何实例可以运行在任何节点上。在实例号和节点之间无固定的映射关系。
当服务器被释放/添加/删除时,他们按之前提及的规则被分配到存在的服务器池中。
理论上的例子
例如,如果 1 个集群,总共有 8 个节点组成,并且支持 3 个 RAC 数据库服务。每个数据库
将定义服务器的最小和最大数目。
假设 DB1 定义最小 4 台、最多 6 台服务器(重要性为 10),
假设 DB2 定义最小 2 台、最多 3 台服务器(重要性为 7),
假设 DB3 定义最小 2 台、最多 3 台服务器(重要性为 5)。
初始 8 节点将被配置成节点 1-4 被分配给 DB1,节点 5-6 被分配给 DB2,节点 7-8 被分
配给 DB3。如果节点 3 由于某种原因发生故障,系统将分配节点 7 或 8 给 DB1,因为其比
DB3 有更高的重要性而且最小需要 4 台服务器,即使将导致 DB3 降到最小服务器水平以下。
如果节点 3 被重新激活,将被立即分配给 DB3 以使数据库恢复到最小所需的服务器数。
如果第 9 个节点被添加到集群,将被分配给 DB1,因为其重要性最高而且未满足最大服务
器数。

创建serverpool,并且换serverpool:
  1. [oracle@station37 ~]$ srvctl add srvpool -h

  2. Adds a server pool to the Oracle Clusterware.

  3. Usage: srvctl add srvpool -g <pool_name> [-l <min>] [-u <max>] [-i <importance>] [-n "<server_list>"] [-f]
  4.     -g <pool_name>           Server pool name
  5.     -l <min>                 Minimum size of the server pool (Default value is 0)
  6.     -u <max>                 Maximum size of the server pool (Default value is -1 for unlimited maximum size)
  7.     -i <importance>          Importance of the server pool (Default value is 0)
  8.     -n "<server_list>"       Comma separated list of candidate server names
  9.     -f                       Force the operation even though some resource(s) will be stopped
  10.     -h                       Print usage
复制代码
加-f会成功:
  1. [oracle@station37 ~]$ srvctl add srvpool -g servpool3 -l 2 -u 2  -i 10 -n "station37,station38"
  2. PRCS-1009 : Failed to create server pool servpool3
  3. PRCR-1071 : Failed to register or update server pool ora.servpool3
  4. CRS-2736: The operation requires stopping resource 'ora.racdb.db' on server 'station37'
  5. CRS-2736: The operation requires stopping resource 'ora.racdb.myserv.svc' on server 'station37'
  6. CRS-2736: The operation requires stopping resource 'ora.racdb.db' on server 'station38'
  7. CRS-2736: The operation requires stopping resource 'ora.racdb.myserv.svc' on server 'station38'
  8. CRS-2737: Unable to register server pool 'ora.servpool3' as this will affect running resources, but the force option was not specified
  9. [oracle@station37 ~]$ srvctl add srvpool -g servpool3 -l 2 -u 2  -i 10 -n "station37,station38"  -f
复制代码
  1. [oracle@station37 ~]$ srvctl config srvpool
  2. Server pool name: Free
  3. Importance: 0, Min: 0, Max: -1
  4. Candidate server names:
  5. Server pool name: Generic
  6. Importance: 0, Min: 0, Max: -1
  7. Candidate server names:
  8. Server pool name: servpool
  9. Importance: 0, Min: 0, Max: 2
  10. Candidate server names:
  11. Server pool name: servpool3
  12. Importance: 10, Min: 2, Max: 2
  13. Candidate server names: station37,station38
复制代码
  1. srvctl modify database -d racdb -g servpool3
复制代码
  1. [oracle@station37 ~]$ srvctl config database -d racdb
  2. Database unique name: racdb
  3. Database name: racdb
  4. Oracle home: /u01/app/oracle/product/11.2.0/dbhome_1
  5. Oracle user: oracle
  6. Spfile: +DATA/racdb/spfileracdb.ora
  7. Domain:
  8. Start options: open
  9. Stop options: immediate
  10. Database role: PRIMARY
  11. Management policy: AUTOMATIC
  12. Server pools: servpool3
  13. Database instances:
  14. Disk Groups: DATA,FRA
  15. Mount point paths:
  16. Services: myserv
  17. Type: RAC
  18. Database is policy managed
复制代码




回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|手机版|Bo's Oracle Station   

GMT+8, 2019-1-19 07:42 , Processed in 0.084988 second(s), 24 queries .

快速回复 返回顶部 返回列表