db2look和db2move詳解


db2look和db2move簡單實例

--- 建庫
create database db_name on filesystem_location using codeset utf-8 territory cn

--- 刪庫
db2 drop db db_name

(若數據庫正在使用, 需要先執行以下命令)
db2 force application all

--- 導出表結構
db2look -d DB_NAME -u USER_NAME -e -o FILE_TO_EXPORT.sql

--- 導入表結構
db2 -tvf FILE_TO_IMPORT.sql

--- 導出表數據
db2move DB_NAME export

--- 導入表數據
db2move DB_NAME import -u username -p password

--- 替換表數據
db2move DB_NAME load -u username -p password

(load完之后, 某些表可能需要執行以下命令才能正常使用)
set integrity for TABLE_NAME immediate checked

詳細解釋db2look跟db2move 參數跟使用方式

語法: db2look -d DBname [-e] [-xs] [-xdir Path] [-u Creator] [-z Schema]

[-t Tname1 Tname2...TnameN] [-tw Tname] [-h]

[-o Fname] [-a] [-m] [-c] [-r] [-l] [-x] [-xd] [-f]

[-fd] [-td x] [-noview] [-i userID] [-w password]

[-v Vname1 Vname2 ... VnameN] [-dp] [-ct]

[-wrapper WrapperName] [-server ServerName] [-nofed]

 

db2look [-h]

 

-d: 數據庫名稱:這必須指定

 

-e: 抽取復制數據庫所需要的 DDL 文件

-xs: 導出 XSR 對象並生成包含 DDL 語句的腳本

-xdir: 路徑名:將用來放置 XSR 對象的目錄

-u: 創建程序標識:如果 -u 和 -a 都未指定,則將使用 $USER

-z: 模式名:如果同時指定了 -z 和 -a,則將忽略 -z

-t: 生成指定表的統計信息

-tw: 為名稱與表名的模式條件(通配符)相匹配的表生成 DDL

-h: 更詳細的幫助消息

-o: 將輸出重定向到給定的文件名

-a: 為所有創建程序生成統計信息

-m: 在模擬方式下運行 db2look 實用程序

-c: 不要生成模擬的 COMMIT 語句

-r: 不要生成模擬的 RUNSTATS 語句

-l: 生成數據庫布局:數據庫分區組、緩沖池和表空間。

-x: 生成排除對象的原始定義程序的“授權”語句 DDL

-xd: 生成包括對象的原始定義程序的“授權”語句 DDL

-f: 抽取配置參數和環境變量

-td: 將 x 指定為語句定界符(缺省定界符為分號(;))

-i: 登錄到數據庫駐留的服務器時所使用的用戶標識

-w: 登錄到數據庫駐留的服務器時所使用的密碼

-noview: 不要生成 CREATE VIEW ddl 語句

-wrapper: 為適用於此包裝器的聯合對象生成 DDL

-server: 為適用於此服務器的聯合對象生成 DDL

-nofed: 不要生成 Federated DDL

-fd: 為 opt_buffpage 和 opt_sortheap 以及其他配置和環境參數生成 db2fopt 語句。

-v: 只為視圖生成 DDL,當指定了 -t 時將忽略此選項

-dp: 在 CREATE 語句之前生成 DROP 語句

-ct: 按對象創建時間生成 DDL 語句

 

 

db2move 命令

db2move <database-name> <action> [<option> <value>]

首先,您必須指定數據庫名(想要移動的表所在的數據庫)和要執行的操作(export 和 import 或 load)。然后指定一個選項來定義操作的范圍。例如,可以將一個操作限制在特定的表(-tn)、表空間(-ts)、表創建者(-tc)或模式名(-sn)范圍內。指定表、表空間或表的創建者的一個子集只對 export 操作有效。如果指定多個值,就必須使用逗號將其分隔開;在值列表項之間不允許有空格。可以指定的項最多為 10 個。

另外,也可以指定 -tf 選項,此時要使用一個文件名作為參數,其中列出了要導出的表名;在該文件中,每行只能列出一個完整的表名。您還可以指定以下內容:

