db2資料庫常用命令總結
db2資料庫常用命令總結
---安裝資料庫
tar zxvf db2_v101_linuxx64_expc.tar.gz
cd expc/
./db2_install
選擇默認安裝路徑 : yes
---配置資料庫
創建3個用戶組
groupadd -g 901 db2iadm1
groupadd -g 902 db2fadm1
groupadd -g 903 db2dadm1
創建3個用戶
useradd -g db2iadm1 -u 101 -d /home/db2inst1 -m db2inst1
useradd -g db2fadm1 -u 102 -d /home/db2fenc1 -m db2fenc1
useradd -g db2dadm1 -u 103 -d /home/db2dasusr1 -m db2dasusr1
添加3個用戶密碼
passwd db2inst1
passwd db2fenc1
passwd db2dasusr1
檢查用戶組和用戶是否創建成功
cat /etc/group | grep db2
cat /etc/passwd | grep db2
創建實例
cd /opt/ibm/db2/V10.1/instance
./dascrt -u db2dasusr1
./db2icrt -a server -u db2fenc1 db2inst1
配置db2自啟動
cd /opt/ibm/db2/V10.1/instance
./db2iauto -on db2inst1
如果上述方法不能實現開機啟動,可以嘗試在/etc/rc.local中添加如下內容:
su db2inst1 -c /home/db2inst1/sqllib/adm/db2start
配置db2網路服務埠
su - db2inst1
db2 update dbm cfg using SVCENAME 50000
修改DB2連接方式為TCP/IP
db2set DB2COMM=TCPIP
---使用
啟動資料庫
su - db2inst1
db2start
創建資料庫
db2 create db testdb using codeset UTF-8 territory CN pagesize 8192
連接資料庫,命令如下:
db2 connect to db_name user user_name using password
#db_name 是指資料庫的名字, user_name 是資料庫用戶名,password是資料庫密碼
顯示連接
db2 list applications
進入客戶端
db2
sql測試代碼-在shel中
db2 "create table test2(a integer , b integer)"
db2 "insert into test2(a , b) values(1,2)"
db2 "select * from test2"
注意:在客戶端中直接執行SQL即可,但是不能使用分號來結尾。
刪除資料庫的database
db2 drop database database_name
使用以下命令查看資料庫
db2 list db directory
對於資料庫伺服器和客戶端不在同一機器上的,需要藉助catalog命令,來先完成遠程資料庫載入到本地。連接 catalog server 端的 node ,命令如下:
db2 catalog tcpip node node_name remote hostname server service_port
db2 uncatalog node node_name (取消節點的編目)
#其中 node_name 是由你任意起的一個結點名,結點名不能跟已有的結點名重複(可通過db2 list node directory 查看),hostname也可為IP address,service_port為埠號一般默認為50000。節點目錄用於存儲遠程資料庫的所有連通性信息。
遠程連接db2 , catalog 遠端 DB2 資料庫,命令如下:
db2 catalog db db_name [as alias_name] at node node_name
db2 uncatalog db db_name (取消資料庫的編目)
#db_name 是指遠程資料庫的名字, alias_name 是客戶端實例名(可以忽略), db2node 是指上面你所指定的節點node !
用db2look命令生成表結構的DLL腳本
db2look -d db_name -i user_name -w password -a -e -o /home/script.sql
#db_name 是指資料庫的名字, user_name 是資料庫用戶名,password是資料庫密碼
用db2move導出所有表的數據
db2move db_name export -u user_name -p password
#db_name 是指資料庫的名字,user_name 是資料庫用戶名,password是資料庫密碼
用export導出指定的表數據
db2 "export to d:data ab1.ixf of ixf lobs to d:data lobfile lobs modified by lobsinsepfiles messages d:data ab1.msg select * from schema_name.table_name"
#schema_name 是表所屬,table_name是表名, lobsinsepfiles 或 lobsinfile 是生成lob文件 前一個是生成每個,後面是生成到一個文件中
用export導出表中數據導出ixf數據
db2 "export to [path(例:D:"TABLE1.ixf)] of ixf select [欄位(例: * or col1,col2,col3)] from TABLE1 "
用export導出表中數據導出del數據
db2 "export to [path(例:D:"TABLE1.del)] of del select [欄位(例: * or col1,col2,col3)] from TABLE1 "
執行sql腳本
db2 -tvf d:script.sql -z d:script.log
用db2move導入所有表的數據
db2move db_name import -io replace -u user_name -p password
用import導入指定的表數據
db2 "import from d:data ab1.ixf of ixf messages d:data ab1.msg insert into schema_name.table_name"
詳細內容請查看:
https://blog.csdn.net/u014439239/article/details/84000373推薦閱讀: