當前位置:首頁 » 操作系統 » db2資料庫管理器

db2資料庫管理器

發布時間: 2022-12-27 22:09:07

❶ 為什麼用DB2建庫時總出現『未發出啟動資料庫管理器命令』的提示

你先關閉所有應用連接
db2
force
application
all
然後再啟動資料庫
db2start
試試看看

❷ 如何啟動DB2資料庫管理器

在一個DB2 實例下,可以創建多個database(具體每個實例下可以創建多少個database,可以通過DB2 GET DBM CFG查看.一旦建立了資料庫之後,就可以對其進行操作,然而,在向資料庫中建立對象或訪問資料庫中的對象(數據)之前,必須先知道如何啟動和停止資料庫.
本小節簡單介紹了db2 database通過command line的方式如何實現啟動和停止.
激活資料庫
如果在database沒有激活之前,就在應用中使用connect to database_name或隱式連接,那麼應用就必須要進行等待,知道資料庫管理器啟動了你要連接的資料庫.一般第一個應用會引發等待資料庫管理器執行資料庫啟動的所有開銷.
我們也可以使用activate database database_name這樣的命令啟動特定的資料庫.這個命令就會免除第一個應用程序連接上來的時候等候資料庫初始化所花費的時間。一般情況下,DB2 DBA會提前激活所有必要的資料庫.
注意:1)如果發出activate database命令的應用已經與一個database建立了活動的資料庫連接,就回返回錯誤消息.
2)如果需要重新啟動(restart)的資料庫接受了一個activate database命令,那麼這個activate database命令就會象connect to 或隱式連接一樣工作.
3)如果資料庫配置了
啟用的自動重新啟動 (AUTORESTART) = ON
那麼在activate database命令對其初始化之前,資料庫會重新啟動.
察看指定資料庫的配置參數
--默認
DB2 GET DB CFG FOR study
--分屏顯示
DB2 GET DB CFG FOR study | More
--將顯示結果存入study.txt 文件中
DB2 GET DB CFG FOR study > study.txt

下面是一個示例,我在當前DB2實例下,創建了3個database,我利用activate命令挨個將他們激活

D:DB2BIN>db2 db2start
DB20000I DB2START命令成功完成。
D:DB2BIN>db2 list database directory
系統資料庫目錄
目錄中的條目數 = 3
資料庫 1 條目:
資料庫別名 = TEST
資料庫名稱 = TEST
本地資料庫目錄 = D:DB2test
資料庫發行版級別 = c.00
注釋 = test
目錄條目類型 = 間接
目錄資料庫分區號 = 0
備用伺服器主機名 =
備用伺服器埠號 =
資料庫 2 條目:
資料庫別名 = BANK
資料庫名稱 = BANK
本地資料庫目錄 = D:db2bank
資料庫發行版級別 = c.00
注釋 = bank
目錄條目類型 = 間接
目錄資料庫分區號 = 0
備用伺服器主機名 =
備用伺服器埠號 =
資料庫 3 條目:
資料庫別名 = STUDY
資料庫名稱 = STUDY
本地資料庫目錄 = D:db2study
資料庫發行版級別 = c.00
注釋 = STUDY
目錄條目類型 = 間接
目錄資料庫分區號 = 0
備用伺服器主機名 =
備用伺服器埠號 =
D:DB2BIN>db2 list active databases
sql1611W 「資料庫系統監視器」沒有返回任何數據。
D:DB2BIN>db2 activate database study
DB20000I ACTIVATE DATABASE命令成功完成。
D:DB2BIN>db2 list active databases
活動資料庫
資料庫名稱 = STUDY
當前連接的應用程序 = 0
資料庫路徑 = D:db2studyDB2NODE0000SQL00001
D:DB2BIN>db2 activate database bank
DB20000I ACTIVATE DATABASE命令成功完成。
D:DB2BIN>db2 list active databases
活動資料庫
資料庫名稱 = STUDY
當前連接的應用程序 = 0
資料庫路徑 = D:db2studyDB2NODE0000SQL00001
資料庫名稱 = BANK
當前連接的應用程序 = 0
資料庫路徑 = D:db2bankDB2NODE0000SQL00001
D:DB2BIN>db2 activate database test
DB20000I ACTIVATE DATABASE命令成功完成。
D:DB2BIN>db2 list active databases
活動資料庫
資料庫名稱 = STUDY
當前連接的應用程序 = 0
資料庫路徑 = D:db2studyDB2NODE0000SQL00001
資料庫名稱 = BANK
當前連接的應用程序 = 0
資料庫路徑 = D:db2bankDB2NODE0000SQL00001
資料庫名稱 = TEST
當前連接的應用程序 = 0
資料庫路徑 = D:DB2testDB2NODE0000SQL00001
D:DB2BIN>停止資料庫

