精品熟女碰碰人人a久久,多姿,欧美欧美a v日韩中文字幕,日本福利片秋霞国产午夜,欧美成人禁片在线观看

DB2數據庫

db2數據庫

本章介紹db2的創建,激活和停用數據庫的相關語法。

 

數據庫體系結構

數據庫是表,模式,緩沖池,日志,存儲組和表空間合作有效地處理數據庫操作的集合。

 

數據庫目錄

數據庫目錄有組織的存儲數據庫。當創建一個數據庫,所有有關數據庫的詳細信息存儲在一個數據庫目錄,如默認存儲設備,配置文件和臨時表清單等詳細信息

分區全局目錄是在實例文件夾中創建。該目錄包含關于數據庫中的所有全局信息。這個分區全局目錄被命名為nodexxxx/ sqlyyy,其中xxxx是數據分區號,yyy是數據庫令牌。

在分區全局目錄,成員特定的目錄創建。該目錄包含本地數據庫的信息。會員專用目錄被命名為memberxxxx其中xxxx是一個成員號。 db2企業服務器版環境中運行在單一的成員,只有一個成員的具體目錄。這個成員的特定目錄唯一命名為member0000。

 

分區全局目錄

目錄位置:/nodexxx/sqlxxx

分區全局目錄包含下面列出的數據庫相關的文件。

  • 全局死鎖寫入到文件的事件監控文件
  • 表空間信息文件 [sqlspcs.1, sqlspcs.2]
  • 存儲組控制文件 [sqlsgf.1, sqlsgf.2]
  • 臨時表空間容器文件 [/storage path//t0000011/c000000.tmp/sql00002.member0001.tda]
  • 全局配置文件 [sqldbconf]
  • 歷史文件 [db2rhist.asc, db2rhist.bak, db2tschg.his, db2tschg.his]
  • 日志記錄相關的文件 [sqlogctl.glfh.1, sqlogctl.glfh.2]
  • 鎖定文件 [sqlinslk, sqltmplk]
  • 自動存儲容器
  •  

    成員指定的目錄

    目錄位置: /nodexxxx/sqlxxxx/member0000

    該目錄包含:

  • 數據庫相關聯的對象
  • 緩沖池信息文件 [sqlbp.1, sqlbp.2]
  • 本地事件監測文件
  • 日志記錄相關的文件 [sqlogctl.lfh.1, sqlogctl.lfh.2, sqlogmir.lfh].
  • 本地配置文件
  • 死鎖事件監視器文件。詳細的死鎖事件監視器文件存儲在目錄節點的數據庫目錄中的情況下,ese和分區數據庫環境。
  •  

    創建數據庫

    可以創建實例的數據庫使用“create database”命令。所有數據庫都使用默認的存儲組“ibmstogroup”,這是在創建實例時創建創建。在db2中,所有的數據庫表都存儲在“tablespace”,它利用各自的存儲組。

    該權限的數據庫被自動設置為public[createtab,bindadd,connect,implicit_schema,并選擇],但是,如果restrictive選項,將不授予權限為public。

     

    創建非限制性的數據庫。

    該命令用來創建一個非限制性的數據庫。

    語法:[要創建一個新的數據庫。 “database_name”表示一個新的數據庫名稱,要創建]

    db2 create database <database name>
    

    例如:要創建名為“one”新的非限制性數據庫]

    db2 create database one
    

    輸出:

    db20000i the create database command completed successfully.
    

     

    創建數據庫的限制

    嚴格數據庫的調用此命令創建的。

    語法: [在下面的語法中,“db_name”表示數據庫的名稱。]

    db2 create database <db_name> restrictive
    

    例如:要創建一個名為“two”的新限制數據庫]

    db2 create database two restrictive
    

     

    用不同的用戶定義的位置創建數據庫

    創建一個默認的存儲組“ibmstogroup”在不同路徑的數據庫。此前,調用命令“create database”沒有存儲或在特定位置創建數據庫,或用戶定義的任何位置。要使用用戶定義的數據庫位置創建數據庫,如以下步驟:

    語法: [在下面的語法中,“db_name'表示'數據庫名稱'和'data_location”表示,其中有將數據存儲在文件夾和“db_path_location'表示'data_location”的驅動程序位置。]

    db2 create database '<db_name>' on '<data location>' dbpath on '<db_path_location>'
    

    示例: [創建名為“four”,其中數據被存儲在“data1”數據庫和該文件夾'dbpath1'中存儲]

    db2 create database four on '/data1' dbpath on '/dbpath1'
    

    查看本地或系統數據庫目錄中的文件

    執行這個命令來查看當前實例可用的目錄列表。

    語法:

    db2 list database directory
    

    示例 :

    db2 list database directory
    

    輸出:

    system database directory  
     number of entries in the directory = 6  
     database 1 entry:  
     database alias                       = four  
     database name                        = four  
     local database directory             =
     /home/db2inst4/desktop/dbpath  
     database release level               = f.00  
     comment                              =  
     directory entry type                 = indirect  
     catalog database partition number    = 0  
     alternate server hostname            =  
     alternate server port number         =  
    database 2 entry:
    database alias                       = six  
    database name                        = six  
    local database directory             = /home/db2inst4  
    database release level               = f.00  
    comment                              =  
    directory entry type                 = indirect  
    catalog database partition number    = 0  
    alternate server hostname            =  
    alternate server port number         =
    

     

    激活數據庫

    該命令啟動了所有必要的服務,為特定的數據庫,這樣的數據庫是可用的應用程序。

    語法:[‘db_name’ 指示數據庫名稱]

    db2 activate db <db_name>
    

    示例: [激活數據庫 ‘one’]

    db2 activate db one
    

     

    停用數據庫

    使用此命令,可以停止數據庫服務。

    語法:

    db2 deactivate db <db_name>
    

    示例: [要停用數據庫 ‘one’]

    db2 deactivate db one
    

     

    連接到數據庫

    創建一個數據庫,把它投入使用后,需要連接或啟動數據庫。

    語法:

    db2 connect to <database name>
    

    示例: [連接數據庫到當前的一個 cli]

    db2 connect to one
    

    輸出

    database connection information  
     database server        = db2/linuxx8664 10.1.0  
     sql authorization id   = db2inst4  
     local database alias   = one
    

     

    驗證如果數據庫處于限制

    要檢查這個數據庫是限制與否,這里是使用的語法:

    語法: [在下面的語法中,“db”表示數據庫,“cfg”表示的配置,'db_name'表示數據庫名稱]

    db2 get db cfg for <db_name> | grep -i restrict
    

    例如:要檢查'one'數據庫是否處于限制]

    db2 get db cfg for one | grep -i restrict
    

    輸出:

    restrict access                       = no
    

     

    配置數據庫管理器和數據庫

    實例配置(數據庫管理器配置)被存儲于命名為'db2system'文件和數據庫相關的配置被存儲于命名為'sqldbcon'文件。這些文件不能直接編輯。可以使用該api調用的工具編輯這些文件。使用命令行處理器,可以使用這些命令。

     

    數據庫管理器配置參數

    語法:[獲得實例數據庫管理器的信息]

    db2 get database manager configuration
    

    或者

    db2 get dbm cfg
    

    語法:[更新實例數據庫管理器]

    db2 update database manager configuration
    

    或者

    db2 update dbm cfg
    

    語法:[重置以前的配置]

    db2 reset database manager configuration
    

    或者

    db2 reset dbm cfg
    

     

    數據庫配置參數

    語法:[來獲得數據庫的信息] brush:db2

    db2 get database configuration
    

    或者

    db2 get db cfg
    

    語法:[要更新數據庫配置]

    db2 update database configuration
    

    或者

    db2 update db cfg
    

    語法:[重置數據庫配置以前配置的值]

    db2 reset database configuration
    

    或者

    db2 reset db cfg
    

    語法:[要檢查當前的活動數據庫的大小]

    db2 "call get_dbsize_info(?,?,?,-1)"
    

    例如:[要驗證當前激活數據庫的大小]

    db2 "call get_dbsize_info(?,?,?,-1)"
    

    輸出:

    value of output parameters   
    --------------------------   
    parameter name  : snapshottimestamp   
    parameter value : 2014-07-02-10.27.15.556775  
    parameter name  : databasesize   
    parameter value : 105795584  
    parameter name  : databasecapacity   
    parameter value : 396784705536  
    return status = 0
    

     

    估計所需的空間數據庫

    以估計數據庫的大小,下列因素的貢獻必須考慮:

  • 系統目錄表
  • 用戶表數據
  • 長字段數據
  • 大對象(lob)數據
  • 索引空間
  • 臨時工作空間
  • xml數據
  • 日志文件空間
  • 本地數據庫目錄
  • 系統文件
  •  

    檢查數據庫權限

    可以使用下面的語法檢查的數據庫認證對非限制數據庫授予public。

    第一步:驗證用戶名和實例的密碼連接到數據庫。

    語法:[連接到數據庫的用戶名和密碼]

    db2 connect to <db_name> user <userid> using <password>
    

    例如:為了連接“one”數據庫,用戶id'db2inst4'和密碼'db2inst4']

    db2 connect to one user db2inst4 using db2inst4
    

    輸出:

    database connection information  
     database server        = db2/linuxx8664 10.1.0  
     sql authorization id   = db2inst4  
     local database alias   = one
    

    第二步:驗證數據庫的權限。

    語法:[下面的語法顯示認證服務,為當前數據庫的結果]

    db2 "select substr(authority,1,25) as authority, d_user, d_group,
    d_public, role_user, role_group, role_public,d_role from table(
    sysproc.auth_list_authorities_for_authid ('public','g'))as t
    order by authority"
    

    例如:

    db2 "select substr(authority,1,25) as authority, d_user, d_group,
    d_public, role_user, role_group, role_public,d_role from table(
    sysproc.auth_list_authorities_for_authid ('public','g'))as t
    order by authority"
    

    輸出:

    authority                 d_user d_group d_public role_user role_group role_public d_role  
    ------------------------- ------ ------- -------- --------- ---------- ----------- ------  
    accessctrl                *      *       n        *         *          n           *       
    bindadd                   *      *       y        *         *          n           *       
    connect                   *      *       y        *         *          n           *       
    createtab                 *      *       y        *         *          n           *       
    create_external_routine   *      *       n        *         *          n           *       
    create_not_fenced_routine *      *       n        *         *          n           *       
    create_secure_object      *      *       n        *         *          n           *       
    dataaccess                *      *       n        *         *          n           *       
    dbadm                     *      *       n        *         *          n           *       
    explain                   *      *       n        *         *          n           *       
    implicit_schema           *      *       y        *         *          n           *       
    load                      *      *       n        *         *          n           *       
    quiesce_connect           *      *       n        *         *          n           *       
    secadm                    *      *       n        *         *          n           *       
    sqladm                    *      *       n        *         *          n           *       
    sysadm                    *      *       *        *         *          *           *       
    sysctrl                   *      *       *        *         *          *           *       
    sysmaint                  *      *       *        *         *          *           *       
    sysmon                    *      *       *        *         *          *           *       
    wlmadm                    *      *       n        *         *          n           *         
    20 record(s) selected.
    

     

    刪除數據庫

    使用 drop 命令,可以刪除我們從實例數據庫目錄數據庫。這個命令可以刪除所有對象,表,空間,集裝箱和相關文件。

    語法:[若要從實例中刪除任何數據庫]

    db2 drop database <db_name>
    

    例子:[從實例中刪除'six'的數據庫]

    db2  drop database six
    

    輸出:

    db20000i the drop database command completed successfully
    

    下一節:db2 緩沖池

    db2 教程

    相關文章