Bo's Oracle Station

查看: 1620|回复: 0

课程第20/21次(2018-03-25星期日上下午):ASM和闪回

[复制链接]

1005

主题

1469

帖子

1万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
12012
发表于 2018-3-25 09:20:04 | 显示全部楼层 |阅读模式
ASM Diskgroup 没有自动挂起来:

  1. [root@station90 桌面]# oracleasm-discover
  2. Using ASMLib from /opt/oracle/extapi/64/asm/orcl/1/libasm.so
  3. [ASM Library - Generic Linux, version 2.0.4 (KABI_V2)]
  4. Discovered disk: ORCL:ASMDISK01 [307200 blocks (157286400 bytes), maxio 128]
  5. Discovered disk: ORCL:ASMDISK02 [307200 blocks (157286400 bytes), maxio 128]
  6. Discovered disk: ORCL:ASMDISK03 [307200 blocks (157286400 bytes), maxio 128]
  7. Discovered disk: ORCL:ASMDISK04 [307200 blocks (157286400 bytes), maxio 128]
  8. Discovered disk: ORCL:ASMDISK05 [307200 blocks (157286400 bytes), maxio 128]
  9. Discovered disk: ORCL:ASMDISK06 [307200 blocks (157286400 bytes), maxio 128]
复制代码
  1. [oracle@station90 ~]$ sqlplus /nolog

  2. SQL*Plus: Release 11.2.0.1.0 Production on Sun Mar 25 09:09:29 2018

  3. Copyright (c) 1982, 2009, Oracle.  All rights reserved.

  4. SQL> conn / as sysasm
  5. Connected.
  6. SQL> desc v$asm_diskgroup
  7. Name                                           Null?    Type
  8. ----------------------------------------- -------- ----------------------------
  9. GROUP_NUMBER                                            NUMBER
  10. NAME                                                    VARCHAR2(30)
  11. SECTOR_SIZE                                            NUMBER
  12. BLOCK_SIZE                                            NUMBER
  13. ALLOCATION_UNIT_SIZE                                    NUMBER
  14. STATE                                                    VARCHAR2(11)
  15. TYPE                                                    VARCHAR2(6)
  16. TOTAL_MB                                            NUMBER
  17. FREE_MB                                            NUMBER
  18. HOT_USED_MB                                            NUMBER
  19. COLD_USED_MB                                            NUMBER
  20. REQUIRED_MIRROR_FREE_MB                            NUMBER
  21. USABLE_FILE_MB                                     NUMBER
  22. OFFLINE_DISKS                                            NUMBER
  23. COMPATIBILITY                                            VARCHAR2(60)
  24. DATABASE_COMPATIBILITY                             VARCHAR2(60)
  25. VOTING_FILES                                            VARCHAR2(1)

  26. SQL> select  NAME , STATE from v$asm_diskgroup;

  27. NAME
  28. --------------------------------------------------------------------------------
  29. STATE
  30. ---------------------------------
  31. DATA
  32. MOUNTED

  33. HIGHDATA
  34. DISMOUNTED

  35. FRA
  36. MOUNTED


  37. SQL> show parameter diskgroup

  38. NAME                                     TYPE
  39. ------------------------------------ ---------------------------------
  40. VALUE
  41. ------------------------------
  42. asm_diskgroups                             string
  43. FRA
  44. SQL> alter diskgroup highdata mount  [FORCE];

  45. Diskgroup altered.

  46. SQL>
复制代码

磁盘可以当作小容量来用:

  1. create diskgroup highdata high redundancy        failgroup f1
  2.   2        disk '/dev/raw/raw1' name d1  size 80M  , '/dev/raw/raw2' name d2  size 80M
  3.   3                                                failgroup f2
  4.   4        disk '/dev/raw/raw3'  name d3  size 80M , '/dev/raw/raw4' name d4 size 80M
  5.   5                                                failgroup f3
  6.   6*        disk '/dev/raw/raw5' name d5  size 80M  , '/dev/raw/raw6' name d6 size 80M
  7. SQL> /
复制代码
  1. select  * from v$asm_diskgroup;

  2. select  * from v$asm_disk  order by 1;

  3. select  * from v$asm_operation;

  4. select  * from V$ASM_CLIENT;

  5. select  * from V$ASM_ATTRIBUTE   order by group_number;

  6. alter diskgroup highdata set attribute 'compatible.asm'='11.2.0' ;

  7. select  * from V$ASM_TEMPLATE  order by group_number;

  8. select * from  V$ASM_ALIAS   where  lower(name) ='current.260.816169631';

  9. select * from v$asm_file where group_number=1 and file_number=260;