由activate database命令初始化的資料庫可以由deactivate database命令關閉,也可以通過stop database manager(或db2stop)命令終止資料庫管理器來關閉.

如果使用activate
database命令初始化一個資料庫,那麼最後一個與資料庫斷開連接的應用就不會關閉資料庫.必須要使用deactivate
database.在這種情況下,stop database manager(或db2stop)會關閉資料庫,也會終止實例.

如果使用connect
to 或隱式地連接啟動資料庫,然後再由另外一個應用對相同的資料庫發出activate database命令,那麼就必須使用deactivate
database命令關閉資料庫.如果沒有使用activate
database啟動資料庫,那麼當最後一個應用斷開與資料庫連接的時候,資料庫就會關閉.

示例一:使用connect to方式啟動的資料庫

D:DB2BIN>db2 list active databases
SQL1611W 「資料庫系統監視器」沒有返回任何數據。
D:DB2BIN>db2 connect to study --連接到study資料庫,將自動激活study資料庫
資料庫連接信息
資料庫伺服器 = DB2/NT 9.5.0
SQL 授權標識 = ZHANGRP
本地資料庫別名 = STUDY
D:DB2BIN>db2 list active databases
活動資料庫
資料庫名稱 = STUDY
當前連接的應用程序 = 1
資料庫路徑 = D:db2studyDB2NODE0000SQL00001

說明:資料庫被激活,並有一個應用連接上來(就上面的connect to study操作)
D:DB2BIN>db2 connect reset --斷開連接
DB20000I SQL命令成功完成。
D:DB2BIN>
D:DB2BIN>db2 list active databases
SQL1611W 「資料庫系統監視器」沒有返回任何數據。

D:DB2BIN>

說明:可以發現,上面的連接斷開後,資料庫study也自動停止(因為這個study資料庫是通過connect to 的方式激活的)
示例二:使用activate database方式啟動的資料庫

D:DB2BIN>db2 list active databases --這個時候沒有啟動的資料庫
SQL1611W 「資料庫系統監視器」沒有返回任何數據。
D:DB2BIN>db2 activate database study --用activate database激活study資料庫
DB20000I ACTIVATE DATABASE命令成功完成。
D:DB2BIN>db2 list active databases --可以看到study數據已經激活,但沒有應用連接上來
活動資料庫
資料庫名稱 = STUDY
當前連接的應用程序 = 0
資料庫路徑 = D:db2studyDB2NODE0000SQL00001
D:DB2BIN>db2 connect to study --發起一個連接到study資料庫
資料庫連接信息
資料庫伺服器 = DB2/NT 9.5.0
SQL 授權標識 = ZHANGRP
本地資料庫別名 = STUDY
D:DB2BIN>db2 list active databases --再看一下活動的資料庫,發現study 資料庫上有一個應用連接上來了
活動資料庫
資料庫名稱 = STUDY
當前連接的應用程序 = 1
資料庫路徑 = D:db2studyDB2NODE0000SQL00001
D:DB2BIN>db2 connect reset --關閉剛才那個連接,看看資料庫是不是會自動關閉
DB20000I SQL命令成功完成。
D:DB2BIN>db2 list active databases --資料庫依然啟動,雖然沒有了任何連接
活動資料庫
資料庫名稱 = STUDY
當前連接的應用程序 = 0
資料庫路徑 = D:db2studyDB2NODE0000SQL00001
D:DB2BIN>db2 deactivate database study --使用deactivate database命令關閉資料庫
DB20000I DEACTIVATE DATABASE命令成功完成。
D:DB2BIN>
D:DB2BIN>db2 list active databases
SQL1611W 「資料庫系統監視器」沒有返回任何數據。
D:DB2BIN>

❸ 管理DB2資料庫的工具都有哪些,分別說下優缺點

一般DB2自帶的工具就能完成太多數的功能,但有兩個比較重要的工具介紹一下,一個是db2top,它可以對db2的各種對象進行實時監控,例如內存,語句,表等。二是toad for db2,這個工具像sqlserver的analyzer,可以用來查詢數據,查看語句的執行計劃,在資料庫語句優化時很好用。

❹ 如何查看DB2資料庫所用的埠號

DB2數據查看佔用的埠號,分為windows和linux系統查看方式,如下:
一、linux系統查看DB2佔用埠號:
1.db2start啟動了資料庫管理器,並且通訊方式配置為TCP/IP。
2.首先切換到db2inst1用戶 su - db2inst1
3.查找TCP/IP Service name db2 get dbm cfg | grep -i service
4.通過上一句命令的輸出(如db2c_db2inst1)在/etc/services文件中找對應的埠號 grep db2c_db2inst1 /etc/services
輸出 db2c_db2inst1 50000/tcp
#其中50000就是db2資料庫所佔用的埠號
二、windows系統查看DB2佔用埠號方式如下:
1、使用命令 db2 get dbm cfg
找到"SVCENAME" 查找到TCP/IP 服務名
www.2cto.com
2、到系統配置文件里找到service name 對應的 port number
windows:查看 c:\windows\system32\drivers\etc\services
aix: 查看 /etc/services
如下:
DB2_DB2 60000/tcp
DB2_DB2_1 60001/tcp
DB2_DB2_2 60002/tcp
DB2_DB2_END 60003/tcp
db2c_DB2 50000/tcp

❺ DB2怎麼啟動資料庫

1、 打開命令行窗口
#db2cmd
2、 打開控制中心
# db2cmd db2cc
3、 打開命令編輯器

db2cmd db2ce
=====操作資料庫命令=====

4、 啟動資料庫實例
#db2start

5、 停止資料庫實例
#db2stop

如果你不能停止資料庫由於激活的連接,在運行db2stop前執行db2
force application all就可以了 /db2stop force
6、 創建資料庫
#db2 create db
[dbname]
7、 連接到資料庫
#db2 connect to [dbname] user [username] using
[password]
8、 斷開資料庫連接
#db2 connect reset
9、 列出所有資料庫
#db2 list
db directory

10、 列出所有激活的資料庫
#db2 list active databases
11、
列出所有資料庫配置
#db2 get db cfg
12、 刪除資料庫
#db2 drop database [dbname]

(執行此操作要小心)
如果不能刪除,斷開所有資料庫連接或者重啟db2

=========操作數據表命令==========

13、 列出所有用戶表
#db2 list tables
14、列出所有系統表
#db2 list tables for
system
15、列出所有表
#db2 list tables for all
16、 列出系統表
#db2 list
tables for system
17、列出用戶表
#db2 list tables for user
18、 列出特定用戶表

#db2 list tables for schema [user]
19、 創建一個與資料庫中某個表(t2)結構相同的新表(t1)

#db2 create table t1 like t2
20、 將一個表t1的數據導入到另一個表t2
#db2 "insert
into t1 select * from t2"
21、 查詢表
#db2 "select * from table name where
..."
22、 顯示表結構
#db2 describe table tablename
23、 修改列
#db2
alter table [tablename] alter column [columname] set data type varchar(24)

======腳本文件操作命令=======
24、 執行腳本文件
#db2 -tvf scripts.sql
25、幫助命令

* 查看命令幫助
#db2 ? db2start
* 查看錯誤碼信息
#db2 ? 22001
* memo:
詳細命令請使用"db2 ? <command>"進行查看。
=========================
26、備份資料庫

#db2 backup db <db name>
備註:執行以上命令之前需要斷開資料庫連接

27、在線備份資料庫

#db2 -v "BACKUP DATABASE <database name> ONLINE TO <path> WITH 2
BUFFERS BUFFER 1024 INCLUDE LOGS WITHOUT PROMPTING"
28、恢復資料庫
#db2
restore db <source db name>

29、在線恢復資料庫
#db2 "RESTORE DB
<database name> TO <db path> LOGTARGET <logpath> WITHOUT
PROMPTING"
#db2 "ROLLFORWARD DB <database name> TO END OF LOGS AND
STOP" ...
30、導出數據文件

