① DB2資料庫中的表在硬碟上的存儲位置在哪
這個得查,先查資料庫的位置,再查表所屬的表空間,現查表空間的存儲位置,
執行db2cmd
查看本機所有的資料庫編目
db2 list db directory
聯接資料庫
db2 connect to db_name user uid using pwd
查看錶空間位置
db2 list tablespaces show detail
重裝資料庫後,只要原數據的文件沒有刪除,可以用catalog db 載入機器上原有的資料庫,但是只載入一個表空間或一個表我覺得實現不了。
② 在linux上如何邦定一個db2資料庫
一、安裝前准備工作:
1、對於Linux系統,至ibm網站下載軟體包
2、Linux內核設置:編輯/etc/sysctl.conf文件
3、創建相應用戶以及組:
4、創建相應目錄用於存放db2的數據文件以及日誌文件:
這里在根下面創建一個db2總目錄,然後創建了一個15G大小的邏輯卷掛載/db2下面,然後在其下面創建相應的文件夾。
database目錄存放資料庫實例
db2log1存放db2的主日誌文件
db2log2存放鏡像日誌文件
db2temp存放db2臨時表空間
db2用戶的家目錄的位置
二、安裝過程:
安裝可以使用root用戶安裝也可以使用非root用戶安裝,這里就直接使用root用戶安裝了。
以root身份執行db2setup,會彈出以下畫面:
這里選擇安裝企業版,點擊install new:
下一步之後,就出現創建用戶的畫面:
最後點擊finish開始安裝過程。
三、創建資料庫:
如果在安裝過程中,沒有創建資料庫,則後續可以使用db2cc命令創建資料庫。這是一個基於圖形界面的管理工具,使用起來也非常方便。執行db2cc後,會彈出以下畫面:
點擊右側的Create New Database,創建資料庫:
指定資料庫名稱以及存放位置,選中Let DB2 manage my storage,下一步:
點擊finish開始創建。默認db2會創建以下三個表空間:
(1)、catalog table space用於存放catalog表。
(2)、user table space存放所有表和索引數據。
(3)、temporary table space臨時數據的存放位置。
創建完成後,會看到如下畫面:
此時還沒有連接到xzxjdb1上,點擊右側的connect進行連接。連接之後,會看到右側多了好多信息:
使用命令行查看當前資料庫中表空間信息:
四、DB2的簡單管理:
1、查看錶空間信息:
2、查看錶信息:
3、查看當前實例下的所有資料庫信息:
4、停止資料庫:
5、啟動資料庫:
6、設置實例自動啟動:
《Linux就該這么學》里有相關介紹,建議看看。
③ db2怎麼列出當前資料庫下所有表佔用空間的大小
ADMINTABINFO administrative view and ADMIN_GET_TAB_INFO table function - Retrieve size and state information for tables
Example 1: Retrieve size and state information for all tables
SELECT * FROM SYSIBMADM.ADMINTABINFO
Example 2: Retrieve size and state information for the table DBUSER1.EMPLOYEE.
SELECT * FROM TABLE (SYSPROC.ADMIN_GET_TAB_INFO('DBUSER1', 'EMPLOYEE'))
AS T
以上參考 http://publib.boulder.ibm.com/infocenter/db2luw/v9/index.jsp?topic=/com.ibm.db2.udb.admin.doc/doc/r0022024.htm
DATA_OBJECT_L_SIZE DATA_OBJECT_P_SIZE這兩個欄位值為你需要的信息。
第一個示例查詢時可以帶上模式名或者表名來去除系統表的信息
④ AIX 下 db2 如何查看資料庫空間建在哪裡
這是不是你想要的?關於database
db2 => LIST DATABASE DIRECTORY
System Database Directory
Number of entries in the directory = 1
Database 1 entry:
Database alias = MY_DB
Database name = MY_DB
Local database directory = /var/db/db2inv/DB
Database release level = a.00
Comment =
Directory entry type = Indirect
Catalog database partition number = 0
Alternate server hostname =
Alternate server port number =
關於tablespace..
db2 => list tablespaces
Tablespaces for Current Database
Tablespace ID = 0
Name = SYSCATSPACE
Type = System managed space
Contents = Any data
State = 0x0000
Detailed explanation:
Normal
Tablespace ID = 1
Name = TEMPSPACE1
Type = System managed space
Contents = System Temporary data
State = 0x0000
Detailed explanation:
Normal
Tablespace ID = 2
Name = USERSPACE1
Type = System managed space
Contents = Any data
State = 0x0000
Detailed explanation:
Normal
Tablespace ID = 3
Name = INV_TS
Type = Database managed space
Contents = Any data
State = 0x0000
Detailed explanation:
Normal
Tablespace ID = 4
Name = INV_TEMP_TS
Type = Database managed space
Contents = System Temporary data
State = 0x0000
Detailed explanation:
Normal
Tablespace ID = 5
Name = USERTEMP1
Type = System managed space
Contents = User Temporary data
State = 0x0000
Detailed explanation:
Normal
Tablespace ID = 6
Name = SYSTOOLSPACE
Type = System managed space
Contents = Any data
State = 0x0000
Detailed explanation:
Normal
db2 => list tablespace containers for 1
Tablespace Containers for Tablespace 1
Container ID = 0
Name = /var/db/db2inv/DB/db2inv/NODE0000/SQL00001/SQLT0001.0
Type = Path
⑤ 如何查看db2表空間對應的物理文件
select * from dba_tablespaces--查看抄表空間
--查看錶空間文件路徑
select tablespace_name,file_id,bytes/1024/1024,file_name
from dba_data_files order by file_id;
--查看用戶和默認表空間的關系
⑥ 在db2資料庫中如何查看已經創建的bufferpool
通過查詢SYSCAT.BUFFERPOOLS系統視圖可以查看緩沖池信息
SELECT * FROM SYSCAT.BUFFERPOOLS
要找出哪個緩沖池被分配給了表空間,可以使用下面的語句
SELECT TBSPACE, BUFFERPOOLID FROM SYSCAT.TABLESPACES