-tn -表名,導出單一表
-tf - 文件名,文件中每行記錄一個完整的表名
-ts -表空間名稱,用於導出某個表空間下的所有數據
-tc -表創建者,導出某用戶創建的所有數據
-sn -模式名,用於導出某個模式下的所有數據

-io import-option

指定 DB2 的 import 工具可以運行的一種模式。有效的選項有: CREATE、 INSERT、 INSERT_UPDATE、 REPLACE 和 REPLACE_CREATE。缺省值為 REPLACE_CREATE。有關這些模式的更多內容,請參閱 DB2 的產品文檔,可以從 DB2 技術支持獲得這些文檔。

-lo load-option

指定 DB2 的 load 工具可以運行的一種模式。有效的選項有:INSERT 和 REPLACE。缺省值為 INSERT。 有關這些模式的更多內容,請參閱 DB2 的產品文檔,可以從 DB2 技術支持獲得這些文檔。

-l lobpaths

指定要創建或查找的 LOB 文件的位置。必須指定一個或多個絕對路徑名。如果指定了多個絕對路徑,就必須使用逗號將其分隔開;值之間不允許有空格。缺省值是當前目錄。

-u userid
指定一個用戶 ID,該工具可以使用這個用戶 ID 登錄到遠程系統上。

-p password

指定對該用戶進行認證的密碼;該工具需要使用一個有效的用戶 ID 和密碼登錄到遠程系統上。

實例

1、導出到 一個文件獲得sql語句
db2look -d cqyancao -e -o db.sql -i db2user -w psw
數據庫名 要出文件名 用戶名 密碼


示例: db2look -d DEPARTMENT -u walid -e -o db2look.sql

-- 這將生成由用戶 WALID 創建的所有表和聯合對象的 DDL 語句
-- db2look 輸出被發送到名為 db2look.sql 的文件中

示例: db2look -d DEPARTMENT -z myscm1 -e -o db2look.sql

-- 這將為模式名為 MYSCM1 的所有表生成 DDL 語句
-- 還將生成 $USER 創建的所有聯合對象的 DDL。
-- db2look 輸出被發送到名為 db2look.sql 的文件中

示例: db2look -d DEPARTMENT -u walid -m -o db2look.sql

-- 這將生成 UPDATE 語句以捕獲關於用戶 WALID 創建的表/別名的統計信息
-- db2look 輸出被發送到名為 db2look.sql 的文件中

示例: db2look -d DEPARTMENT -u walid -e -wrapper W1 -o db2look.sql

-- 這將生成由用戶 WALID 創建的所有表的 DDL 語句
-- 還將生成適用於包裝器 W1 的用戶 WALID 所創建所有聯合對象的 DDL
-- db2look 輸出被發送到名為 db2look.sql 的文件中

示例: db2look -d DEPARTMENT -u walid -e -server S1 -o db2look.sql

-- 這將生成由用戶 WALID 創建的所有表的 DDL 語句
-- 還將生成適用於服務器 S1 的用戶 WALID 所創建所有聯合對象的 DDL
-- db2look 輸出被發送到名為 db2look.sql 的文件中


2.使用db2move命令導出數據庫
從另一數據庫中導出初始化數據,首先進入導出的目錄,如:D:\db,
命令為:db2move dbname export –u username –p password。注:dbname 為原數據庫名,username為用戶名 password為密碼。

恢復命令D:\db> db2move dbname import -u username -p password

3、使用db2move導出導入單表
導出 db2move dbname export -tn yc_news -u db2user -p password
導入 db2move dbname import -u db2user -p password

4、其它相關
db2取前十條記錄
例如:
db2 => select * from tableName fetch first 10 rows only

db2修改字段長度
db2 alter table db2admin.config alter cvalue set datatype varchar(255)
例如:
db2 => alter table news alter AUTHOR set data type varchar(250)
db2 => describe table news

db2增加字段方法
alter table table_name
add column column_name datatype

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM