溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點(diǎn)擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

db2數(shù)據(jù)庫的啟動和關(guān)閉

發(fā)布時(shí)間:2020-08-11 05:09:01 來源:ITPUB博客 閱讀:227 作者:路途中的人2012 欄目:建站服務(wù)器

在一個(gè)DB2 實(shí)例下,可以創(chuàng)建多個(gè)database(具體每個(gè)實(shí)例下可以創(chuàng)建多少個(gè)database,可以通過DB2 GET DBM CFG查看.一旦建立了數(shù)據(jù)庫之后,就可以對其進(jìn)行操作,然而,在向數(shù)據(jù)庫中建立對象或訪問數(shù)據(jù)庫中的對象(數(shù)據(jù))之前,必須先知道如何啟動和停止數(shù)據(jù)庫.

本小節(jié)簡單介紹了db2 database通過command line的方式如何實(shí)現(xiàn)啟動和停止.

激活數(shù)據(jù)庫

如果在database沒有激活之前,就在應(yīng)用中使用connect to database_name或隱式連接,那么應(yīng)用就必須要進(jìn)行等待,知道數(shù)據(jù)庫管理器啟動了你要連接的數(shù)據(jù)庫.一般第一個(gè)應(yīng)用會引發(fā)等待數(shù)據(jù)庫管理器執(zhí)行數(shù)據(jù)庫啟動的所有開銷.

 

我們也可以使用activate database database_name這樣的命令啟動特定的數(shù)據(jù)庫.這個(gè)命令就會免除第一個(gè)應(yīng)用程序連接上來的時(shí)候等候數(shù)據(jù)庫初始化所花費(fèi)的時(shí)間。一般情況下,DB2 DBA會提前激活所有必要的數(shù)據(jù)庫.

 

注意:1)如果發(fā)出activate database命令的應(yīng)用已經(jīng)與一個(gè)database建立了活動的數(shù)據(jù)庫連接,就回返回錯(cuò)誤消息.

2)如果需要重新啟動(restart)的數(shù)據(jù)庫接受了一個(gè)activate database命令,那么這個(gè)activate database命令就會象connect to 或隱式連接一樣工作.

3)如果數(shù)據(jù)庫配置了

啟用的自動重新啟動 (AUTORESTART) = ON

那么在activate database命令對其初始化之前,數(shù)據(jù)庫會重新啟動.

 

察看指定數(shù)據(jù)庫的配置參數(shù)
--默認(rèn)
DB2 GET DB CFG FOR study

--分屏顯示
DB2 GET DB CFG FOR study | More

--將顯示結(jié)果存入study.txt 文件中
DB2 GET DB CFG FOR study > study.txt

下面是一個(gè)示例,我在當(dāng)前DB2實(shí)例下,創(chuàng)建了3個(gè)database,我利用activate命令挨個(gè)將他們激活

    D:DB2BIN>db2 db2start
    DB20000I  DB2START命令成功完成。
    
    D:DB2BIN>db2 list database directory
    
     系統(tǒng)數(shù)據(jù)庫目錄
    
     目錄中的條目數(shù) = 3
    
    數(shù)據(jù)庫 1 條目:
    
     數(shù)據(jù)庫別名                      = TEST
     數(shù)據(jù)庫名稱                      = TEST
     本地?cái)?shù)據(jù)庫目錄                  = D:DB2test
     數(shù)據(jù)庫發(fā)行版級別                = c.00
     注釋                            = test
     目錄條目類型                    = 間接
     目錄數(shù)據(jù)庫分區(qū)號                = 0
     備用服務(wù)器主機(jī)名                =
     備用服務(wù)器端口號                =
    
    數(shù)據(jù)庫 2 條目:
    
     數(shù)據(jù)庫別名                      = BANK
     數(shù)據(jù)庫名稱                      = BANK
     本地?cái)?shù)據(jù)庫目錄                  = D:db2bank
     數(shù)據(jù)庫發(fā)行版級別                = c.00
     注釋                            = bank
     目錄條目類型                    = 間接
     目錄數(shù)據(jù)庫分區(qū)號                = 0
     備用服務(wù)器主機(jī)名                =
     備用服務(wù)器端口號                =
    
    數(shù)據(jù)庫 3 條目:
    
     數(shù)據(jù)庫別名                      = STUDY
     數(shù)據(jù)庫名稱                      = STUDY
     本地?cái)?shù)據(jù)庫目錄                  = D:db2study
     數(shù)據(jù)庫發(fā)行版級別                = c.00
     注釋                            = STUDY
     目錄條目類型                    = 間接
     目錄數(shù)據(jù)庫分區(qū)號                = 0
     備用服務(wù)器主機(jī)名                =
     備用服務(wù)器端口號                =
    
    
    D:DB2BIN>db2 list active databases
    SQL1611W  “數(shù)據(jù)庫系統(tǒng)監(jiān)視器”沒有返回任何數(shù)據(jù)。
    
    D:DB2BIN>db2 activate database study
    DB20000I  ACTIVATE DATABASE命令成功完成。
    
    D:DB2BIN>db2 list active databases
    
                               活動數(shù)據(jù)庫
    
    數(shù)據(jù)庫名稱                      = STUDY
    當(dāng)前連接的應(yīng)用程序              = 0
    數(shù)據(jù)庫路徑                      = D:db2studyDB2NODE0000SQL00001
    
    
    D:DB2BIN>db2 activate database bank
    DB20000I  ACTIVATE DATABASE命令成功完成。
    
    D:DB2BIN>db2 list active databases
    
                               活動數(shù)據(jù)庫
    
    數(shù)據(jù)庫名稱                      = STUDY
    當(dāng)前連接的應(yīng)用程序              = 0
    數(shù)據(jù)庫路徑                      = D:db2studyDB2NODE0000SQL00001
    
    數(shù)據(jù)庫名稱                      = BANK
    當(dāng)前連接的應(yīng)用程序              = 0
    數(shù)據(jù)庫路徑                      = D:db2bankDB2NODE0000SQL00001
    
    
    D:DB2BIN>db2 activate database test
    DB20000I  ACTIVATE DATABASE命令成功完成。
    
    D:DB2BIN>db2 list active databases
    
                               活動數(shù)據(jù)庫
    
    數(shù)據(jù)庫名稱                      = STUDY
    當(dāng)前連接的應(yīng)用程序              = 0
    數(shù)據(jù)庫路徑                      = D:db2studyDB2NODE0000SQL00001
    
    數(shù)據(jù)庫名稱                      = BANK
    當(dāng)前連接的應(yīng)用程序              = 0
    數(shù)據(jù)庫路徑                      = D:db2bankDB2NODE0000SQL00001
    
    數(shù)據(jù)庫名稱                      = TEST
    當(dāng)前連接的應(yīng)用程序              = 0
    數(shù)據(jù)庫路徑                      = D:DB2testDB2NODE0000SQL00001
    
    
    D:DB2BIN>

停止數(shù)據(jù)庫

由activate database命令初始化的數(shù)據(jù)庫可以由deactivate database命令關(guān)閉,也可以通過stop database manager(或db2stop)命令終止數(shù)據(jù)庫管理器來關(guān)閉.

如果使用activate database命令初始化一個(gè)數(shù)據(jù)庫,那么最后一個(gè)與數(shù)據(jù)庫斷開連接的應(yīng)用就不會關(guān)閉數(shù)據(jù)庫.必須要使用deactivate database.在這種情況下,stop database manager(或db2stop)會關(guān)閉數(shù)據(jù)庫,也會終止實(shí)例.

 

如果使用connect to 或隱式地連接啟動數(shù)據(jù)庫,然后再由另外一個(gè)應(yīng)用對相同的數(shù)據(jù)庫發(fā)出activate database命令,那么就必須使用deactivate database命令關(guān)閉數(shù)據(jù)庫.如果沒有使用activate database啟動數(shù)據(jù)庫,那么當(dāng)最后一個(gè)應(yīng)用斷開與數(shù)據(jù)庫連接的時(shí)候,數(shù)據(jù)庫就會關(guān)閉.

示例一:使用connect to方式啟動的數(shù)據(jù)庫


D:DB2BIN>db2 list active databases
SQL1611W “數(shù)據(jù)庫系統(tǒng)監(jiān)視器”沒有返回任何數(shù)據(jù)。

D:DB2BIN>db2 connect to study --連接到study數(shù)據(jù)庫,將自動激活study數(shù)據(jù)庫