#db2move <db name> export

[-sn
<模式名稱,一般為db2admin>]
[-tn <表名,多個之間用逗號分隔>]
31、導入數據文件

#db2move <db name> import
32、獲取db2資料庫管理配置環境信息
#db2 get dbm cfg

33、.獲取db2某個資料庫資料庫管理配置環境信息
#db2 get db cfg for <db name>

或者:連接至某個資料庫以後執行db2 get db cfg

34、更改db2日誌空間的大小

備註:以下命令為了防止db2資料庫過份使用硬碟空間而設,僅用於開發者自己機器上的db2,如果是伺服器,則參數需要修改。

#db2
UPDATE DB CFG FOR <db name> USING logretain OFF logprimary 3 logsecond 2
logfilsiz 25600;

如果頁大小是4KB,則以上命令創建3個100M的日誌文件,佔用300MB硬碟空間。25600*4KB=102400KB。
35、創建臨時表空間

#DB2 CREATE USER TEMPORARY TABLESPACE STMASPACE PAGESIZE 32 K MANAGED BY
DATABASE USING (FILE 'D:\DB2_TAB\STMASPACE.F1' 10000)
EXTENTSIZE 256

36、獲取資料庫管理器的快照數據
#db2 –v get snapshot for dbm
37、顯示進行程號
#db2
list applications show detail

===================================================
一、載入數據:
1、
以默認分隔符載入,默認為「,」號
db2 "import from btpoper.txt of del insert into btpoper"

2、 以指定分隔符「|」載入
db2 "import from btpoper.txt of del modified by coldel|
insert into btpoper"
二、卸載數據:
1、 卸載一個表中全部數據
db2 "export to
btpoper.txt of del select * from btpoper"
db2 "export to btpoper.txt of del
modified by coldel| select * from btpoper"
2、 帶條件卸載一個表中數據
db2 "export to
btpoper.txt of del select * from btpoper where brhid='907020000'"
db2
"export to cmmcode.txt of del select * from cmmcode where codtp='01'"
db2
"export to cmmcode.txt of del modified by coldel| select * from cmmcode where
codtp='01'"
三、查詢數據結構及數據:
db2 "select * from btpoper"
db2 "select *
from btpoper where brhid='907020000' and oprid='0001'"
db2 "select
oprid,oprnm,brhid,passwd from btpoper"
四、刪除表中數據:
db2 "delete from
btpoper"
db2 "delete from btpoper where brhid='907020000' or
brhid='907010000'"
五、修改表中數據:
db2 "update svmmst set prtlines=0 where
brhid='907010000' and jobtp='02'"
db2 "update svmmst set prtlines=0 where
jobtp='02' or jobtp='03'"
六、聯接資料庫
db2 connect to btpdbs
七、清除資料庫聯接

db2 connect reset 斷開資料庫連接
db2 terminate 斷開資料庫連接
db2 force
applications all 斷開所有資料庫連接
八、備份資料庫
1、 db2 backup db btpdbs
2、
db2move btpdbs export
db2look -d btpdbs -e -x [-a] -o crttbl.sql
九、恢復資料庫

1、 db2 restore db btpdbs without rolling forward
2、 db2 -tvf crtdb.sql

crtdb.sql文件內容:create db btpdbs on /db2catalog
db2 -stvf crttbl.sql

db2move btpdbs import
十、DB2幫助命令:
db2 ?
db2 ? restroe
db2 ?
sqlcode (例:db2 ? sql0803) 註:code必須為4位數,不夠4位,前面補0

十一、bind命令:將應用程序與資料庫作一捆綁,每次恢復資料庫後,建議都要做一次bind
(1) db2 bind br8200.bnd

(2) /btp/bin/bndall /btp/bnd
/btp/bin/bndall /btp/tran/bnd

十二、查看資料庫參數:
db2 get dbm cfg
db2 get db cfg for btpdbs

十三、修改資料庫參數:
db2 update db cfg for btpdbs using LOGBUFSZ 20
db2
update db cfg for btpdbs using LOGFILSIZ 5120
改完後,應執行以下命令使其生效:
db2 stop

