SCC9遠程集團復制(remote client copy)


背景知識
Client Copy中文說法叫集團復制,簡單的說就把區分client的數據(client-specific data)從一個client復制到另一個client下,可能是在同一台服務器的不同client之間進行復制,也可能是在不同的服務器之間進行復制,至於在不同的服務器之間進行數據的復制,對於client的ID可以是相同也可以不同。
Client Copy有三種方式:
  1. Local client copy. (Tcode:SCCL)
  2. Remote client copy.(Tcode:SCC9)
  3. Client Import/Export.(Tcode:SCC8/STMS/SCC7)
對於Remote client copy 方式,需要占用較大的網絡帶寬資源,對於數據庫的數據量較大的情況下,或者兩個系統之間網絡不夠暢通的情況下,可以選擇Client Import/Export方式。
Client Copy可以復制的數據內容有:
1.users data :賬號、權限等
2.cross client customizing:跨client的配置相關數據
3.application data :業務交易數據,物料主數據等等
4.client dependant customizing:非跨client的配置相關數據
 
場景說明
從生產機(PRD)的client 800 同步數據到測試機(QAS)的400,采用在線的方式,即生產和測試都不停機。
准備工作:
1. 進入SM59 創建一個RFC連接。
  • 連接類型為 3 ,即ABAP Connection(ABAP連接)
  • 在technical Settings標簽頁下,維護好生產機的IP地址或主機名和實例編號
  • 在Logon & Security標簽下,維護好生產機對應的登錄信息,值得說明的是,這個賬號建議設置為通信類型賬號。

  • 對於remote copy,源系統(生產機)的賬號,如本例的DDIC,必須要具有S_TABU_RFC權限對象的權限。
  • 測試連通性,以及是否可以遠程登錄
2. 進入SCC4,創建一個空client 400
  • 進入事務SCC4,切換到編輯狀態
  • 點擊“New Entries” 添加一空的client 400,填入必要的信息,保存。
  • 回到scc4初始界面,可以看到剛創建的client 400
這個新的client,會有一個默認的SAP*用戶和默認的“pass”密碼,注意密碼全部是小寫。
特別說明的一點是,這個SAP*賬號,是在數據庫里查詢不到的,應該是基於內核層級的;只有在RZ11中的參數文件中參數login/no_automatic_user_sapstar的值不為1時,該賬號才是激活的。
3 .如果對於數據一致性要求很高,還需要做一些其它的准備工作
  • 將源client和目標client都要鎖定,如果沒有修改過專家選項,默認在執行的復制的時候,會自動將兩個client鎖定,如果需要手動鎖定,可以使用函數SCCR_LOCK_CLIENT鎖定,SCCR_UNLOCK_CLIENT解鎖;
  • 將系統上活躍的用戶踢出(SM04),目的是防止業務操作產生數據不一致
  • 將后台作業全部掛起,使用SE38執行程序BTCTRNS1,釋放掛起的后台作業執行程序BTCTRNS2
  • SM13等待所有的數據庫更記錄更新完成
  • 通過RZ11修改參數rdisp/max_wprun_time的值為較大的值,例如3600秒

復制過程

1.進入SCC9
SCC9的初始界面類似如下:
 
2.Source destinat.選擇SM59創建的RFC連接
System Name 和Source Client會自動帶出。如下圖:
對於這里選定的RFC連接,在SM59中一定要維護正確的賬號和密碼,否則會報錯。
3.選擇Profile
選擇哪一個profile是根據需要來進行的,例如需要復制所有的數據到本client下,那么就選擇“SAP_ALL”,如果需要除了usr02表相關的用戶賬號主數據的其它所有數據,就選擇“SAP_APPL”,對於所有的可選擇的參數有如下:

當選擇一個Profiles后,可以通過菜單中的profile來查看包含的要復制的內容,如下圖所示:

例如,選擇的profile是“SAP_USER”,通過上面的profile display可以顯示如下:

