签到成功

知道了

CNDBA社区CNDBA社区

Oracle 11g RAC 中手工建库 示例

2016-09-06 01:04 3369 0 原创 Oracle 11g
作者: dave


http://www.cndba.cn/dave/article/210

1    创建初始化文件

Oracle RAC 中spfile是存放在磁盘组里的,而本地的pfile里面是个指针,指向spfile。

[oracle@rac1 dbs]$ cat initanqing1.ora
SPFILE='+DATA/ANQING/PARAMETERFILE/spfileanqing.ora'[oracle@rac1 dbs]$



所以在我们手工建库的时候,需要先建本地的pfile,用pfile来建库,最后在修改过去。

RAC中的pfile如下:

[oracle@rac1 dbs]$ pwd
/u01/app/oracle/11.2.0/db_1/dbs[oracle@rac1 dbs]$ cat initcndba.ora
*.audit_file_dest='/u01/app/oracle/admin/cndba/adump'
*.audit_trail='db'
*.cluster_database_instances=2
*.cluster_database=FALSE
*.compatible='11.2.0.0.0'
*.control_files='+DATA'
*.db_block_size=8192
*.db_create_file_dest='+DATA'
*.db_domain=''
*.db_file_multiblock_read_count=16
*.db_name='cndba'
*.db_recovery_file_dest='+FRA'
*.db_recovery_file_dest_size=1018937856
*.db_unique_name='cndba'
cndba1.instance_name='cndba1'
cndba2.instance_name='cndba2'
cndba1.instance_number=1
cndba2.instance_number=2
*.job_queue_processes=10
*.log_archive_dest_1='location=+FRA'
*.log_archive_dest_state_1='ENABLE'
*.memory_target=418937856
*.open_cursors=300
*.processes=150
*.remote_login_passwordfile='exclusive'
*.standby_file_management='auto'
cndba1.thread=1
cndba2.thread=2
*.undo_management='AUTO'
cndba1.undo_tablespace='UNDOTBS1'
cndba2.undo_tablespace='UNDOTBS2'[oracle@rac1 dbs]$


2    创建相关目录

要保证所有pfile中出现的目录,都要存在,创建完之后,注意检查权限。
另外是rac 环境,需要在所有节点上创建。

[oracle@rac1 dbs]$ mkdir -p /u01/app/oracle/admin/cndba/adump[oracle@rac2 ~]$ mkdir -p /u01/app/oracle/admin/cndba/adump



3    使用pfile 将DB启动到nomount

http://www.cndba.cn/dave/article/210

[oracle@rac1 dbs]$ export ORACLE_SID=cndba[oracle@rac1 dbs]$ sqlplus / as sysdba

SQL*Plus: Release 11.2.0.3.0 Production on Thu Sep 10 11:01:32 2015

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

Connected to an idle instance.

SQL> startup nomount
ORACLE instance started.

Total System Global Area  417546240 bytes
Fixed Size            2228944 bytes
Variable Size          281021744 bytes
Database Buffers      125829120 bytes
Redo Buffers            8466432 bytes
SQL>


4    执行创建脚本

http://www.cndba.cn/dave/article/210

CREATE DATABASE cndba
USER SYS IDENTIFIED BY oracle
USER SYSTEM IDENTIFIED BY oracle
LOGFILE GROUP 1 ('+DATA') SIZE 50M BLOCKSIZE 512,
        GROUP 2 ('+DATA') SIZE 50M BLOCKSIZE 512,
        GROUP 3 ('+DATA') SIZE 50M BLOCKSIZE 512
MAXLOGFILES 5
MAXLOGMEMBERS 5
MAXLOGHISTORY 1
MAXDATAFILES 100
CHARACTER SET AL32UTF8
NATIONAL CHARACTER SET AL16UTF16
EXTENT MANAGEMENT LOCAL
DATAFILE '+DATA' SIZE 325M REUSE
SYSAUX DATAFILE '+DATA' SIZE 325M REUSE
DEFAULT TABLESPACE users
   DATAFILE '+DATA'
   SIZE 500M REUSE AUTOEXTEND ON MAXSIZE UNLIMITED
