DB2備份與恢復
DB2 備份與恢復
整理下16年寫的DB2相關文件,換工作以後一直沒用過DB2,忘的差不多了。
一 db2 backup/restore 備份和恢復
1.1 備份
db2 backup/restore 備份與恢復只適用於相同作業系統平臺的資料庫;
命令格式: db2 backup db < 資料庫名 > to < 目錄名 >
注:在備份前需斷開所有與資料庫的連線 , 斷開連線後再備份 , 目錄名是備份後的檔案的存放目錄.
例 :
db2 backup database sample to d:\backup
如果資料庫正在被使用,可能回報錯“ SQL1035N
The database is currently in use. SQLSTATE=57019 ”需要停掉服務,用命令:
db2 force application all
db2 backup db sample to d:\ backup
1.2恢復
命令格式: db2 restore db < 資料庫名 > from < 目錄名 >
例 : db2 restore db sample from d:\ backup
--- 刪除原有的 sample 資料庫 ( 模擬資料庫恢復 )
恢復資料庫sample
db2 restore db sample from D:\DB2\backup
檢視資料庫
二:db2move 備份和恢復
2.1 備份
1) 首先連線到要匯出的資料庫上,如本例匯出資料庫 nctest :
db2 connect to nctest user db2inst1 using db2inst1
其中的引數user 後面跟指定使用者, using 後面指定使用者的密碼,不指定時會使用預設使用者進行登入;
2) 使用 db2look 匯出資料物件的定義語句
db2look – d nctest – e – o ncdb.sql –i db2inst1 – w d b2inst1
命令中的引數 – o 意思是將資料物件的定義匯出到指定的檔案中;
其中的引數-i 後面跟指定使用者, -w 後面指定使用者的密碼,不指定時會使用預設使用者進行登入;
3) 使用db2move 命令匯出資料庫物件的資料
db2move nctest export – u db2inst1 – p db2inst1
連線資料庫sample
通過db2look 匯出 sample 資料庫建立物件的指令碼 sample.sql
db2look -d sample -e -o sample.sql -i 使用者名稱 -w 使用者密碼
匯出資料
db2move sample export -u 使用者名稱 -p 使用者密碼
sample.sql: 建立資料物件的指令碼;
export.out: 資料庫匯出日誌;
db2move.lst: 包括匯出的物件名稱和各個物件所屬的模式;
--- 如果匯出時報錯 SQL3107W ,需要更改環境變數的字符集
2.2 恢復
將SAMPLE 資料庫資料匯入到 test 資料庫中
db2 create database test
通過db2move 恢復 NC 資料庫時,可以根據建庫指令碼 1.sql ,先進行建立資料庫和表空間等操作;
db2 connect to test user 使用者名稱 using 使用者密碼
a.sql---create_table.sql
b.sql---create_foreign.sql
修改sample.sql 指令碼,將指令碼中資料庫名稱,表空間名稱更改為實際的名稱;
將sample.sql 指令碼中建立外來鍵的語句剪下到另一個指令碼中 (create_foreign.sql);
如果匯入資料時,在沒有匯入主表資料之前,匯入對應外來鍵表資料時會出現錯誤,所以需要在成功匯入外資料後,在進行外來鍵的建立;
建立表結構
db2 -tvf a.sql
...
匯入資料
db2 test import -io insert -u 使用者名稱 -p 使用者密碼
匯入外來鍵約束
db2 -tvf b.sql
檢視資料
.....
歡迎關注我的微信公眾號"IT小Chen",共同學習,共同成長!!!
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/29785807/viewspace-2677043/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- db2備份恢復(backup restore)DB2REST
- db2 命令列備份和恢復DB2命令列
- RAC備份恢復之Voting備份與恢復
- 備份與恢復:polardb資料庫備份與恢復資料庫
- MySQL備份與恢復——基於Xtrabackup物理備份恢復MySql
- Jenkins備份與恢復Jenkins
- Postgresql 備份與恢復SQL
- MySQL 備份與恢復MySql
- Mysql備份與恢復(1)---物理備份MySql
- MySQL備份與恢復——基於MyDumper/MyLoader 邏輯備份恢復MySql
- Oracle 備份 與 恢復 概述Oracle
- DB的備份與恢復
- GitLab的備份與恢復Gitlab
- MySQL 非常規恢復與物理備份恢復MySql
- Mysql備份與恢復(2)---邏輯備份MySql
- MySQL備份與恢復——基於OUTFILE /LOAD DATA 邏輯備份恢復MySql
- GitLab的自動備份、清理備份與恢復Gitlab
- 備份與恢復oracle_homeOracle
- 《入門MySQL—備份與恢復》MySql
- MySQL備份與恢復——實操MySql
- 入門MySQL——備份與恢復MySql
- RMAN備份與恢復測試
- MySQL備份與恢復操作解析MySql
- Mysql資料備份與恢復MySql
- mydumper備份恢復
- Mysql備份恢復MySql
- 備份和恢復
- Oracle 12c 備份與恢復Oracle
- Mysql的幾種備份與恢復MySql
- Elasticsearch叢集的備份與恢復Elasticsearch
- MySQL入門--備份與恢復(三)MySql
- MySQL入門--備份與恢復(一)MySql
- MySQL入門--備份與恢復(二)MySql
- MySQL 日誌管理、備份與恢復MySql
- RabbitMQ如何備份與恢復資料MQ
- Linux 系統的備份與恢復Linux
- postgresql備份與恢復資料庫SQL資料庫
- 詳解叢集級備份恢復:物理細粒度備份恢復