下面是來自官方幫助文檔的一些對參數文件的說明:
Profile
說明
SAP_UONL
User master data without authorization profiles and roles
SAP_PROF
Only authorization profiles and roles
SAP_USER
User master data, user roles, and authorization profiles are copied. The client is not reset. 等同於是 SAP_UONL + SAP_PROF
SAP_CUST
Client-specific customizing including the authorization profiles is copied. The application data is deleted and the user master data of the target client is retained.
簡單的描述就是非跨client的配置
SAP_CUSV
SAP_CUST with variants
SAP_RMPC
SAP_CUSV with cross-client customizing,所有配置,獨立client的和跨client的都會被復制,還有權限參數文件,但是用戶賬號和角色等不會被復制
SAP_UCUS
SAP_CUST with user master data
SAP_UCSV
SAP_UCUS with variants,等同於SAP_CUST+SAP_USER+variants
SAP_RMBC
SAP_UCSV with cross-client customizing,所有配置,獨立client的和跨client的都會被復制,還有用戶主數據和權限,但是會刪除目標client中的業務數據
SAP_APPX
SAP_ALL 除去SAP_USER的所有數據
SAP_APPL
SAP_ALL 除去SAP_UONL的所有數據
SAP_ALL
All client data except change documents (see note 180949) and local data is copied.
SAP_RMPA
SAP_ALL with cross-client customizing,該參數復制的數據范圍比SAP_ALL多了一個跨client的配置
對於不會被復制的change documents的一點說明:
change documents相關的表主要有CDHDR, CDPOS, CDPOS_UID, CDPOS_STR, PCDHDR, PCDPOS, PCDPOS_UID, and PCDPOS_STR (CDPOS and PCDPOS belong to the cluster CDCLS)。如果目標client中的這些表不為空,則在進行client copy的時候會將目標client中的這些表清空。
4.定義並行處理的處理器數量
如下圖所示,兩個地方都可以進入並行處理的處理器數量設置的界面:
進入后,默認會有一個最大的處理器數量,可以不修改,也可以減少數量。

 
5.勾選Test Run,測試運行
在正式執行復制之前,一定要勾選這個復選框,進行模擬執行,以評估時間和確保沒有錯誤后,再取消勾選,然后正式執行復制。
7.進行RFC系統比較
通過這樣的比較,可以發現系統源client和目標client之間的不一致,如果存在不一致,會導致client copy失敗。

比較成功后,會有類似如下界面,如下界面是沒有不一致的界面:

8.測試執行

應用工具欄的兩個按鈕分別表示在后台執行和在前台執行,如果選擇了SAP_ALL等類似的profile,或者源系統數據很多,可以選擇第一個后台作業的方式測試執行,如果數據比較少,可以選擇第二個按鈕,在前台測試執行。
  • 在前台執行:
首先出現確認界面如下:

點擊Continue

點擊Simulation進行模擬,左下角會有提示:

 

此時可以在SCC3中查看進度和日志情況。
執行完成后,會有類似如下的界面:

 

點擊log Display會自動跳轉至SCC3事務,也可以手動輸入TCODE:SCC3進入查看。

雙擊進入,可以看到詳細:

 

通過點擊工具欄的File Log可以查看詳細日志信息,包括錯誤原因,相關的表的名稱等等。
僅當日志中沒有錯誤的時候,才可以取消勾選Test Run測試運行。
  • 在后台執行:
點擊工具欄第一個按鈕Schedule as Background Job按鈕后

對於Background Server是可選的,可以選擇。
  • 如果勾選 Immediately按鈕,並點擊工具欄按鈕Schedule Job,會彈出確認界面,同前台執行時彈出的確認界面一樣,點擊continue后,系統會自動創建一個后台作業,並立刻執行。此時,可以通過SCC3查看執行情況和日志。
  • 如果不勾選Immediately按鈕,點擊並點擊工具欄按鈕Schedule Job,會彈出后台作業計划任務的定制界面,如下:

保存后,會彈出確認確認界面,點擊continue,任務計划釋放完成。后續可以通過SCC3查看日志。
9.正式運行client copy
當上一步測試執行,沒有問題后,就可以在SCC9初始界面,取消Test Run復選框的勾選,正式執行。通常建議以后台作業的方式執行。
在SCC3事務中,可以隨時取消client copy,但是通常不建議這樣做。
專家設置
在SCC9初始界面的工具欄中,可以進入專家設置項,進行一些特殊的配置。

進入配置項界面:

 
對於這些選項的說明:
390OPT、CWITH_CURS、DWITH_CURS在S/4 HANA下不需要使用。
DEBUG_INFO:SAP不建議使用
AUTO_MAIL:出現錯誤終止時,自動發郵件,無實際用處。
GRAPHIC:與SCC3中的圖形監視功能重復。
LOCK_SYS:此選項使用最快的方法從數據庫表中刪除客戶端的所有條目。它可在 DB2/390 和 INFORMIX 下顯著提高性能,尤其是 INFORMIX。但是,在
Oracle 中,如果具有回滾段的表較大,則可能會出現問題,因此只有在最大表完全適合回滾段且所有進程都有足夠的回滾段時,才會使用該問題。
KEY_DELETE:僅當未選擇 LOCK_SYS 時,此選項才處於活動狀態。使用此選項,將使用算法(所有其他表繼續使用標准刪除算法刪除)刪除所有至少具有三個
關鍵字段且不是 POOL 或 CLUSTER 表的表,該算法會將具有相同第二個鍵值字段的所有表條目分組到組中。因此,如果第二個關鍵字段包含公司代碼,並且系統
中有三個公司代碼,則將分三步刪除表。因此,只有每種情況下最大的公司代碼必須適合數據庫的回滾區域。這同樣描述了使用此選項的最佳場景。
此選項也可能導致 TIME OUT 和數據庫回滾區出現問題。對於單個表,應用程序服務器的主要內存需求也可能非常大。
LARGEBLOCK:使用此選項,對於所有按塊工作的復制和刪除算法(正常塊大小在 16 到 32 MB 之間),塊大小將增加 8 倍。數據庫的滾動要求、應用程序服務器上的工作內存需求以及 TIME OUT 值的需求相應增加。復制進程在應用程序服務器上通常需要大約 30 - 50 MB 的可用工作內存。對於 LARGEBLOCK 選項,這可能會增加到 250 MB。
MAX_WPRUN:果此選項處於活動狀態,在所有使用的服務器上將 rdisp/max_wprun_time 自動設置為 9999。如果沒有終止,復制后該值將再次重置為舊值。所有更改都記錄在系統日志中。但是,更改只是臨時的,也就是說,它們在系統重新啟動時不是最后更改。
NO_RFCCHK:默認情況下無法顯示此選項。這樣做有一個很好的原因,因為忽略數據字典中的差異始終會導致不一致的目標客戶端。只要有可能,在進行復制之前,必須通過傳輸相應結構來同步數據字典中的差異。因此,此選項只能用作特殊實驗情況的最后選項 以及 SAP 不能為制作副本提供任何支持 使用此選項。不僅數據字典中的結構不同,而且訪問這些結構的程序邏輯也不同。在重新啟動或后續復制錯誤(使用事務 SCC3)后,使用 NO_RFCCHK 選項的復制可能具有“已成功終止”狀態,盡管由於數據字典差異而無法復
制大量表。
SINGLECOPY:此選項的邏輯是防止在復制階段結束時僅有一個進程(由特別大的表持有)處於活動狀態。在特別困難的情況下,此流程的工作清單中仍存在其他幾個非常大的表。最好通過執行測試運行來確定是否有必要使用此選項(以及針對哪些表)。對於日志文件末尾的各個大表而言,它可能很重要。但是,使用此選項復制過多的表或在另一進程完成之前長時間復制任何事件中的表沒有意義。注意: 要在開始復制所有進程時同時復制非常大的表,需要大量資源(當同時使用其它資源密集型選項之一時),尤其是在數據庫中。但是,通常,只需在單個復制列表中接受單個表即可達到預期效果
SMALLBLOCK:使用此選項,將取消激活動態塊大小說明,尤其對所有表使用小塊(512 行)。此選項還會取消激活 LARGEBLOCK 選項。因此,您還可以在特別弱或過載的系統上進行復制。
SRC_LOCK:使用此選項,源客戶端將自動鎖定以防止新登錄。但是,已經登錄的用戶可以保持活動狀態,如有必要,必須單獨通知用戶(這在目標客戶端中也是必需的)。如果通過終止復制等方式保留鎖,可通過調用事務 SCC3 將其從每個客戶端移除。或者,也可以通過客戶端管理(事務 SCC4)將其移除。當然,這也適用於目標客戶端中的掛鎖。
NOEXPORT:通過此選項,客戶端導出將阻止發布傳輸請求。之后,可以使用具有無條件模式 (UMODES) 18 的 tp 命令發布並導出它們。但是,在此必須考慮到在此期間未在源客戶端中進行其他客戶端復制(包括傳輸請求的副本 - 事務 SCC1)或導出。如果未考慮此操作,或者在釋放前已更改傳輸請求,SAP 無法提供 任意 支持。
IGNORE_CON:此選項具有兩個遠程復制功能。一方面,使用此選項還會復制結構中存在差異的表。因此,例如,源中的附加字段或不同的字段長度。在這種情況下,系統在技術上盡可能多地復制數據(對應於 MOVE-CORRESPONDING)。因此,如果表定義中存在不兼容差異,則與 NO_RFCCHK 選項組合使用遠程復制也成為可能。客戶必須根據個人情況,決定導致的數據丟失不嚴重的程度。另一方面,此選項還會復制由於備選字符集表(代碼頁)而出現轉換錯誤的表。消息目標 390表 & 的代碼頁轉換失敗如果目標系統不是 Unicode 系統,且源系統具有不同的代碼頁,則始終會出現這種情況。無法轉換的字符將替換為 '#'。一致性和適當狀態 目標客戶端的無法保證 由客戶負責。如果關鍵字段受此影響,可能會出現 TA 143 消息:錯誤:在客戶端中寫入錯誤:& 重復鍵值表
在這種情況下,受影響表的復制將終止,您必須找到另一種復制數據的方法,或者必須放棄客戶端復制。
NO_REL_CHK:此選項會放寬對相同基礎版本的檢查。如果目標系統的版本高於源系統版本或與源系統版本相同,則允許在具有 WAS 基礎的兩個系統之間進行復制。您可能需要同時使用選項 IGNORE_CON 和 NO_RFCCHK。此選項為實驗選項,SAP 無法為使用此選項編譯的客戶端提供任何支持。
VERIFY_CNT:如果您不確定使用的數據庫是否完全可靠,則可以使用此選項驗證復制結果。
此選項可與 RSCC_VERIFY 報表進行比較(比較note 579783)。但是,在復制期間已執行比較。但是,此選項可能會顯著增加運行時,具體取決於所使用的數據庫。
SKIP_EMPTY:使用此選項,將跳過完全為空的表。這可能導致主要含空表的系統運行時間更短(通常在新安裝之后或僅使用有限數量的模塊時)。此選項在IBM iSeries 上始終處於活動狀態。另請參閱note 517589。
CHK_ASSIGN:應在開發系統或合並系統中使用此選項。執行附加一致性檢查。這些檢查每 5,000 個表大約需要 1 分鍾的時間。但是,這可能會允許您防止異常終止。
ADDR_BLOCK:此選項可防止具有多個用戶的系統中出現異常終止。比較note 697445
 
另外比較實用的時Tables標簽頁和Packages標簽頁
可以在client copy中,排除指定的表或包,不進行復制。

 
 
 
 
 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM