db2start啓動具體的數據庫實例。
db2admin start啓動管理服務器(DAS)。
點開始菜單,選擇運行
輸入db2cc ,或者db2cmd
就可以啓動控制檯了,。
輸入db2cw就是命令行
在命令行輸入db2start啓動數據庫,db2stop 停止數據庫
輸入 db2systray 可以把你推出的圖標重新啓動出來。
The CREATE TABLESPACE statement defines a new table space within the database, assigns containers to the table space, and records the table space definition and attributes in the catalog.
eg1:CREATE TABLESPACE TS1 MANAGED BY DATABASE USING (file'd:/aa' 200m) DMS查看實例配置參數: db2 get dbm cfg
CREATE TABLESPACE TS2 MANAGED BY SYSTEM USING ('d:/bb') SMS
0.進入db2命令環境
db2cmd
1.啓動db2
db2start;
2.關閉db2
db2stop;
db2stop force;
3.創建數據庫
db2 create db <db name>;
db2 create db <db name> using codeset GBK territory CN;
db2 Create database <db name> using codeset IBM-eucCN territory CN;
這樣可以支持中文。
4.刪除數據庫(執行此操作要小心)
db2 drop db <db name>
如果不能刪除,斷開所有數據庫連接或者重啓db2。
5.斷開數據庫連接
db2 force application all
6.連接數據庫
db2 connect to <db name> user <username> using <password>
7.斷開數據庫連接
斷開當前數據庫連接:db2 connect reset
或者:db2 disconnect current
斷開所有數據庫的連接:db2 disconnect all
8.備份數據庫
db2 backup db <db name>
備註:執行以上命令之前需要斷開數據庫連接
9.恢復數據庫
db2 restore db <source db name>
10.導出數據文件
db2move <db name> export [-sn <模式名稱,一般爲db2admin>] [-tn <表名,多個之間用逗號分隔>];
更多時候用下面這種方式:
db2 export to test.ixf of ixf select * from <tablename>
11.導入數據文件
db2move <db name> import
db2 import from text.ixf of ixf create into <tablename>;(表不存在)
db2 import from text.ixf of ixf insert into <tablename>;(表已經存在)
db2 load from text.ixf of ixf insert into <tablename>;(不寫日誌)
12.建立映像:
db2 catalog tcpip node nodename remote 10.0.2.3 server 50000
db2 catalog db dbname at node nodename
13.撤銷映像:
db2 uncatalog db dbname
14.列出數據庫中所有db:
db2 list db directory
列出數據庫中的數據表:
list tables; 只顯示錶格的模式名稱(所屬的包)與連接到數據庫的用戶名相同的表。
模式含義:
模式是用於數據庫中創建的數據庫對象的高級限定符。它是數據庫對象的集合,這些對象有表、視圖、索引或觸發器等等。
它對數據庫對象進行了邏輯分類。當您將數據組織成表時,將表和其它相關對象組合在一起可能也很有好處。
eg. 比如一個表,用戶A的表table1表示爲A.table1,A就是模式,同理,用戶B也可以有一個表table1.表示爲B.table1。
雖然這兩個表名一樣,但由於模式不一樣,DB2認爲是兩個對象。
這可以通過使用 create schema 命令定義模式來完成。有關模式的信息保存在您所連接的數據庫的系統目錄表中。當創建其它對象時,可以將它們放置在該模式內。
15.獲取建表腳本:
db2look -d dbname -e -t tablename -a -x -i userId -w password -o filename.sql
-d: 數據庫名:這必須指定
-e: 抽取複製數據庫所需要的 DDL 文件
-u: 創建程序標識:若 -u 和 -a 都未指定,則將使用 $USER
-z: 模式名:如果同時指定了 -z 和 -a,則將忽略 -z
-t: 生成指定表的統計信息
-h: 更詳細的幫助消息
-o: 將輸出重定向到給定的文件名
-a: 爲所有創建程序生成統計信息
-m: 在模擬方式下運行 db2look 實用程序
-c: 不要生成模擬的 COMMIT 語句
-r: 不要生成模擬的 RUNSTATS 語句
-l: 生成數據庫佈局:數據庫分區組、緩衝池和表空間。
-x: 生成排除對象的原始定義器的“授權”語句 DDL
-xd: 生成包括對象的原始定義器的“授權”語句 DDL
-f: 抽取配置參數和環境變量
-td: 將 x 指定爲語句定界符(缺省定界符爲分號(;))
-p: 使用簡單文本格式
-s: 生成 postscript 文件
-g: 使用圖形來顯示索引的頁取裝對
-i: 登錄到數據庫駐留的服務器時所使用的用戶標識
-w: 登錄到數據庫駐留的服務器時所使用的密碼
-noview: 不要生成 CREATE VIEW ddl 語句
-wrapper: 爲適用於此包裝器的聯合對象生成 DDL
-server: 爲適用於此服務器的聯合對象生成 DDL
-nofed: 不要生成 Federated DDL
-fd: 爲 opt_buffpage 和 opt_sortheap 以及其它配置和環境參數生成 db2fopt語句。
16.查看建視圖腳本:
db2 select text from syscat.views where viewname='viewname'
17.導出全部存儲過程:
db2 select char(routineschema,20), char(routinename,20), text from syscat.routines > tmp.sql
db2 get routine into f:/tmp.sql from PROCEDURE procedurename(導出某個存儲過程)
18. 創建db2實例:
db2icrt <實例名稱>
19.刪除db2實例:
db2idrop <實例名稱>
20.設置當前db2實例:
set db2intance=db2
21.顯示db2擁有的實例:
db2ilist
22.查看當前連接數據庫:
db2 connect
23.db2命令環境設置
db2 list command options(查看命令環境)
db2 update command options using <option> on <路徑>;(只是臨時改變)
db2set <變量>=<值>,永久改變
db2set -? 顯示命令幫助消息
24.編譯和調用存儲過程
db2 -td@ -vf procedurefilename.db2 編譯存儲過程
db2 call procedrename 調用存儲過程
25. 讀數據庫管理程序配置:
db2 get dbm cfg
26.寫數據庫管理程序配置:
db2 update dbm cfg using 參數名 參數值
27. 讀數據庫配置:
db2 get db cfg for database
修改實例配置參數: db2 update dbm cfg using 參數名 新值
查看數據庫配置參數: db2 get db cfg for
修改數據庫配置參數: db2 update db cfg for using 參數名 新值
指定 LIST TABLESPACES 命令的 SHOW DETAIL 選項將顯示其它信息:
LIST TABLESPACESLIST TABLESPACES SHOW DETAIL
29. 要列出容器,我們需要使用以上輸出中的 Tablespace ID:
LIST TABLESPACE CONTAINERS FOR 2 |
30 . 顯示錶結構:
DESCRIBE TABLE tablename;
31. 執行某腳本文件
db2 -tvsf xx.sql //對於代參數"s" 的,如果xx.sql中,存在錯誤,就立即停止執行以下腳本。
db2 -tvf xx.sql //對於不帶 參數"s"的,如果 xx.sql中,存在錯誤,也繼續執行。
// 對於此行代碼 ,如果沒有註釋掉,並且先前沒有生成
table cmis.eipfleger,則利用:
db2 -tvsf xx.sql執行時,就要報錯。
--drop table cmis.eipfleger;
create table cmis.eipfleger(
org_id varchar(8) NOT NULL ,
currency varchar(12) Not Null,
bddate DATE not null ,
subject varchar(12) not null,
sum varchar(12),
cmisstat char(10),
primary key(org_id, currency,bddate,subject))
in dataspace index in indexspace;
~
32.
set schema =
33.導出表數據
db2 export to c:/dftz.txt of del select * from dftz
db2 export to c:/dftz.ixf of ixf select * from dftz
34.導入表數據
import from c:/123.txt of del insert into ylbx.czyxx
db2 import to c:/dftz.txt of del commitcount 5000 messages c:/dftz.msg insert into dftz
db2 import to c:/dftz.ixf of ixf commitcount 5000 messages c:/dftz.msg insert into dftz
db2 import to c:/dftz.ixf of ixf commitcount 5000 insert into dftz
db2 import to c:/dftz.ixf of ixf commitcount 5000 insert_update into dftz
db2 import to c:/dftz.ixf of ixf commitcount 5000 replace into dftz
db2 import to c:/dftz.ixf of ixf commitcount 5000 create into dftz (僅IXF)
db2 import to c:/dftz.ixf of ixf commitcount 5000 replace_create into dftz (僅IXF)
35.執行一個批處理文件
db2 –tf 批處理文件名
(文件中每一條命令用 ;結束)
36.自動生成批處理文件
建文本文件:temp.sql
select 'runstats on table DB2.' || tabname || ' with distribution and detailed indexes all;' from syscat.tables where tabschema='DB2' and type='T';
db2 –tf temp.sql>;runstats.sql
37.自動生成建表(視圖)語句
在服務器上:C:/sqllib/misc目錄中
db2 connect to o_yd user db2 using pwd
db2look –d o_yd –u db2 –e –p –c c:/o_yd.txt