zoukankan      html  css  js  c++  java
  • oracle--块信息深入解析

    一,创建

      Data Block是数据库中最小的I/O单元

      01,建立一个新的表空间

      查看默认表空间位置

    select TABLESPACE_NAME,FILE_NAME from dba_data_files;

      创建一个表空间放其他的地方把


    create
    tablespace test2 datafile '/orcl/app/table/test2.dbf' size 20m reuse autoextend on next 20m maxsize UNLIMITED extent management local;

      02,创建用户

    查看CDB

    select name,cdb from v$database;

    查看pDb

    SQL> select pdb_id,pdb_name,dbid,status,creation_scn from dba_pdbs;
    
        PDB_ID PDB_NAME DBID STATUS      CREATION_SCN
    ---------- -----------------------------------------------------------------------------------
         3 ORCLPDB   3877422513 NORMAL           1442756
         2 PDB$SEED   4118313826 NORMAL           1408751
         4 HRPDB   1506437541 NORMAL           4081006
         5 SALESPDB   1453096304 NORMAL           4087331

    查看PDB状态

    SQL> select con_id,dbid,NAME,OPEN_MODE from v$pdbs;
    
        CON_ID     DBID NAME      OPEN_MODE
    ---------- ---------- -----------------------------------------------------
         2 4118313826 PDB$SEED      READ ONLY
         3 3877422513 ORCLPDB      READ WRITE
         4 1506437541 HRPDB      READ ONLY
         5 1453096304 SALESPDB      READ ONLY

    创建使用者为test

    SQL> create user c##test identified by test;
    
    User created.

    切换PDB
    SQL>  show con_name;

    CON_NAME
    ------------------------------
    CDB$ROOT
    SQL> alter session set container=ORCLPDB;

    Session altered.

    SQL> show con_name;

    CON_NAME
    ------------------------------
    ORCLPDB
    创建表空间
    SQL> create tablespace test2 datafile '/orcl/app/table/test2.dbf' size 20M;

    Tablespace created.

    创建真正的用户

    SQL> create user test identified by test default tablespace test2;
    
    User created.
    授予权限
    SQL> grant dba to test

    Grant succeeded.

      03,建立数据

    SQL> create table t1 (id int,name varchar2(100));
    
    Table created.
    
    SQL> insert into t1 values(1,'A');
    
    1 row created.
    
    SQL> alter system checkpoint;
    
    System altered.
    
    SQL> col name for a10
    SQL> select  id,name,dbms_rowid.rowid_relative_fno(rowid) file#,dbms_rowid.rowid_block_number(rowid) block# from t1;
    
        ID NAME        FILE#     BLOCK#
    ---------- ---------- ---------- ----------
         1 A               1      32641
    
    SQL> select p.spid from v$session s,v$process p where s.paddr=p.addr and s.sid in (select userenv('sid') from dual);
    
    SPID
    ------------------------
    17124
    
    SQL>  alter system dump datafile 1 block 32641;
    
    System altered.
    
    SQL> select p.spid from v$session s,v$process p where s.paddr=p.addr and s.sid in (select userenv('sid') from dual);
    
    SPID
    ------------------------
    17124
    
    SQL> select p.spid from v$session s,v$process p where s.paddr=p.addr and s.sid in (select userenv('sid') from dual);
    
    SPID
    ------------------------
    17124
    
    SQL> select object_id from dba_objects where object_name='T1' and owner='SYS';
    
     OBJECT_ID
    ----------
         75798
    [oracle@node12c01 trace]$ more orcl_ora_20178.trc
    Trace file /orcl/app/oracle/diag/rdbms/node12c01/orcl/trace/orcl_ora_20178.trc
    Oracle Database 12c Enterprise Edition Release 12.2.0.1.0 - 64bit Production
    Build label:    RDBMS_12.2.0.1.0_LINUX.X64_170125
    ORACLE_HOME:    /orcl/app/oracle/product/12.1.0/db_1
    System name:    Linux
    Node name:    node12c01
    Release:    3.10.0-693.el7.x86_64
    Version:    #1 SMP Tue Aug 22 21:09:27 UTC 2017
    Machine:    x86_64
    Instance name: orcl
    Redo thread mounted by this instance: 1
    Oracle process number: 36
    Unix process pid: 20178, image: oracle@node12c01 (TNS V1-V3)
    
    
    *** 2019-04-16T05:29:55.899559-04:00 (CDB$ROOT(1))
    *** SESSION ID:(31.49582) 2019-04-16T05:29:55.899596-04:00
    *** CLIENT ID:() 2019-04-16T05:29:55.899601-04:00
    *** SERVICE NAME:(SYS$USERS) 2019-04-16T05:29:55.899605-04:00
    *** MODULE NAME:(sqlplus@node12c01 (TNS V1-V3)) 2019-04-16T05:29:55.899610-04:00
    *** ACTION NAME:() 2019-04-16T05:29:55.899614-04:00
    *** CLIENT DRIVER:(SQL*PLUS) 2019-04-16T05:29:55.899617-04:00
    *** CONTAINER ID:(1) 2019-04-16T05:29:55.899621-04:00
    
    Start dump data blocks tsn: 0 file#:1 minblk 32641 maxblk 32641
    Block dump from cache:
    Dump of buffer cache at level 4 for pdb=1 tsn=0 rdba=4226945
    Block dump from disk:
    buffer tsn: 0 rdba: 0x00407f81 (1/32641)
    scn: 0x5d140 seq: 0x01 flg: 0x06 tail: 0xd1400601
    frmt: 0x02 chkval: 0x6c32 type: 0x06=trans data
    Hex dump of block: st=0, typ_found=1
    Dump of memory from 0x00007FBF65C6A000 to 0x00007FBF65C6C000

    分析:

    数据头:
    buffer tsn: 0 rdba: 0x00419578 (1/103800)
    scn: 0x4ea6cf seq: 0x02 flg: 0x04 tail: 0xa6cf1002 frmt: 0x02 chkval: 0x5692 type: 0x10=DATA SEGMENT HEADER - UNLIMITED
    
    flg:0x01 (新建块)0x2(数据块延迟清洗推进scn和seq) 0X04(设置校验和) 0x08(临时块)
    type:0x06(表/索引块)
    frmt:  0x01(v7)  0x02(v8)
    
    Hex dump of block: st=0, typ_found=1
    Dump of memory from 0x00007F12ACAA4000 to 0x00007F12ACAA6000
    7F12ACAA4000 0000A210 00419578 004EA6CF 04020000  [....x.A...N.....]
    7F12ACAA4010 00005692 00000000 00000000 00000000  [.V..............]
    7F12ACAA4020 00000000 00000001 00000007 00001020  [............ ...]
    7F12ACAA4030 00000000 00000003 00000007 0041957C  [............|.A.]
    7F12ACAA4040 00000000 00000000 00000001 00000003  [................]
    7F12ACAA4050 00000000 00000000 00000000 00000001  [................]
    7F12ACAA4060 00000000 000125D4 40000000 00419579  [.....%.....@y.A.]
    7F12ACAA4070 00000007 00000000 00000000 00000000  [................]
    7F12ACAA4080 00000000 00000000 00000000 00000000  [................]
            Repeat 250 times
    7F12ACAA5030 00000000 00010000 00010001 00000001  [................]
    7F12ACAA5040 00000000 00000003 0041957B 0041957B  [........{.A.{.A.]
    7F12ACAA5050 00000000 00000000 00000000 00000000  [................]
            Repeat 249 times
    7F12ACAA5FF0 00000000 00000000 00000000 A6CF1002  [................]

    http://www.itpub.net/thread-1772905-1-1.html

     

  • 相关阅读:
    java基础面试
    GC 相关 ---垃圾回收机制
    JVM 内存管理--jvm内存的划分
    Java 中创建一个对象的过程?
    双亲委派模型(Parent Delegation Model)?
    4、ReactJs基础知识04--state&&生命周期
    3、ReactJs基础知识03--组件&&props
    2、ReactJs基础知识02--元素渲染
    1、ReactJs基础知识01--入门使用
    再次理解JSONP
  • 原文地址:https://www.cnblogs.com/kingle-study/p/10718573.html
Copyright © 2011-2022 走看看