當前位置:首頁 » 存儲配置 » db2備份存儲過程

db2備份存儲過程

發布時間: 2022-05-29 19:39:41

❶ 實現DB2資料庫備份之前都需要哪些東東

1. 崩潰恢復:通過回滾未提交的事務防止資料庫處於不一致狀態 2. 版本恢復:通過使用Backup命令獲取備份鏡像來恢復 3. 前滾恢復:通過使用完全DB2資料庫備份用Rollforward進行恢復 資料庫設置為可恢復資料庫的因素: 1. 如果資料庫僅僅是用來進行查詢,日誌中沒有工作事務單元,那麼該資料庫就沒有必要被設置為可恢復的資料庫; 2. 如果該資料庫的數據穩定或者數據變更少,而且數據可以容易重建,那麼該資料庫就沒有必要被設置為可恢復的資料庫; 3. 含有不易重建的數據的資料庫應該配置為可恢復的資料庫; 4. 如果存在大量數據更新的行為,應該考慮使用一個可恢復的資料庫; DB2備份前准備 1. 必須擁有SYSADM、SYSCTRL或SYSMAINT許可權才可以執行備份; 2. 資料庫可以是本地資料庫或者遠程資料庫,它本身備份保存在資料庫伺服器上; 3. BAKCKUP命令可以和外掛存儲器管理程序直接對備份進行管理,如ADSM; 4. BAKCKUP命令可以直接將它的輸出通過操作系統(OS/2除外)傳送到磁碟上; 5. BAKCKUP命令在任何平台的DB2資料庫備份可以直接將它的輸出傳送到硬碟上; 6. 可以創建多份備份文件,以包含已經備份過的數據。 DB2恢復前的准備 1. 必須擁有SYSADM、SYSCTRL或SYSMAINT許可權才可進行恢復,如果擁有必須擁有SYSADM、SYSCTRL許可權還可以將數據恢復到一個新的數據; 2. 只能對已經用BACKUP命令進行備份的資料庫使用RESTORE命令; 3. RESTORE命令可以和外掛的存儲器相連; 4. RESTORE要求對資料庫的排他連接。當資料庫正在恢復時,其他程序不能在這個資料庫上運行。一旦開始運行,它將防止其他程序存取當前資料庫,直到恢復完畢;5. 資料庫可以是本地資料庫或者遠程資料庫

❷ db2存儲過程導入新庫

db2look或第二個export這個導出來就是完整的DDL了
1、直接在DB2控制中心執行。
2、執行腳本
db2 connect to 資料庫
db2 -td@ -vf 導出文件。

❸ 如何在DB2中執行存儲過程

1、db2
create
database
資料庫名
<--
創建資料庫
2、db2
connect
to
資料庫名
user
用戶名
using
用戶密碼
<--
連接資料庫
3、db2
-tvf
otpdb_v3_db2.sql
<--
為新建資料庫建立表結構
4、db2
-td@
-f
存儲過程文件絕對路徑
<--
導入存儲過程,無錯誤會提示成功
4、調用存儲過程:
Windows
下:db2
call
存儲過程名(參數1,參數2)
AIX
下:db2
<--
要先進入DB2,方可調用存儲過程或執行SQL語句
db2=>call
存儲過程名(參數1,參數2)
5、驗證插入數據是否成功
Windows
下:db2
select
count(*)
from
FTOTP_USERINFO
AIX
下:db2
<--
要先進入DB2,方可調用存儲過程或執行SQL語句
db2=>select
count(*)
from
FTOTP_USERINFO
Windows
下:db2
select
count(*)
from
FTOTP_TOKENINFO
AIX
下:db2
<--
要先進入DB2,方可調用存儲過程或執行SQL語句
db2=>select
count(*)
from
FTOTP_TOKENINFO
6、db2
SELECT
TOKEN,
PUBKEY
FROM
FTOTP_TOKENINFO
FETCH
FIRST
10000
ROWS
ONLY
>
要保存文件的絕對全路徑
<--

DB2
中導出前一萬條記錄
windows
-
e.g.
db2
SELECT
TOKEN,
PUBKEY
FROM
FTOTP_TOKENINFO
FETCH
FIRST
10000
ROWS
ONLY
>
c:\abc.txt
AIX
-
e.g.
db2
SELECT
TOKEN,
PUBKEY
FROM
FTOTP_TOKENINFO
FETCH
FIRST
10000
ROWS
ONLY
>
c:\abc.txt
<--
注意:不能先進入DB2,執行查詢與導出命令組合
7、db2
drop
procere
存儲過程名
<--
刪除存儲過程
8、db2
drop
database
資料庫名
<--
刪除指定名稱的資料庫
注,如果刪除時提示有應用程序連接到這個資料庫上,可以用如下命令斷開所有應用程序的連接:
db2
force
application
all
<--
斷開所有應用程序的連接

❹ 如何執行db2存儲過程

1、db2 create database 資料庫名 <-- 創建資料庫
2、db2 connect to 資料庫名 user 用戶名 using 用戶密碼 <-- 連接資料庫
3、db2 -tvf otpdb_v3_db2.sql <-- 為新建資料庫建立表結構
4、db2 -td@ -f 存儲過程文件絕對路徑 <-- 導入存儲過程,無錯誤會提示成功
4、調用存儲過程:
Windows 下:db2 call 存儲過程名(參數1,參數2)
AIX 下:db2 <-- 要先進入DB2,方可調用存儲過程或執行SQL語句
db2=>call 存儲過程名(參數1,參數2)
5、驗證插入數據是否成功
Windows 下:db2 select count(*) from FTOTP_USERINFO
AIX 下:db2 <-- 要先進入DB2,方可調用存儲過程或執行SQL語句
db2=>select count(*) from FTOTP_USERINFO
Windows 下:db2 select count(*) from FTOTP_TOKENINFO
AIX 下:db2 <-- 要先進入DB2,方可調用存儲過程或執行SQL語句
db2=>select count(*) from FTOTP_TOKENINFO

❺ 如何在DB2存儲過程內部實現export、import或者load等導入導出操作

export to c:/a.del of del select * from a這樣可以直接把數據導入到本地目錄;
在存儲過程中可以這樣調用CALL SYSPROC.ADMIN_CMD('export to c:/a.del of del select * from a')只是導出路徑要寫sever端,這樣導出的數據會保存在安裝db2資料庫的電腦上,而不會保存在客戶端上

❻ 如何快速掌握DB2存儲過程

做項目很急的話,網上搜存儲過程例子,遇到問題多查官方文檔或者網上搜,網上有DB2的社區,那邊更專業高手也多,如果時間相對寬松,可以選擇性多看看DB2的官方文檔(DB2結構原理和DB2編程的)。

❼ DB2如何備份資料庫有沒有客戶端工具可以直接備份

可以在windows中安裝一個db2客戶端,在ibm官網中下載一個db2安裝,然後通過該工具遠程連接到伺服器,右擊資料庫名即可完成相關操作

❽ db2 存儲過程 異常處理

存儲過程異常的處理:
DECLARE handler-type HANDLER FOR condition handler-action

異常處理器類型(handler-type)有以下幾種:
CONTINUE 在處理器操作完成之後,會繼續執行產生這個異常語句之後的下一條語句。
EXIT 在處理器操作完成之後,存儲過程會終止,並將控制返回給調用者。
UNDO 在處理器操作執行之前,DB2會回滾存儲過程中執行的SQL操作。在處理器操作完成之後,存儲過程會終止,並將控制返回給調用者。
異常處理器可以處理基於特定SQLSTATE值的定製異常,或者處理預定義異常的類。預定義的3種異常如下所示:
NOT FOUND 標識導致SQLCODE值為+100或者SQLSATE值為02000的異常。這個異常通常在SELECT沒有返回行的時候出現。
SQLEXCEPTIOIN 標識導致SQLCODE值為負的異常。
SQLWARNING 標識導致警告異常或者導致+100以外的SQLCODE正值的異常。
如果產生了NOT FOUND 或者SQLWARNING異常,並且沒有為這個異常定義異常處理器,那麼就會忽略這個異常,並且將控制流轉向下一個語句。如果產生了SQLEXCEPTION異常,並且沒有為這個異常定義異常處理器,那麼存儲過程就會失敗,並且會將控制流返回調用者。
以下示例聲明了兩個異常處理器。 EXIT處理器會在出現SQLEXCEPTION 或者SQLWARNING異常的時候被調用。EXIT處理器會在終止SQL程序之前,將名為stmt的變數設為"ABORTED",並且將控制流返回給調用者。UNDO處理器會將控制流返回給調用者之前,回滾存儲過程體中已經完成的SQL操作。

清單3:異常處理器示例
DECLARE EXIT HANDLER FOR SQLEXCEPTION, SQLWARNING SET stmt = 'ABORTED';
DECLARE UNDO HANDLER FOR NOT FOUND;
如果預定義異常集不能滿足需求,就可以為特定的SQLSTATE值聲明定製異常,然後再為這個定製異常聲明處理器。語法如下:

清單4:定製異常處理器
DECLARE unique-name CONDITION FOR SQLSATE 'sqlstate'
處理器可以由單獨的存儲過程語句定義,也可以使用由BEGIN…END塊界定的復合語句定義。注意在執行符合語句的時候,SQLSATE和SQLCODE的值會被改變,如果需要保留異常前的SQLSATE和SQLCODE,就需要在執行復合語句的第一個語句把SQLSATE和SQLCODE賦予本地變數或參數。
通常,會為存儲過程定義一個執行狀態的輸出參數(例如:poGenStatus)。
declare sqlcode integer default 0;
begin
declare continue handler for sqlexception set ret = sqlcode;
declare continue handler for sqlwarning set ret = sqlcode;
declare continue handler for not found set ret = sqlcode;
end ; --異常的聲明

--異常的處理
if sqlcode< 0 or sqlcode= 100 then
set O_RetCod = RetCode;
set O_RetMsg = 'CLN02:產品實例關聯客戶過程出錯!';
insert into LOG.OPER_LOG_TAB(PROC_NAME,OBJ_TAB,REGION_COD,OPER_COUNT,ERR_CODE,DATA_TIME,OPER_TIME)
values('P_DW_CLEAN','GLOBAL TEMP',0,0,retcode,CHAR(last_3_mon_time),current TIMESTAMP);
return;
else
set RetCode = 0;
end if;

❾ DB2中建立存儲過程的詳細參數和語法

DECLARE CHOICE2 CURSOR WITH RETURN TO CALLER FOR --聲明游標 CHOICE2
SELECT COMPANYID,DEPTID,SEQID,SUBMITTIME,SUBMITDATE,
B.GRADEDESC HYEAR,PRODUCTID,PRODUCTCODE,PRODUCTDESC,
A.GRADEID,PRICE,SFZDPY,LQUANT,MQUANT,MCQUANT,LCQUANT,
UQUANT,OTHQUANT1,OTHQUANT2,OTHQUANT3,OTHQUANT4,EMP1,EMP2,STATUS,A.REMARK,
DECIMAL(ABS(MCQUANT-MQUANT)/NULLIF(MQUANT,0)*100,10,2)TAG
FROM T_SUPPLY_PPB_HY A
LEFT JOIN T_SUPPLY_GRADATION B ON A.GRADEID=B.GRADEID
WHERE HYEAR=TO_CHAR(P_NF)||P_BN
ORDER BY B.GRADEID,PRODUCTCODE,A.PRICE;

--1.DECIMAL(P,S)十進制數,小數點位置由數字的精度(P)和小數位(S)確定。
-- 精度是數字的總位數,必須小於32。小數位是小數部分數字的位數且總是小於或等於精度值。
-- 如果未指定精度和小數位,則十進制值的預設精度為5,預設小數位為0。
--2.語法:NULLIF ( expression , expression )
-- expression:(常量、列名、函數、子查詢或算術運算符、按位運算符以及字元串運算符的任意組)
-- 如果兩個表達式不相等,NULLIF 返回第一個 expression 的值。如果相等,NULLIF 返回第一個 expression 類型的空值。如果兩個表達式相等且結果表達式為 NULL,NULLIF 等價於 CASE 的搜索函數。

❿ DB2 存儲過程

你好,需要指定DYNAMIC RESULT SETS 1,如:
LANGUAGE SQL
SPECIFIC GetBOM
DYNAMIC RESULT SETS 1
MODIFIES SQL DATA

熱點內容
字體目錄在哪個文件夾 發布:2024-11-15 06:20:28 瀏覽:181
php種子怎麼打開 發布:2024-11-15 06:07:01 瀏覽:346
密碼箱的密碼忘記了如何開鎖 發布:2024-11-15 06:04:41 瀏覽:955
安卓軟體和蘋果系統哪個好 發布:2024-11-15 05:48:32 瀏覽:283
pythonwhileelse 發布:2024-11-15 05:39:10 瀏覽:672
java文件流上傳文件 發布:2024-11-15 05:24:02 瀏覽:147
linux安裝so 發布:2024-11-15 05:22:29 瀏覽:581
九游版冒險王2適合安卓哪個版本 發布:2024-11-15 05:12:33 瀏覽:600
iphonexsmax怎麼連接伺服器 發布:2024-11-15 05:11:46 瀏覽:776
長江存儲校招 發布:2024-11-15 05:11:01 瀏覽:967