复制代码
  1. select  * from V$ASM_TEMPLATE  order by group_number;

  2. alter diskgroup data add  template temp1 attributes  (unprotected fine  );

  3. alter diskgroup highdata add template temp3 attributes (mirror fine  );

  4. alter diskgroup fra add template temp2 attributes (mirror fine  );

  5. alter diskgroup  data add alias '+DATA/orcl/datafile/users01.dbf' for '+DATA/orcl/datafile/users.259.816169553';

  6. select * from v$asm_alias  where lower(name) in ('users01.dbf',
  7.                                                          'users.259.816169553');

复制代码
  1. select  * from dba_data_files;

  2. create tablespace mydata datafile '+data/orcl/datafile/mydata01.dbf' size 5M;

复制代码
  1. select * from v$asm_alias where lower(name) ='mydata01.dbf';

  2. select  * from v$asm_file where group_number=1 and
  3.      file_number=267;
  4.      
  5. select * from v$asm_alias where  group_number=1 and
  6.      file_number=267;
复制代码
  1. create tablespace yourdata datafile '+data(temp1)/orcl/datafile/yourdata01.dbf' size 5M;
复制代码
  1. [oracle@station90 ~]$ sqlplus /nolog

  2. SQL*Plus: Release 11.2.0.1.0 Production on Sun Mar 25 15:56:57 2018

  3. Copyright (c) 1982, 2009, Oracle.  All rights reserved.

  4. SQL> conn hr/oracle_4U
  5. ERROR:
  6. ORA-28002: the password will expire within 7 days


  7. Connected.
  8. SQL> select  salary from employees where employee_id=100;

  9.     SALARY
  10. ----------
  11.      24000

  12. SQL> update employees set salary=25000  where employee_id=100;

  13. 1 row updated.

  14. SQL> commit;

  15. Commit complete.

  16. SQL> select  salary from employees as of scn 1387598  where employee_id=100;

  17.     SALARY
  18. ----------
  19.      25000

  20. SQL> select  salary from employees where employee_id=100;

  21.     SALARY
  22. ----------
  23.      25000

  24. SQL> select  salary from employees as of scn 1387597 where employee_id=100;

  25.     SALARY
  26. ----------
  27.      24000

  28. SQL> select  salary from employees as of  timestamp to_timestamp('2018-03-25:15:59:53','YYYY-MM-DD:HH24:MI:SS')    where employee_id=100;

  29.     SALARY
  30. ----------
  31.      24000

  32. SQL>
复制代码
  1. select  xid from v$transaction;

  2. --09001D001A040000
  3. select  *  from flashback_transaction_query
  4. where table_name='EMPLOYEES'  and logon_user='HR';
复制代码
  1. select  *  from flashback_transaction_query
  2. where table_name='T05310_A'  and logon_user='HR'  order by 3 ,5;

  3. select  versions_xid, versions_operation , versions_startscn ,a
  4.   from hr.t05310_a versions between scn minvalue and maxvalue
  5.   order by  3;
  6.   
  7. select  a from hr.t05310_a as of scn 1389474;

  8. select  t.row_movement  from dba_tables t
  9. where t.owner='HR' and t.table_name='T05310_A';

  10. alter table hr.T05310_A enable row movement;

  11. select  * from hr.t05310_a;
复制代码
  1. select  *  from flashback_transaction_query
  2. where table_name='TAB'   order by 3 desc  ,5 ;
  3.   
  4. select   d.SUPPLEMENTAL_LOG_DATA_MIN,
  5.             d.SUPPLEMENTAL_LOG_DATA_PK,
  6.             d.SUPPLEMENTAL_LOG_DATA_UI,
  7.             d.SUPPLEMENTAL_LOG_DATA_FK,
  8.             d.SUPPLEMENTAL_LOG_DATA_ALL
  9. from v_$database  d;

  10. ----
  11. alter database add supplemental  log data ;

  12. select   d.SUPPLEMENTAL_LOG_DATA_MIN,
  13.             d.SUPPLEMENTAL_LOG_DATA_PK,
  14.             d.SUPPLEMENTAL_LOG_DATA_UI,
  15.             d.SUPPLEMENTAL_LOG_DATA_FK,
  16.             d.SUPPLEMENTAL_LOG_DATA_ALL
  17. from v_$database  d;
  18.   
  19. alter database add supplemental  log data ;

  20. select  object_id from dba_objects where object_name ='T05310_B';
  21.   
  22. ---74740
  23.   select  *  from flashback_transaction_query
  24. where table_name='TAB'   order by 3 desc  ,5 ;
  25.   
复制代码


Screenshot.png





回复

使用道具 举报

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

本版积分规则

QQ|手机版|Bo's Oracle Station   

GMT+8, 2024-3-29 13:42 , Processed in 0.034117 second(s), 27 queries .

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