DEFAULT TEMPORARY TABLESPACE temp
   TEMPFILE '+DATA'
   SIZE 20M REUSE
UNDO TABLESPACE undotbs1
   DATAFILE '+DATA'
   SIZE 200M REUSE AUTOEXTEND ON MAXSIZE UNLIMITED;


创建完毕之后库已经读写了:

SQL> select name,open_mode from v$database;

NAME           OPEN_MODE
------------------ ----------------------------------------
CNDBA           READ WRITE



5    执行善后脚本

用SYS用户执行脚本创建相应视图和对象:

SQL> @?/rdbms/admin/catalog      --约3分钟
SQL> @?/rdbms/admin/catproc     -- 约17分钟
SQL> @?/rdbms/admin/owminst.plb   --约2分钟
SQL> @?/rdbms/admin/catclust.sql    --约1分钟


   
用system用户运行以下脚本:  -- 约1分钟http://www.cndba.cn/dave/article/210

SQL> conn system/oracle
SQL> @?/sqlplus/admin/pupbld
SQL> @?/sqlplus/admin/help/hlpbld.sql helpus.sql



    

6    创建SPFILE 和 PFILE

注意我们之前创建的时候,没有指定具体的控制文件的位置,所以需要先修改创建的pfile:http://www.cndba.cn/dave/article/210

[oracle@rac1 dbs]$ cat initcndba.ora
……
*.control_files='+data/cndba/controlfile/Current.270.890046845'
……



SPFILE 保存在磁盘组里:

SQL> conn / as sysdba
Connected.
SQL> create spfile='+DATA' from pfile='/u01/app/oracle/11.2.0/db_1/dbs/initcndba.ora';
File created.




分别在2个节点的$ORACLE_HOME/dbs 目录下创建PFILE文件:http://www.cndba.cn/dave/article/210

[oracle@rac1 ~]$ cd $ORACLE_HOME/dbs[oracle@rac1 dbs]$ ls
hc_anqing1.dat  hc_dave1.dat     initcndba.ora  init.ora      orapwdave1  _rm_dup_anqing1.dat
hc_cndba.dat    initanqing1.ora  initdave1.ora  orapwanqing1  orapwdave2  snapcf_dave1.f[oracle@rac1 dbs]$ touch initcndba1.ora



--进ASM 查看spfile 位置http://www.cndba.cn/dave/article/210

http://www.cndba.cn/dave/article/210

ASMCMD> cd parameterfile
ASMCMD> ls
spfile.274.890048969
ASMCMD> pwd
+data/cndba/parameterfile
ASMCMD> ls
spfile.274.890048969



修改pfile如下:

[oracle@rac1 dbs]$ vim initcndba1.ora[oracle@rac1 dbs]$ cat initcndba1.ora
SPFILE='+data/cndba/parameterfile/spfile.274.890048969'[oracle@rac1 dbs]$



同样在节点2创建initcndba2.ora 文件:

[oracle@rac2 dbs]$ touch initcndba2.ora[oracle@rac2 dbs]$ vim initcndba2.ora[oracle@rac2 dbs]$ cat initcndba2.ora
SPFILE='+data/cndba/parameterfile/spfile.274.890048969'[oracle@rac2 dbs]$



7    验证节点1

SQL> select comp_name,version,status from sys.dba_registry;

COMP_NAME                                VERSION              STATUS
---------------------------------------- -------------------- --------------------
Oracle Workspace Manager                 11.2.0.3.0           VALID
Oracle Database Catalog Views            11.2.0.3.0           VALID
Oracle Database Packages and Types       11.2.0.3.0           VALID
Oracle Real Application Clusters         11.2.0.3.0           VALID

4 rows selected.

SQL> select file_name from dba_data_files;

FILE_NAME
------------------------------------------------------------------------------------------------------------------------
+DATA/cndba/datafile/system.297.890046857
+DATA/cndba/datafile/sysaux.298.890046879
+DATA/cndba/datafile/undotbs1.299.890046899
+DATA/cndba/datafile/users.285.890046913

4 rows selected.

SQL> select file_name from dba_temp_files;

FILE_NAME
------------------------------------------------------------------------------------------------------------------------
+DATA/cndba/tempfile/temp.290.890046913

1 row selected.


SQL> select group#,thread# from v$log;

    GROUP#    THREAD#
---------- ----------
         1          1
         2          1
         3          1

3 rows selected.

SQL> col member for a50
SQL> select group#,member from v$logfile;

    GROUP# MEMBER
---------- --------------------------------------------------
         1 +DATA/cndba/onlinelog/group_1.295.890046847
         2 +DATA/cndba/onlinelog/group_2.296.890046849
         3 +DATA/cndba/onlinelog/group_3.268.890046853

3 rows selected.



节点1已经ok了。


8    配置节点2

创建节点2的undo表空间undotbs2http://www.cndba.cn/dave/article/210

SQL>  create undo tablespace undotbs2 datafile '+data' size 200m autoextend on maxsize unlimited;
Tablespace created.




创建thread 2的3组redo日志组并启用thread 2http://www.cndba.cn/dave/article/210

SQL> alter database add logfile thread 2 ('+data') size 50m;
SQL> alter database add logfile thread 2 ('+data') size 50m;
SQL> alter database add logfile thread 2 ('+data') size 50m;
SQL> alter database enable thread 2;

SQL> select a.group#,a.thread#,b.member from v$log a,v$logfile b where a.group#=b.group#;

    GROUP#    THREAD# MEMBER
---------- ---------- --------------------------------------------------
         1          1 +DATA/cndba/onlinelog/group_1.295.890046847
         2          1 +DATA/cndba/onlinelog/group_2.296.890046849
         3          1 +DATA/cndba/onlinelog/group_3.268.890046853
         4          2 +DATA/cndba/onlinelog/group_4.276.890050331
         5          2 +DATA/cndba/onlinelog/group_5.277.890050445
         6          2 +DATA/cndba/onlinelog/group_6.278.890050453

6 rows selected.



修改参数cluster_database开启群集

SQL> shutdown immediate
Database closed.
Database dismounted.
ORACLE instance shut down.
SQL> exit
Disconnected from Oracle Database 11g Enterprise Edition Release 11.2.0.3.0 - 64bit Production
With the Partitioning, Real Application Clusters, Automatic Storage Management, OLAP,
Data Mining and Real Application Testing options[oracle@rac1 dbs]$ export ORACLE_SID=cndba1[oracle@rac1 dbs]$ sqlplus / as sysdba

SQL*Plus: Release 11.2.0.3.0 Production on Thu Sep 10 12:26:28 2015

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

Connected to an idle instance.

SQL> startup
ORACLE instance started.

Total System Global Area  417546240 bytes
Fixed Size            2228944 bytes
Variable Size          281021744 bytes
Database Buffers      125829120 bytes
Redo Buffers            8466432 bytes
Database mounted.
Database opened.
SQL> alter system set cluster_database=true scope=spfile;

System altered.


9    将数据库资源添加到CRS管理

在节点1用oracle用户运行:

[oracle@rac1 dbs]$ echo $ORACLE_HOME
/u01/app/oracle/11.2.0/db_1[oracle@rac1 dbs]$ srvctl add database -d cndba -o /u01/app/oracle/11.2.0/db_1 -c RAC -y MANUAL -a DATA,FRA[oracle@rac1 dbs]$ srvctl add instance -d cndba -i cndba1 -n rac1[oracle@rac1 dbs]$ srvctl add instance -d cndba -i cndba2 -n rac2[oracle@rac1 dbs]$ srvctl config database -d cndba
Database unique name: cndba
Database name:
Oracle home: /u01/app/oracle/11.2.0/db_1
Oracle user: oracle
Spfile:
Domain:
Start options: open
Stop options: immediate
Database role: PRIMARY
Management policy: MANUAL
Server pools: cndba
Database instances: cndba1,cndba2
Disk Groups: DATA,FRA
Mount point paths:
Services:
Type: RAC
Database is administrator managed[oracle@rac1 dbs]$