數(shù)據(jù)庫連接信息

數(shù)據(jù)庫服務(wù)器 = DB2/NT 9.5.0
SQL 授權(quán)標(biāo)識 = ZHANGRP
本地?cái)?shù)據(jù)庫別名 = STUDY

D:DB2BIN>db2 list active databases

活動數(shù)據(jù)庫

數(shù)據(jù)庫名稱 = STUDY
當(dāng)前連接的應(yīng)用程序 = 1
數(shù)據(jù)庫路徑 = D:db2studyDB2NODE0000SQL00001

 

說明:數(shù)據(jù)庫被激活,并有一個(gè)應(yīng)用連接上來(就上面的connect to study操作)

D:DB2BIN>db2 connect reset --斷開連接
DB20000I SQL命令成功完成。

D:DB2BIN>

D:DB2BIN>db2 list active databases
SQL1611W “數(shù)據(jù)庫系統(tǒng)監(jiān)視器”沒有返回任何數(shù)據(jù)。

D:DB2BIN>

說明:可以發(fā)現(xiàn),上面的連接斷開后,數(shù)據(jù)庫study也自動停止(因?yàn)檫@個(gè)study數(shù)據(jù)庫是通過connect to 的方式激活的)
示例二:使用activate database方式啟動的數(shù)據(jù)庫

    D:DB2BIN>db2 list active databases      --這個(gè)時(shí)候沒有啟動的數(shù)據(jù)庫
    SQL1611W  “數(shù)據(jù)庫系統(tǒng)監(jiān)視器”沒有返回任何數(shù)據(jù)。
    
    
    D:DB2BIN>db2 activate database study    --用activate database激活study數(shù)據(jù)庫
    DB20000I  ACTIVATE DATABASE命令成功完成。
    
    
    D:DB2BIN>db2 list active databases      --可以看到study數(shù)據(jù)已經(jīng)激活,但沒有應(yīng)用連接上來
    
                               活動數(shù)據(jù)庫
    
    數(shù)據(jù)庫名稱                      = STUDY
    當(dāng)前連接的應(yīng)用程序              = 0
    數(shù)據(jù)庫路徑                      = D:db2studyDB2NODE0000SQL00001
    
    
    D:DB2BIN>db2 connect to study          --發(fā)起一個(gè)連接到study數(shù)據(jù)庫
    
       數(shù)據(jù)庫連接信息
    
     數(shù)據(jù)庫服務(wù)器         = DB2/NT 9.5.0
     SQL 授權(quán)標(biāo)識         = ZHANGRP
     本地?cái)?shù)據(jù)庫別名       = STUDY
     
    D:DB2BIN>db2 list active databases     --再看一下活動的數(shù)據(jù)庫,發(fā)現(xiàn)study 數(shù)據(jù)庫上有一個(gè)應(yīng)用連接上來了
    
                               活動數(shù)據(jù)庫
    
    數(shù)據(jù)庫名稱                      = STUDY
    當(dāng)前連接的應(yīng)用程序              = 1
    數(shù)據(jù)庫路徑                      = D:db2studyDB2NODE0000SQL00001
    
    D:DB2BIN>db2 connect reset             --關(guān)閉剛才那個(gè)連接,看看數(shù)據(jù)庫是不是會自動關(guān)閉
    DB20000I  SQL命令成功完成。
    
    D:DB2BIN>db2 list active databases     --數(shù)據(jù)庫依然啟動,雖然沒有了任何連接
    
                               活動數(shù)據(jù)庫
    
    數(shù)據(jù)庫名稱                      = STUDY
    當(dāng)前連接的應(yīng)用程序              = 0
    數(shù)據(jù)庫路徑                      = D:db2studyDB2NODE0000SQL00001
    
    D:DB2BIN>db2 deactivate database study  --使用deactivate database命令關(guān)閉數(shù)據(jù)庫
    DB20000I  DEACTIVATE DATABASE命令成功完成。
    
    D:DB2BIN>
    
    D:DB2BIN>db2 list active databases
    SQL1611W  “數(shù)據(jù)庫系統(tǒng)監(jiān)視器”沒有返回任何數(shù)據(jù)。
    
    D:DB2BIN>

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI