測試 Dell EqualLogic iSCSI Storage (V)

測試 Oracle Database

上次借側的 Dell EqualLogic 還沒有測試完成, 接下來要測試 Dell 如何利用 Oracle 的備份機制, 加上 Storage 本身的 SnapShot 功能達到立即備份的目標.

首先在測試電腦安裝 Oracle 10g for Windows, 然後 Mount 一個 EqualLogic 所產生出來的 iSCSI 分享 Volume, 設定成 o:, 之後利用 Oracle 內建的 dbca (Database create assist) 軟體把資料庫建立在 O:oradata 內.

新增一個 Table 叫 EEE, 只有一個欄位就好, 拿來測試於資料寫入中, 做 SnapShot 作業系統能保留到那些資料.
create table eee(
ID VARCHAR2(10 BYTE) NOT NULL
);

進入 Sqlplus 執行一串重複填寫資料至資料庫的指令
——————————————-
Delete From EEE;

Commit;

DECLARE
v_Counter BINARY_INTEGER := 1;
BEGIN
WHILE v_Counter <= 100000 LOOP
INSERT INTO EEE (id) VALUES (v_Counter);
v_Counter := v_Counter + 1;
commit; #### 第一次忘了加
END LOOP;
END;

commit;

以上的部份可以存檔成一個 sql 指令檔案, 然後利用 @c:loop.sql 的方式來呼叫它.

接下來到 Dell EqualLogic 的 UI 介面上尋找剛剛建立起來的 SnapShot, 選擇之後按右鍵, 點選 Clone SnapShot 把該資料做成另一個 iSCSI 分享, 然後利用 Windows 的 iSCSI Initiators 去連結, 之後把原 OraData的整個資料覆蓋到 o:oradata 去.
Dell EqualLogic

之後進入 Sqlplus 透過以下的步驟把資料庫帶起來:
(1) Startup mount;
(2) Recover database;
(3) Shutdown immediate;
(4) Startup

第一次因為在 Insert 動作沒有加入 Commit 指令, 所以資料庫恢復後看到的 eee table 資料為空白, 第二次學乖了, 再每次 Insert 動作完成後立即 commit 強迫資料寫回到資料庫內, 所以看到資料庫內 60328 筆資料, 估計應該是在線上備份時的最後寫入資料
Dell EqualLogic

以下是 Dell EqualLogic 所使用的 Script, 期間必須透過 cygwin (參考: http://home.educities.edu.tw/forster/articles/cygwin.html) 這個 Perl 執行環境 for Windows. 其實跟先前 NetApp 的使用方式大同小異.
—————————————————————-
C:eqlscriptsAgent>SETLOCAL

C:eqlscriptsAgent>sqlplus /nolog @C:cygwintmpdobegin.sql

SQL*Plus: Release 10.2.0.1.0 – Production on 星期二 3月 31 17:05:10 2009

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

已連線.
ALTER TABLESPACE SYSTEM BEGIN BACKUP;
ALTER TABLESPACE UNDOTBS1 BEGIN BACKUP;
ALTER TABLESPACE SYSAUX BEGIN BACKUP;
ALTER TABLESPACE USERS BEGIN BACKUP;
ALTER TABLESPACE EXAMPLE BEGIN BACKUP;
OPEN
已切斷與 Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 – Production
With the Partitioning, OLAP and Data Mining options 的連線

C:eqlscriptsAgent>SET VOLUME=TP-OraData

C:eqlscriptsAgent>SET GROUP=10.1.99.140

C:eqlscriptsAgent>SET ACCNT=grpadmin

C:eqlscriptsAgent>SET PASSWD=eql

C:eqlscriptsAgent>SET PORT=3260

C:eqlscriptsAgent>SET EQLDRV=C:

C:eqlscriptsAgent>SET EQLDIR=eqlscriptswindows

C:eqlscriptsAgent>SET PERLEXE=C:CYGWINBINPERL

C:eqlscriptsAgent>SET AWKEXE=C:CYGWINBINPGAWK

C:eqlscriptsAgent>C:

C:eqlscriptsAgent>CD eqlscriptswindows

C:eqlscriptswindows>C:CYGWINBINPERL EqlCliExec.pl -g 10.1.99.140 -a grpadmin -p eql “volume select TP-OraData snapshot create-now offline”
Snapshot creation succeeded.
Snapshot name is TP-OraData-2009-03-31-17:06:32.1821

C:eqlscriptswindows>ENDLOCAL

C:eqlscriptsAgent>sqlplus /nolog @C:cygwintmpdoend.sql

SQL*Plus: Release 10.2.0.1.0 – Production on 星期二 3月 31 17:05:24 2009

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

已連線.
ALTER TABLESPACE SYSTEM END BACKUP;
ALTER TABLESPACE UNDOTBS1 END BACKUP;
ALTER TABLESPACE SYSAUX END BACKUP;
ALTER TABLESPACE USERS END BACKUP;
ALTER TABLESPACE EXAMPLE END BACKUP;
已切斷與 Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 – Production
With the Partitioning, OLAP and Data Mining options 的連線

發表迴響