10    验证RAC



使用sqlplus 关闭所有节点上的cndba实例,然后用crs启动。

[grid@rac1 ~]$ srvctl start database -d cndba[grid@rac1 ~]$ srvctl status database -d cndba
Instance cndba1 is running on node rac1
Instance cndba2 is running on node rac2[grid@rac1 ~]$ crsctl stat res -t
--------------------------------------------------------------------------------
NAME           TARGET  STATE        SERVER                   STATE_DETAILS       
--------------------------------------------------------------------------------
Local Resources
--------------------------------------------------------------------------------
ora.DATA.dg
               ONLINE  ONLINE       rac1                                         
               ONLINE  ONLINE       rac2                                         
ora.FRA.dg
               ONLINE  ONLINE       rac1                                         
               ONLINE  ONLINE       rac2                                         
ora.LISTENER.lsnr
               ONLINE  ONLINE       rac1                                         
               ONLINE  ONLINE       rac2                                         
ora.OCRVOTING.dg
               ONLINE  ONLINE       rac1                                         
               ONLINE  ONLINE       rac2                                         
ora.asm
               ONLINE  ONLINE       rac1                     Started             
               ONLINE  ONLINE       rac2                     Started             
ora.gsd
               ONLINE  OFFLINE      rac1                                         
               ONLINE  OFFLINE      rac2                                         
ora.net1.network
               ONLINE  ONLINE       rac1                                         
               ONLINE  ONLINE       rac2                                         
ora.ons
               ONLINE  ONLINE       rac1                                         
               ONLINE  ONLINE       rac2                                         
--------------------------------------------------------------------------------
Cluster Resources
--------------------------------------------------------------------------------
ora.LISTENER_SCAN1.lsnr
      1        ONLINE  ONLINE       rac1                                         
ora.cndba.db
      1        ONLINE  ONLINE       rac1                     Open                
      2        ONLINE  ONLINE       rac2                     Open                
ora.cvu
      1        ONLINE  ONLINE       rac1                                         
ora.dave.dave_taf.svc
      1        ONLINE  ONLINE       rac1                                         
ora.dave.db
      1        ONLINE  ONLINE       rac1                     Open                
      2        OFFLINE OFFLINE                               Instance Shutdown   
      3        ONLINE  ONLINE       rac2                     Open                
ora.dave.server_taf.svc
      1        ONLINE  ONLINE       rac1                                         
      2        ONLINE  ONLINE       rac2                                         
ora.oc4j
      1        ONLINE  ONLINE       rac1                                         
ora.rac1.vip
      1        ONLINE  ONLINE       rac1                                         
ora.rac2.vip
      1        ONLINE  ONLINE       rac2                                         
ora.rac3.vip
      1        ONLINE  INTERMEDIATE rac1                     FAILED OVER         
ora.scan1.vip
      1        ONLINE  ONLINE       rac1                                         [grid@rac1 ~]$





至此手工创建RAC 实例完成。


版权声明:本文为博主原创文章,未经博主允许不得转载。

用户评论
* 以下用户言论只代表其个人观点,不代表CNDBA社区的观点或立场
dave

dave

关注

人的一生应该是这样度过的:当他回首往事的时候,他不会因为虚度年华而悔恨,也不会因为碌碌无为而羞耻;这样,在临死的时候,他就能够说:“我的整个生命和全部精力,都已经献给世界上最壮丽的事业....."

  • 2237
    原创
  • 3
    翻译
  • 546
    转载
  • 186
    评论
  • 访问:6587771次
  • 积分:4242
  • 等级:核心会员
  • 排名:第1名
精华文章
    最新问题
    查看更多+
    热门文章
      热门用户
      推荐用户
        Copyright © 2016 All Rights Reserved. Powered by CNDBA · 皖ICP备2022006297号-1·

        QQ交流群

        注册联系QQ