db2 start

❻ db2資料庫管理軟體使用什麼好,下載地址

IBM官方管理工具DataStudio
http://www.ibm.com/developerworks/downloads/im/data/index.html

❼ DB2與SQL Server的區別

一、適用平台上的差異。
到目前為止,微軟的SQL Server數據據庫只支持微軟的操作系統。而DB2 資料庫不僅支持Windows操作系統,而且還支持Linux等開源操作系統。也就是說,DB2具有很好的跨平台性能。現在很多企業中,都是以Linux或者Unix操作系統作為資料庫伺服器的。這主要是因為從安全性和穩定性上面Linux或者Unix操作系統都要比Windows操作系統略勝一籌。所以從這一點來說,DB2 資料庫就要比SQLServer資料庫的應用面要廣。
二、安全性上的差異。
對於資料庫來說,特別是那些相互聯網用戶開發的資料庫系統,安全性一直是左右資料庫選型的主要因素。而在這個安全性上面,SQLServer資料庫與DB2資料庫之間有很大的差異。據筆者所知,SQLServer資料庫到目前為止,沒有取得任何國際上認可的安全證書。而對於DB2資料庫來說,其已經獲得了國際上最高級別的ISO標准認證。,雖然說證書不能夠說明問題,但是至少說明DB2 資料庫的安全性也是有所保障的。微軟在SQLServer資料庫上安全投入的不足,讓其無法適應互聯網安全的威脅。為此這也讓SQLServer資料庫少了很多訂單。
三、數據處理上的差異。
在數據處理的能力上,SQLServer資料庫與DB2資料庫也有很大的差異。SQLServer資料庫雖然支持多用戶,但是在大量並發訪問的情況下,性能會顯著下降。而DB2 資料庫可以說是專門為處理大量的並發訪問所涉及的。在數據處理上,如果並發行訪問比較少或者數據量並不是很大,那麼DB2資料庫與SQLServer資料庫相比,並不會有很大的優勢。甚至可能還是SQLServer資料庫的性能比較好。但是如果涉及到海量數據的處理,如數據倉庫或者企業級的應用,那麼DB2資料庫的性能就要遠遠超過SQLServer資料庫。從這一點上來說,DB2 資料庫適合一些企業級的應用,而SQLServer資料庫則因為價格相對便宜、維護相對簡單,而比較適合中小企業使用。
四、在投資成本上的差異。
企業部署資料庫應用時,所耗費的成本主要有三塊,分別為硬體上的投資、資料庫授權與人員的支出。在硬體上的投資,兩個資料庫沒有多大的差異。但是在資料庫的授權成本與人員的支出上,卻有很大的差異。從資料庫的授權成本上看,DB2 資料庫要比SQLServer資料庫高的多。從人員的支出看,企業招募一個DB2 資料庫管理員要比招募一個SQLServer資料庫管理員貴的多。這主要是因為DB2資料庫管理員比較少,而且其往往需要同時維護多個分支機構的應用。所以DB2資料庫管理員的價格就要比SQLServer的價格貴好幾倍。所以說,從整體成本來看,企業部署DB2資料庫要比採用SQLServer資料庫貴許多。
可見DB2與SQLServer資料庫各有優劣。企業需要根據自己的規模、對於安全性的考慮、性能上的要求以及可以接受的成本等多方面來進行權衡,才能夠選擇一個合適自己的資料庫系統。

熱點內容
sqlserver位置 發布:2025-05-10 22:27:31 瀏覽:716
pythonsae 發布:2025-05-10 21:59:30 瀏覽:964
rdp演算法 發布:2025-05-10 21:46:40 瀏覽:918
c語言求素數的方法 發布:2025-05-10 21:46:39 瀏覽:764
戰地5配置最低怎麼設置 發布:2025-05-10 21:44:12 瀏覽:674
microsoftsql2012 發布:2025-05-10 21:43:33 瀏覽:428
電腦買個游戲伺服器 發布:2025-05-10 21:25:15 瀏覽:241
機櫃存儲空間 發布:2025-05-10 21:25:07 瀏覽:267
安卓手機如何修改首屏 發布:2025-05-10 21:17:59 瀏覽:959
緩存關聯替換 發布:2025-05-10 20:56:34 瀏覽:618