溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Oracle中scn講解

發布時間:2020-07-20 09:32:23 來源:網絡 閱讀:607 作者:ElanAir 欄目:數據庫

       SCN
System Change Numbers (SCNs)&System Commit Numbers(系統改變號&系統提交號)
A system change number (SCN) is a logical, internal time stamp used by Oracle Database;
********************************************************************************************************


SCN特點:
SCN本身也是一種時間
SCN是從你建庫開始單調遞增的序列;當你將SCN號用完了,數據庫就不能運行; 但是幾百年之內是不會用完的!
SCN是一個重要機制,在數據恢復、Data Guard、Streams復制、RAC 節點間的同步等各個功能中起著重要作用;
*********************************************************************************************************
Oracle數據庫SCN的種類:

1.數據庫當前的SCN

SYS@orcl11g> select current_scn from v$database;

CURRENT_SCN
--------------------
    1159919

SYS@orcl11g> select dbms_flashback.get_system_change_number() from dual;

DBMS_FLASHBACK.GET_SYSTEM_CHANGE_NUMBER()
----------------------------------------------------------------------
                                  1159919

SYS@orcl11g>select dbms_flashback.get_system_change_number() from dual
 2  union all
 3* select current_scn from v$database

DBMS_FLASHBACK.GET_SYSTEM_CHANGE_NUMBER()
----------------------------------------------------------------------
                              1159919
                                1159919

2.數據庫的檢查點scn(系統scn) -- 來源控制文件,用來標識當前數據庫的數據更新的信息(用來表示數據庫的更新行為)
SYS@orcl11g> select checkpoint_change#,current_scn from v$database;

CHECKPOINT_CHANGE#  CURRENT_SCN
-------------------------------- ----------------------
          1666278                  1676455

3.數據文件的檢查點scn --來源控制文件,標識每一個文件是什么時候同步的
SYS@orcl11g> select file#,checkpoint_change# from v$datafile order by 1;

   FILE#  CHECKPOINT_CHANGE#
-----------  --------------------------------
        1            1666278
        2            1666278
        3            1666278
        4            1666278
        5            1666278
        6            1666278
        7            1384282
        8            1666278
        9            1666278

SYS@orcl11g> select tablespace_name,file_id from dba_data_files where file_id=7;

TABLESPACE_NAME      FILE_ID
------------------------------ ----------
TBS02                                7

SYS@orcl11g> select tablespace_name,status from dba_tablespaces  where tablespace_name='TBS02';

TABLESPACE_NAME       STATUS
------------------------------ ------------
TBS02                            OFFLINE


4.數據文件頭部的檢查點SCN -- 來源于數據文件頭部

SYS@orcl11g> select file#,checkpoint_change# from v$datafile_header;

   FILE#  CHECKPOINT_CHANGE#
  --------- ---------------------------------
        1            1676699
        2            1676699
        3            1676699
        4            1676699
        5            1676699
        6            1676699
        7            1676699
        8            0
        9            1676699

9 rows selected.
如果是0的話,說明數據文件已經離線,不再讀取這個數據文件

5.數據文件的last_change# --數據文件的關閉SCN(結束SCN)

SYS@orcl11g> select file#,checkpoint_change#,last_CHANGE# from v$datafile;

  FILE# CHECKPOINT_CHANGE# LAST_CHANGE#
---------- -------------------------------- ----------------------
        1            1737727                   (null)
        2            1737727                   (null)
        3            1737727                   (null)
        4            1737727                   (null)
        5            1737727                   (null)
        6            1737727                   (null)
        7            1737727                   (null)
        8            1737727                   (null)
        9            1737727                   (null)

那系統是如何產生一個最新的 SCN 的?
是由當時的 timestamp 轉換過來的。每當需要產生一個最新的 SCN 到 redo 記錄時,系統獲取當時的 timestamp,將其轉換為數字作為 SCN。

TIME & SCN的相互轉換函數:

SYS@orcl11g> select scn_to_timestamp(1906338) from dual;

SCN_TO_TIMESTAMP(1906338)
------------------------------------------------
26-JUN-13 10.52.09.000000000 AM


SYS@orcl11g> select timestamp_to_scn(to_timestamp('2013-06-26 10:53:27','yyyy-mm-dd hh34:mi:ss')) from dual;

TIMESTAMP_TO_SCN(TO_TIMESTAMP('2013-06-2610:53:27','YYYY-MM-DDHH24:MI:SS'))
-----------------------------------------------------------------------------------------------------------------
                                                           1906370

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女