一生產aix伺服器上,db2資料庫需要備份,備份中報sql2059w錯誤,具體資訊如下:
這個錯誤提示一般跟作業系統關係較大,而非db2資料庫的錯誤。
1、檢查檔案系統是不是大檔案系統,是否有limits限制;
2、檢查目錄所在的空間是否充足;
其一1、檢視活動的卷
# lsvg -o
rootvg
# lsvg -l rootvg
rootvg:
lv name type lps pps pvs lv state mount point
hd5 boot 1 2 2 closed/syncd n/a
hd6 paging 24 48 2 open/syncd n/a
hd8 jfs2log 1 2 2 open/syncd n/a
hd4 jfs2 1 2 2 open/syncd /
hd2 jfs2 40 80 2 open/syncd /usr
hd9var jfs2 4 8 2 open/syncd /var
hd3 jfs2 8 16 2 open/syncd /tmp
hd1 jfs2 140 280 2 open/syncd /home
hd10opt jfs2 16 32 2 open/syncd /opt
lg_dumplv sysdump 8 8 1 open/syncd n/a
paging00 paging 50 50 1 open/syncd n/a
lv002 jfs2 248 496 2 open/syncd /backup
"/backup"的檔案系統為jfs2,是支援大檔案系統的。對於jfs檔案系統,在大多數例項中,多個檔案系統使用大小配置為4 mb 的公用日誌。例如,在初始安裝後,根捲組中的所有檔案系統將邏輯卷 hd8 用作公用 jfs 日誌。預設邏輯卷分割槽大小是 4 mb,預設日誌大小是乙個分割槽,因此,根捲組通常包含乙個 4 mb 的 jfs 日誌。當檔案系統超過 2 gb 或使用單個日誌的檔案系統空間的總量超過 2 gb時,預設日誌大小可能不足。一般來說普通jfs支援的最大檔案為2g;支援大檔案的jfs為64g;jfs2支援的大檔案為1t
2、檢查/etc/security/limits檔案中的引數,特別注意fsize的值。如果出現備份時出現sql2059w錯誤,可以vi修改/etc/security/limits檔案中的fsize的值為-1,注意此更改將在系統重新啟動後生效。
default:
fsize = -1
core = 0
cpu = -1
data =-1
rss = 65536
stack = 65536
nofiles =32768 #(-1是無限制)
core_hard = 0
root:
nobody:
db2inst2:
core = -1
data = 491519
stack = 32767
rss = -1
fsize = -1
nofiles =10000
其二1、檢視rootvg有沒有剩餘可擴充套件的空間
# lsvg rootvg
volume group: rootvg vg identifier: 00c5febb00004c0000000120b573a76a
vg state: active pp size: 256 megabyte(s)
vg permission: read/write total pps: 1092 (279552 megabytes)
max lvs: 256 free pps: 244 (62464 megabytes)
lvs: 12 used pps: 848 (217088 megabytes)
open lvs: 11 quorum: 1 (disabled)
total pvs: 2 vg descriptors: 3
stale pvs: 0 stale pps: 0
active pvs: 2 auto on: no
max pps per vg: 32512
max pps per pv: 1016 max pvs: 32
ltg size (dynamic): 256 kilobyte(s) auto sync: no
hot spare: no bb policy: relocatable
2、命令擴充套件/backup目錄
擴充套件前# df -g /backup
filesystem gb blocks free %used iused %iused mounted on
/dev/lv002 40.00 14.85 63% 3856 1% /backup
# chfs -a size=+22g /backup
filesystem size changed to 130023424
擴充套件後# df -g /backup
filesystem gb blocks free %used iused %iused mounted on
/dev/lv002 62.00 36.85 41% 3856 1% /backup
# lsvg -l rootvg
rootvg:
lv name type lps pps pvs lv state mount point
hd5 boot 1 2 2 closed/syncd n/a
hd6 paging 24 48 2 open/syncd n/a
hd8 jfs2log 1 2 2 open/syncd n/a
hd4 jfs2 1 2 2 open/syncd /
hd2 jfs2 40 80 2 open/syncd /usr
hd9var jfs2 4 8 2 open/syncd /var
hd3 jfs2 8 16 2 open/syncd /tmp
hd1 jfs2 140 280 2 open/syncd /home
hd10opt jfs2 16 32 2 open/syncd /opt
lg_dumplv sysdump 8 8 1 open/syncd n/a
paging00 paging 50 50 1 open/syncd n/a
lv002 jfs2 248 496 2 open/syncd /backup
再次備份,發現已經成功了。
$ cd /backup
$ ls -l
total 81305984
-rw-r----- 1 db2inst2 db2grp 21463318528 mar 07 20:32
經檢查發現該資料庫的備份檔案比較大,有21g多大。所以引起了上述sql2059w錯誤。
db2備份還原資料庫
備份資料庫 開始 執行 db2cmd 進入到命令列 執行如下命令 db2 backup db bxfund2 to e testbackup 提示資訊當前正在使用資料庫,這時,需要先將db2重啟一下,執行以下命令 db2stop force強制停掉db2,然後db2start 啟動資料庫,重新執行備...
DB2 資料庫自動備份
db2 核心備份的語句就只有一句 db2 backup database db21 to file parallelism 8 其中的file是我們備份資料庫的目錄,db21是資料庫名稱 具體的備份為 建立檔案 file home db2inst backup date f if d file f ...
DB2資料庫備份恢復
song 說 在你本機上有沒有乙個叫huaxing的資料庫?小饒 說 沒有小饒 說 是否要建立個例項?song 說 你想把它恢復到本機上,但是現在在wjs的機器上有個叫huaxing的資料庫,你可以在你的機器上訪問wjs上的huaxing資料庫,是這樣嗎?小饒 說 是的小饒 說 現在想做個測試,看備...