linux連接db2資料庫
DB2資料庫命令簡介
1.啟動資料庫
DB2start
2.停止資料庫
DB2stop
DB2資料庫在linux相關指令之3.連接資料庫
DB2 connect to o_yd user DB2 using pwd
4.讀資料庫管理程序配置
DB2 get dbm cfg
5.寫資料庫管理程序配置
DB2 update dbm cfg using 參數名 參數值
6.讀資料庫的配置
DB2 connect to o_yd user DB2 using pwd
DB2 get db cfg for o_yd
7.寫資料庫的配置
DB2 connect to o_yd user DB2 using pwd
DB2 update db cfg for o_yd using 參數名 參數值
8.關閉所有應用連接
DB2 force application all
DB2 force application ID1,ID2,,,Idn MODE ASYNC
(DB2 list application for db o_yd show detail)
9.備份資料庫
DB2 force application all
DB2 backup db o_yd to d:
(DB2 initialize tape on \.tape0)
(DB2 rewind tape on \.tape0)
DB2 backup db o_yd to \.tape0
10.恢復資料庫
DB2 restore db o_yd from d: to d:
DB2 restore db o_yd from \.tape0 to d:
DB2資料庫在linux相關指令之11.綁定存儲過程
DB2 connect to o_yd user DB2 using pwd
DB2 bind c:dfplus.bnd
拷貝存儲過程到伺服器上的C:sqllibfunction目錄中
12.整理表
DB2 connect to o_yd user DB2 using pwd
DB2 reorg table ydd
DB2 runstats on table ydd with distribution and indexes all
13.導出表數據
DB2 export to c:dftz.txt of del select * from dftz
DB2 export to c:dftz.ixf of ixf select * from dftz
14.導入表數據
import from c:123.txt of del insert into ylbx.czyxx
DB2 import to c:dftz.txt of del commitcount 5000 messages c:dftz.msg insert into dftz
DB2 import to c:dftz.ixf of ixf commitcount 5000 messages c:dftz.msg insert into dftz
DB2 import to c:dftz.ixf of ixf commitcount 5000 insert into dftz
DB2 import to c:dftz.ixf of ixf commitcount 5000 insert_update into dftz
DB2 import to c:dftz.ixf of ixf commitcount 5000 replace into dftz
DB2 import to c:dftz.ixf of ixf commitcount 5000 create into dftz (僅IXF)
DB2 import to c:dftz.ixf of ixf commitcount 5000 replace_create into dftz (僅IXF)
15.執行一個批處理文件
DB2 -tf 批處理文件名
(文件中每一條命令用 ;結束)
16.自動生成批處理文件
建文本文件:temp.sql
select 'runstats on table DB2.' || tabname || '
with distribution and detailed indexes all;'
from syscat.tables where tabschema='DB2' and type='T';
DB2 -tf temp.sql>runstats.sql
17.自動生成建表(視圖)語句
在伺服器上:C:sqllibmisc目錄中
DB2 connect to o_yd user DB2 using pwd
DB2look -d o_yd -u DB2 -e -p -c c:o_yd.txt
DB2資料庫在linux相關指令之18.其他命令
grant dbadm on database to user bb
19select * from czyxx fetch first 1 rows only
20DB2look -d ylbx -u DB2admin -w -asd -a -e -o a.txt21. 顯示當前用戶所有表
list tables
22.列出所有的系統表
list tables for system
23.查看錶結構
DB2 describe select * from user.tables
❷ IBM/DB2.Linux的安裝配置管理
IBM/DB2.Linux的安裝配置管理
作為關系型資料庫技術的領導者,IBM公司在2001年將世界排名第四的Informix資料庫公司納入麾下,並將其所擁有的先進特性融入到DB2當中。下面我准備了關於IBM/DB2.Linux的安裝配置管理的.文章,提供給大家參考!
1.安裝IBM/DB2 V9.1 Linux版
下載得到安裝文件 db2exc_912_LNX_x86.tar.gz ,解壓到ext2/3分區
# cd db2exc_912_LNX_x86
# ./db2setup
(1)彈出java的安裝界面,install new instance
(2)使用“Typical Mode”,選擇安裝目錄,默認為 DB2_root=/opt/ibm/db2/V9.1/
# echo DB2_root=/opt/ibm/db2/V9.1/ >> /etc/profile
(3)並默認創建 db2inst?、db2fenc?、db2adsusr? 這個幾個用戶最重要的是本地實例管理用戶 db2inst? 其負責管理資料庫實例
(4)創建Instance,然後下一步繼續安裝,看到successful結果,表示成功
(5) # ps -e | grep db2 應該可以看到三個不同名稱的進程
(6) # tail /etc/inittab #可以看到最後一行就是啟動db2的方法
fmc:2345:respawn:/opt/ibm/db2/V9.1/bin/db2fmcd #DB2 Fault Monitor Coordinator
2.配置IBM/DB2的庫開發和CLI/ODBC連接
# su db2inst1
$ cd $DB2_ROOT
## 編目(catalog):
$ ./db2 catalog tcpip node remote server
$ ./db2 catalog db at node
$ ./db2 connect to user using
## 反編目(uncatalog):
$ ./db2 uncatalog db
$ ./db2 uncatalog node
3.修改,使用IBM/DB2的CLI/ODBC進行程序開發
(1)如果不想使用db2實例,而只是想使用CLI/ODBC來開發程序,可以注釋 /etc/inittab 中啟動db2的那一句,放棄啟動IBM/DB2資料庫服務。
(2)環境變數配置文件 : /home/db2inst1/sqllib/db2profile
查看 /etc/profile ,保證(添加或者修改)有以下兩句
export DB2INSTANCE=db2inst1
export PATH=$DB2_ROOT/binPATH
export LD_LIBRARY_PATH=$DB2_ROOT/lib32LD_LIBRARY_PATH
(3)編目目標機器地址與ODBC的DSN的關系,CLI/ODBC 中最重要的頭文件(include)和庫(lib)
$DB2_ROOT/lib32 或 其聯接 /home/db2inst1/sqllib/lib,其中最重要的是libdb2.so
4.資料庫備份及恢復
(1).使用用戶名和口令登錄伺服器
# db2 connect to ecm3000 user using
(2).強制停止所有應用,是非同步的
# db2 force applications all
(3).將資料庫備份到指定目錄下
# db2 backup database to
(4).從指定目錄中恢復資料庫
# db2 restore database from
5.修改和卸載DB2
請先反編目()如步驟2中
# su db2inst1
$ cd $DB2_ROOT/install
$ ./db2_deinstall -a
等待結束 ...
修改該/etc/inittab 中啟動db2的那一句,保證放棄啟動IBM/DB2資料庫服務。
;❸ Linux下DB2監聽服務怎麼啟動
操作方法如下:
1.將secureCRT連接到資料庫所在的linux機器,然後切換到oracle用戶模式下;
2.接下來用sqlplus登錄到資料庫,然後再關閉資料庫;
3.然後起動監聽;
4.最後客戶端連接。
工具和原料:linux安裝,oracle資料庫,SecureCRT,任意ssh連接工具都可以。
❹ linux下的php如何連接db2資料庫
你是apt裝的,不存在編譯。
apt難道沒有提供db2的驅動嗎?試下
apt-get
install
pdo
pdo_odbc
然後在php.ini里開啟,用pdo連接試試。
如果我的回答沒能幫助您,請繼續追問。
您也可以向我們團隊發出請求,會有更專業的人來為您解答。
❺ 怎樣設置linux上db2資料庫的遠程訪問許可權
DB2連接遠程資料庫實例的步驟 一: 開始菜單--------運行--------輸入地db2cmd地,進入DB2命令行處理器,如下圖: 二:輸入地db2地,進入命令處理狀態,如下圖: 三:輸入 CATALOG TCPIP NODE nodeone REMOTE 192.9.107.64 SERVER 50000 remote_instance db2admin 注:其中nodeone為自己取的節點名稱,192.9.107.64為遠程資料庫的IP地址,db2admin為遠程資料庫的實例.結果如下: 四:輸入 CATALOG DB RONESERV AS testdb AT NODE nodeone 注:其中RONESERV為遠程資料庫的名稱,testdb為該遠程資料庫在本地機器上的別名,nodeone為步驟三中我們建立的節點名稱 五:此時即可像操作本地資料庫一樣操作遠程資料庫了,輸入: connect to testdb user db2admin using lianxi 注:其中testdb為我們在步驟四中為遠程資料庫指定的別名,db2admin為遠程資料庫的用戶名,lianxi為遠程資料庫的密碼 此時您可看到,DB2的控制中心能像操作本地資料庫一樣操作遠程資料庫了.
❻ 如何安裝DB2 個人版在Linux 操作系統之下
本文簡略的介紹了DB2 pe在linux系統上的安裝過程。DB2 PE簡介DB2 Personal Edition(DB2 PE)是在低價位的商用硬體(commodity hardware)台式機上運行的單用戶 RDBMS。DB2 PE 可用於 Windows 98、Windows ME、Windows NT(SP6 或更高版本)、Windows 2000(推薦 SP2)、Windows XP 和 Linux。在 Microsoft 發布 Window 2003 伺服器時,DB2 PE 將支持它們。DB2 PE 擁有 DB2 Workgroup Server Edition 的所有功能部件,不過有一個例外:遠程客戶機無法連接到運行著該 DB2 版本的資料庫上。(但是,帶有控制中心(Control Center)的工作站可以連接到這些資料庫,以執行遠程管理。)因為「這個 DB2 到底還是 DB2」,所以那些針對 DB2 PE 而開發的應用程序都將能夠在 DB2 的任何其它版本上運行。您可以使用 DB2 PE 開發 DB2 應用程序,然後再將它們用於生產環境。
不管 PC 是否連接到網路,DB2 PE 都很有用;對於需要強大數據存儲的用戶,或者需要提供資料庫存儲工具並且能夠連接到遠程 DB2 伺服器的用戶,它在這兩種情況中都很有用。DB2 PE 還附帶了 DB2 倉庫中心(DB2 Warehouse Center),所以用戶可以實驗象抽取、轉換以及裝入之類的商業智能建模功能(請參閱數據倉庫是什麼?)。DB2 PE 具有可擴展性,可以支持所有 DB2 Extender:XML(現已捆綁到 DB2 安裝)、Spatial 和 Net Search。(更多信息,請參閱 DB2 Extender。)
偶爾進行連接的用戶可能想利用 DB2 個人版 內置的復制功能部件和 DB2 控制伺服器(DB2 Control Server)來建立同步環境,在外的員工可以通過這個環境與企業保持聯系。當然,這只適合於使用膝上型電腦的用戶和某些工作站,例如那些運行零售終端(point-of-sale,POS)應用程序的工作站。准備安裝在這里,我們安裝的是DB2 pe(personal edition),安裝文件可以從ibm的站點上獲得。下載地址是:。下載得到的是tar格式的文件。
在我的例子中,我的安裝文件已經下在下來放在lan內的一個ftp上。我的安裝環境是一個新安裝的redhat 7.2,採用的是伺服器安裝方式的默認組件。
把安裝文件拷貝到本地:
[root@no18 root]# wget ftp://192.168.0.1/software/DB/DB2_V81_PE_LNX_32_NLV.tar 解壓:
[root@no18 root]# tar xvf DB2_V81_PE_LNX_32_NLV.tar 解開以後的文件都被放置在當前目錄下的pe文件夾中。開始安裝:[root@no18 root]# pe/DB2_install 過陣子,安裝就可以完成了。到這個時候,我們安裝的主要工作就完成了。完成安裝我們現在需要做的是,對資料庫的初始化工作。包括安裝授權文件和創建一個實例並運行它。
首先,我們安裝授權文件。
不安裝授權文件的話,則是評估版,九十天後就要過期。授權文件,在安裝包已經有了。我們用下面的命令安裝它:root@no18 root]# /opt/IBM/DB2/V8.1/adm/DB2licm -a /root/pe/DB2/license/DB2pe.lic 接著,我們需要創建一個用戶。
[root@no18 root]# useradd DB2ins1 [root@no18 root]# passwd DB2ins1
開始創建實例:[root@no18 root]#/opt/IBM/DB2/V8.1/instance/DB2icrt -u DB2ins1 DB2ins1 這樣,我們就創建了一個實例DB2ins1。
啟動該實例:[root@no18 root]# su DB2ins1 [DB2ins1@no18 DB2ins1]$ DB2start SQL1063N DB2START processing was successful.測試作為測試,我們運行一個簡單的sql:創建資料庫的sql。
[root@no18 root]# su DB2ins1 [root@no18 root]# cd
[DB2ins1@no18 DB2ins1]$ DB2 create database mydb
DB20000I The CREATE DATABASE command completed successfully.
that』s ok,我們的資料庫創建成功了。結論DB2以其易用性和功能強大以及雄厚的支持而贏得了不少用戶。在本文中,我們邁出了學習使用DB2的第一步。
❼ 如何在Linux虛擬環境下搭建DB2資料庫DPF
一、創建用戶和組
1、使用root用戶添加系統用戶
/usr/sbin/groupadd -g 1997 db2igrp
#instance所在的group,加入這個group的所有用戶都具有DBA許可權/usr/sbin/groupadd -g 1998 db2fgrp
#fenced用戶所在的group/usr/sbin/useradd -u 1997 -g db2igrp -d /cbusdb/db2inst1 db2inst1
#db2inst1用戶/usr/sbin/useradd -u 1998 -g db2fgrp -d /cbusdb/db2fenc1 db2fenc1
#db2fenc1用戶/usr/sbin/groupadd db2fadmin
/usr/sbin/useradd -g db2fadmin db2admin
2、使用root用戶添加資料庫賬號
/opt/ibm/db2/V10.5/instance/db2icrt -s ese -u db2fenc1 db2inst1
#在所有的機器上,使用root用戶,建立db2 admin server:
/opt/ibm/db2/V10.5/instance/dascrt -u db2admin#啟動db2 admin server:
db2admin start
3、修改節點配置文件
#vim /cbusdb/db2inst1/sqllib/db2nodes.cfg0 cbusdb01 0
1 cbusdb01 1
2 cbusdb02 0
3 cbusdb02 1
4、修改實例參數
su - db2inst1
db2iauto -on db2inst1
db2set DB2_SKIPINSERTED=on
db2set DB2_USE_ALTERNATE_PAGE_CLEANING=ondb2set DB2_EVALUNCOMMITTED=on
db2set DB2_SKIPDELETED=on
db2set DB2COMM=TCPIP
db2set DB2FCMCOMM=TCPIP4
db2set DB2RSHCMD=/bin/rsh
#注意如果配置的ssh則此處需要修改成
db2set DB2RSHCMD=/usr/bin/ssh
db2set DB2CODEPAGE=1386
db2set DB2TERRITORY=86
db2set DB2_PARALLEL_IO=*
5、配置服務埠
DB2c_db2inst1 61000/tcp
DB2_db2inst1 61001/tcp
DB2_db2inst1_1 61002/tcp
DB2_db2inst1_2 61003/tcp
DB2_db2inst1_3 61004/tcp
DB2_db2inst1_4 61005/tcp
DB2_db2inst1_END 61008/tcp
6、調整系統參數,設置dpf所需的資源
/sbin/sysctl -w kernel.sem=「250 32000 32 1024」/sbin/sysctl -w kernel.msgmnb=16384
/sbin/sysctl -w kernel.msgmni=1024
/sbin/sysctl -w kernel.msgmax=8192
/sbin/sysctl -w kernel.shmmni=4096
/sbin/sysctl -w kernel.shmall=2097152
/sbin/sysctl -w kernel.shmmax=1073741824
7、修改環境變數
cat 。/sqllib/db2profile 》.profile
vi .bash_profile #添加如下信息:
/cbusdb/db2inst1/sqllib/db2profile
二、配置主機名
分別在兩台主機上修改如下文件:
#vi /etc/sysconfig/network
#-------------------------
#NETWORKING=yes
#HOSTNAME=cbusdb01
#-------------------------
#vi /etc/hosts
#-------------------------
#127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4 cbusdb01#::1 localhost localhost.localdomain localhost6 localhost6.localdomain6#192.168.1.122 cbusdb01
#192.168.1.123 cbusdb02
#-------------------------
三、配置rsh
rsh是遠程運行shell的服務.db2使用rsh服務運行啟動和停止資料庫伺服器的命令,以及大部分管理命令。
1、安裝rsh
#yum install rsh*
2、配置rsh的安全文件
#vi /etc/securetty
#add the content
#------------------
#rsh
#rlogin
#rexec
#------------------
3、修改rsh的配置參數/etc/xinetd.d/rsh ##在生產環境建議配置ssh免密登錄
#vi /etc/xinetd.d/rsh
service shell
{
socket_type = stream
wait = no
user = root
log_on_success += USERID
log_on_failure += USERID
server = /usr/sbin/in.rshd
disable = no
}
4、修改rsh的配置文件rlogin
#vi /etc/xinetd.d/rlogin
service login
{
disable = no
socket_type = stream
wait = no
user = root
log_on_success += USERID
log_on_failure += USERID
server = /usr/sbin/in.rlogind
}
4、免密登陸,實例用戶db2inst1的家目錄中創建.rhosts文件
cat $HOME/.rhosts
cbusdb01 db2inst1
cbusdb02 db2inst1
5、CentOS7.0需要單獨下載xinetd
yum install xinetd #低於此版本可不下載
6、重啟rsh服務
service xinetd restart
7、驗證rsh服務
rsh cbusdb01 date
rsh cbusdb02 date
#db2_all echo hi 沒有返回
yum install ksh
四、配置時鍾伺服器
1、安裝ntp伺服器
#yum install ntp*
# ntpdate -u 202.112.10.36
#ntpdate cn.pool.ntp.org
#service ntpd start
#chkconfig ntpd on
2、修改ntp配置
#允許內網其他機器同步時間
restrict 192.168.1.0 mask 255.255.255.0 nomodify notrap
#互聯網時間伺服器
server 210.72.145.44 perfer # 中國國家受時中心server 202.112.10.36
# 1.cn.pool.ntp.orgserver 59.124.196.83
# 0.asia.pool.ntp.org#允許上層時間伺服器主動修改本機時間
restrict 210.72.145.44 nomodify notrap noquery
restrict 202.112.10.36 nomodify notrap noquery
restrict 59.124.196.83 nomodify notrap noquery
#外部時間伺服器不可用時,以本地時間作為時間服務
server 127.0.0.1
fudge 127.0.0.1 stratum 10
3、修改時區
cp -f /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
clock -w
4、在節點2上配置時鍾伺服器
*/5 * * * * /usr/sbin/ntpdate cbusdb01
五、配置nfs服務
1、yum install nfs*
# yum install portmap rpcbind #安裝nfs客戶端
2、配置需要共享的資源
#vi /etc/exports
/cbusdb *(rw,sync,no_root_squash)
/cbusdblog *(rw,sync)
3、啟動nfs server
service rpcbind start
service nfs start
service nfslock restart
4、導出資源
exportfs -rv
5、顯示NFS Server上所有的共享卷
showmount -e
6、在客戶端掛載共享目錄
#mount 192.168.1.122:/cbusdb /cbusdb
#vi /etc/fstab
cbusdb01:/cbusdb /cbusdb nfs rw,timeo=300,retrans=5,hard,intr,bg,nolock,suid
六、關閉selinux
vim /etc/sysconfig/selinux
#SELINUX=disabled
七、測試、創建資料庫
1、啟動資料庫
#db2start
2、創建資料庫
#db2 「create db cbusdb on /cbusdblog using codeset gbk territory cn」
❽ db2資料庫不能訪問(linux系統)
下面說的方法需要你自己動手去排查:
1、確定服務是否運行正常,簡單,把訪問程序放到資料庫所在機器直接測試,如果不ok,屬於資料庫本身有問題,此處排查你應該可以控制,自行查找錯誤。如果不ok執行下面幾步。
2、確認linux防火牆是否開著,如果開著,看訪問規則是否對,要允許你配置的埠往外發數據,同時要允許想訪問服務的ip數據包可以發過來。還要注意別把埠給禁止掉。此處很簡單是不是防火牆影響,暫時把防火牆服務關閉掉。如:iptables service iptables stop。
3、第二步如果還不行,考慮你的網路是否經過某些特定的防火牆,你自己又控制不了,協調網路管理人員重設防火牆規則。讓該訪問的機器都能訪問到。你要用的應用埠也得打開。大公司,一般會把web伺服器或應用伺服器放到dmz區,該區的防火牆控制級別相當高。
Connection refused,屬於TCP錯誤,能報出此錯誤說明機器是通的。埠不可用的幾率很大,埠不可用分兩種:
a、應用服務沒啟動活沒在特定的埠啟動;可以這樣確認,netstat -a ,看你啟動的埠是否真是你期望的。
b、應用伺服器啟動出錯,導致網路監聽服務沒啟動,看資料庫日誌。
c、各級防火牆不允許訪問你期望的埠。解決方法如上2、3步驟。
如果還解決不了,網路上,應該沒人有那本事再幫你。
❾ linux安裝db2需要哪些依賴
於工作的需要,剛剛嘗試完在Linux下安裝DB2資料庫,已經連接測試成功,簡單做了下總結,由於採用的多為命令行,所以沒有必要截圖了。望能對其他程序員有所幫助......如果有不正確的地方,希望和大家共同討論......
准備工作
步驟1 以root用戶登陸需要安裝DB2的Linux伺服器。
步驟2 創建DB2安裝包存放目錄:# mkdir /home/db2install
步驟3:將需要安裝的文件上傳至該目錄下
步驟4:解壓通過使用圖形界面,右鍵。解壓到本地
執行DB2安裝腳本
步驟1 以root用戶登錄需要安裝DB2的伺服器。
步驟2 進入目錄/home/db2install/server。
# cd /home/db2install/expc
步驟3 運行DB2安裝腳本。
# ./db2_install
對於root用戶安裝,預設情況下,DB2數據產品安裝在以下目錄中:/opt/ibm/db2/V10..1
創建用戶
/usr/sbin/groupadd db2iadm1
/usr/sbin/groupadd db2fadm1
/usr/sbin/useradd –m -g db2iadm1 –d /home/db2inst1 db2inst1
/usr/sbin/useradd –m -g db2fadm1 –d /home/db2fenc1 db2fenc1
也可以使用圖形化操作
創建實例
#cd /opt/IBM/db2/V8.1/instance/
./db2icrt –a server -u db2fenc1 db2inst1
注意:安裝是出現了host 『name』 inviable的異常。
修改方法:cd/ect
修改 hosts文件 把host的name 添加上即可創建成功
產品許可證
/opt/IBM/db2/V8.1/adm/db2licm -a /mnt/cdrom/db2/license/db2pe.lic
添加DB2埠
SU - root
vi /etc/services 加入下面一行
db2inst1 50000/tcp
DB2 配置
su – db2inst1
db2set DB2_EXTENDED_OPTIMIZATION=ON
db2set DB2_DISABLE_FLUSH_LOG=ON
db2set AUTOSTART=YES
db2set DB2_STRIPED_CONTAINERS=ON
db2set DB2_HASH_JOIN=Y
db2set DB2COMM=tcpip
db2set DB2_PARALLEL_IO=*
db2set DB2CODEPAGE=819#Update dbm cfg
db2 update dbm cfg using SVCENAME db2inst1
db2 update dbm cfg using INDEXREC ACCESS
運行DB2
步驟1以db2inst1用戶ID登錄系統:
# su –u db2inst1
步驟2 啟動資料庫DB2:
db2inst@linux:~> db2start
步驟3創建sample資料庫:
db2inst@linux:~> db2sampl
步驟4訪問DB2命令行環境以執行SQL語句:
db2inst@linux:~> db2
步驟5執行SQL語句連接sample資料庫並查看staff表內容,列出系統表,查看system.systables表結構,之後斷開連接並退出:
=>connect to sample
=>select * from staff where dept = 20
=>list tables
=>describe table sysibm.systables
=>connect reset
=>quit
步驟6 停掉DB2
db2inst@linux:~> db2stop