設為首頁收藏本站

艾歐踢論壇

 找回密碼
 立即註冊

QQ登錄

只需一步,快速開始

搜索
熱搜: 活動 交友 discuz
查看: 976|回復: 0
打印 上一主題 下一主題

Informix Online資料庫日常管理及維護

[複製鏈接]
跳轉到指定樓層
樓主
發表於 2016-4-2 23:53:48 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
一、啟動、關閉Informix資料庫

1.自動啟動Informix

啟動Online命令為:oninit

但一般情況下,將啟動命令建立在/etc/rc2.d目錄下,名字為S96informix,這樣當啟動作業系統時,Online隨之啟動。

編輯檔/etc/rc2.d/S96informix為如下內容:

INFORMIXDIR=/usr/informix
INFORMIXSERVER=picc_online
ONCONFIG=onconfig.picc
export INFORMIXDIR NFORMIXSERVER ONCONFIG
INFORMIXDIR/bin/oninit


修改檔案屬性如下:$chmod +x /etc/rc2.d/S96informix

2.自動關閉Informix

關閉Online命令為:onmode -ky

但一般情況如下,將關閉命令建立在/etc/rc0.d目錄下,名字為K01informix,這樣當關閉作業系統時,Online隨之關閉。

編輯檔/etc/rc0.d/K01informix如下:

INFORMIXDIR=/usr/informix
INFORMIXSERVER=picc_online
ONCONFIG=onconfig.picc
export INFORMIXDIR INFORMIXSERVER ONCONFIG
INFORMIXDIR/bin/onmode -ky


修改檔案屬性如下:$chmod +x /etc/rc0.d/K01informix

二、Informix Online常見工作模式

offline(停止態)

quiescent ( 系統維護態)

online(運行態)
三、管理Informix Online磁碟空間

Online初始化時,自動建立了一個名為rootdbs的dbspace。該rootdbs存儲Online的管理資訊,包括物理日誌、邏輯日誌等。當你建立一個資料庫或表時,如果不指定dbspace,作為缺省,該庫或表建立在rootdbs中。所以,如果你想將庫或表建立在某個dbspace中,則必須在SQL語句中指定dbspace名字。如資料庫名為‘stores’,我們將這個資料庫建立在‘workdbs’dbspace中,SQL語句如下:

create database stores in workdbs;

另外,建chunk或dbspace時,要指定原始磁片設備名路徑,所需磁碟空間大小,以及該塊磁碟空間在原始磁片設備中的偏移量。其中,偏移量非常關鍵,要小心設置,否則容易造成chunk塊之間空間上的重疊與覆蓋。

例如:假定原始磁片設備/informixdbs1有500M空間,其中rootdbs用去前100M,如果要在/informixdbs1中建立一個新的chunk,偏移量應大於100M。

1.用onspaces命令建立dbspace

$onspaces -c -d dbspace名字 -p 磁片設備 -o 偏移量 -s 尺寸

其中:

-c: 表示建立新的dbspace

-d: dbspace名字

-p: 原始磁片設備全路徑名,如/informixdbs1

-o: 偏移量,以K位元組為單位

-s: dbspace中第一個chunk 尺寸,以K位元組為單位

2.用onspaces命令增加chunk

$onspaces -a dbspace名字 -p 原始磁片設備 -o 偏移量 -s 尺寸

其中:

-a: 表示為某個dbspace增加一個chunk, 後跟dbspace名字

-p: 原始磁片設備全路徑名,如/informixdbs1

-o: 偏移量,以K位元組為單位

-s: chunk的尺寸,以K位元組為單位

例如某資料庫系統,在原始磁片設備/informixdbs1上建立三個DBSPACE:

rootdbs:Online初始化時缺省建立,第一個chunk尺寸為100M, 偏移量為0;

workdbs:存放應用資料庫資料,第一個chunk尺寸為100M,偏移 量為100M;

tmpdbs:存放系統暫存檔案資料,第一個chunk尺寸為50M,偏移量為200M;

*tmpdbs必須在online初始化之前建立;

建立命令如下:

$onspaces -c -d workdbs -p /informixdbs1 -o 100000 -s 100000;

$onspaces -c -d tmpdbs -p /informixdbs1 -o 200000 -s 50000;

四、Informix Online日誌管理

1.資料庫日誌方式:

◆無日誌方式(對應非事物性應用)

◆無緩衝區日誌方式

◆帶緩衝區日誌方式

◆符合ANSI標準日誌方式

針對保險業務特點,INFORMIX建議使用無緩衝區日誌方式建立資料庫,以保證機器崩潰時,交易事務不會丟失,與帶緩衝區日誌方式相比,資料庫並行處理速度慢。

可使用ontape命令修改資料庫日誌方式

用ontape打開事務日誌:

$ontape -s -U stores; 打開資料庫stores日誌,日誌方式為無緩衝區日誌;

用ontape結束日誌:

$ontape -N lifeins; 將資料庫lifeins改為無日誌方式。

2.物理日誌的管理

物理日誌保存資料被修改前的映象。物理日誌的位置和大小可以改變。使用onparams命令改變物理日誌的位置和大小,在Online進入靜態方式後執行:

$ onparams -p -s size -d dbspace -y

其中

-p: 表示物理日誌

-s: 新的尺寸,後跟以K位元組為單位的物理日誌的大小

-d: 說明存放物理日誌的dbspace名字

-y: 對所有的提問以「Yes」回答

注意:分配給物理日誌的空間必須是連續的,因此,改變之前要確認dbspace有足夠的空間來存放物理日誌。

3.邏輯日誌的管理

邏輯日誌保存資料在修改後的映象,邏輯日誌空間的尺寸為邏輯日誌檔尺寸與邏輯日誌檔個數的乘積。Online初始化後,已有邏輯日誌檔的尺寸不可修改,要改變邏輯日誌空間大小,只能修改邏輯日誌檔個數,新增加的邏輯日誌檔尺寸可以設為新的值,邏輯日誌檔個數不得少於3個。
a.用onparams 增加邏輯日誌檔

$ onparams -a -d rootdbs

新增加的邏輯檔狀態是A(A表示新增加的意思)。必須建立rootdbs的0級備份後,新增加的邏輯日誌檔才可使用。

b.增加一個具有新的尺寸的邏輯日誌檔

$onparams -a -d rootdbs -s新的日誌尺寸

c.用onparams取消一個邏輯日誌檔

$onparams -d -1 logid

注意:取消一個邏輯日誌檔之前,必須做rootdbs的0級備份

$ ontape -s.; 該命令可做0級備份

* 只有狀態為F(Free)或A(Added)的邏輯日誌檔才可被取消

* 必須知道想要取消的邏輯日誌的logid號

$ onstat -1; 該命令可查看邏輯日誌檔狀態及log id號

五、Informix Online資料庫備份及恢復

備份內容及目的:

資料備份:備份資料庫某個時刻的資料狀態,當系統出現意外時用來恢復系統;

邏輯記錄備份:邏輯日誌檔寫滿後,必須備份,才可被清空,繼續使用。如果所有的邏輯日誌檔都被寫滿,則會引起系統崩潰。另外,邏輯日誌記錄了上一次資料備份後資料庫的改變,因此,邏輯記錄備份也用於當系統出現意外時用來恢復系統。

1.資料備份:

a.Online提供0 級,1級,2級增量備份;

0級:備份整個資料庫系統;

1級:備份從0級備份以後發生變化的資料;

2級:備份從1級備份以後發生變化的資料;

b.使用ontape命令備份資料

$ontape –s

執行該命令,系統會提示輸入0,1,2級備份級別

c.在整個系統正式運行之前,做一次0級備份,在每天業務系統結束工作後應做資料備份。如果資料量不大,可每天做0級備份。

d.管理好備份磁帶,做好標記,如日期、時間、備份級別、所含邏輯日誌號碼

2.邏輯日誌檔案備份

a.定時備份邏輯日誌檔

定時做邏輯日誌檔案備份,系統只將已寫滿的邏輯日誌檔案備份到磁帶上,然後清空,並釋放這些日誌檔。做定時備份一定要在所有邏輯日誌檔被寫滿之前進行。所以,如果採用定時備份,要注意觀察邏輯日誌使用狀況。另外,如果經常有長事務發生,應避免使用定時備份,採用連續備份比較安全。

命令: ontape -a

b.連續備份邏輯日誌檔

連續備份即邏輯日誌檔寫滿一個,就備份一個,然後該日誌檔被消空、釋放。因此,要做連續備份,必須保證磁帶機中有磁帶。連續備份需佔用一個螢幕或終端顯示資訊。當磁帶滿時,系統會提示換帶。

命令: ontape -c

Informix建議使用連續備份,但連續備份將一直佔用磁帶機,如果系統有二個磁帶機,可分別用作資料備份及邏輯記錄備份,如果系統只有一個磁帶機,會與資料備份發生衝突,可按下表方式進行切換:

時 間
操 作

每日業務開始及進行中
保證磁帶機中有磁帶,並且有一個螢幕或終端在運行:ontape -c

每日業務結束前
a.停止ontape -c,記錄磁帶中保存的邏輯日誌的號碼

b.換磁帶

c.運行ontape -s,(在業務量不大時建議使用0級備份)運行結束後在磁帶上標注日期,時間,備份級別,所含邏輯日誌號碼

d.換磁帶
e.運行ontape -c



3.系統復原

當系統出現錯誤,或者你想把系統復原到某一時間點的資料時,你必須利用資料備份帶和邏輯記錄備份來恢復系統。

資料備份將系統復原到做資料備份的時間點資料狀態,邏輯記錄備份能將系統復原到資料備份時間點以後的資料狀態。

命令:ontape -r

敲入該命令後,你可根據系統提示,依次恢復最近的0、1、2級資料備份帶及資料備份帶之後的邏輯日誌帶。

六、系統診斷

online.log檔

資料庫事務日誌資訊記錄在$INFORMIXDIR/online.log檔中,平時應經常查看online.log檔資訊,檢查資料庫有無異常。當資料庫出錯時查看online.log檔可知道資料庫系統出錯原因及處理建議。online.log非常有用,應很好地維護,定期清空,以防止檔過大難以查看。

finderr命令

當資料庫出錯時, 一般帶有錯誤號,利用finderr命令可以查出資料庫系統出錯原因及處理建議提示。





分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 轉播轉播 分享分享 分享淘帖

相關帖子

回復

使用道具 舉報

您需要登錄後才可以回帖 登錄 | 立即註冊

本版積分規則

小黑屋|Archiver|手機版|艾歐踢創新工坊    

GMT+8, 2024-6-1 10:43 , Processed in 0.294218 second(s), 24 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回復 返回頂部 返回列表