linux db2配置实例用户,[DB2]原创--新建实例与网络通信配置
最近白天上DB2課程,晚上準(zhǔn)備OCP考試復(fù)習(xí),有一段時(shí)間沒寫博客了。現(xiàn)在先將今晚的實(shí)驗(yàn)給總結(jié)一下,有空再將前些日子的實(shí)驗(yàn)進(jìn)行整理。
本實(shí)驗(yàn)分為上下兩部分,第一部分:創(chuàng)建一個(gè)DB2實(shí)例;第二部分,進(jìn)行了DB2網(wǎng)絡(luò)通信配置(Server驗(yàn)證模式)的詳解,演示了使用DB2命令行客戶端(windows環(huán)境下),連接遠(yuǎn)端數(shù)據(jù)庫的配置過程,這其中涉及到服務(wù)器端的配置、客戶端的編目節(jié)點(diǎn)目錄和編目數(shù)據(jù)庫的內(nèi)容。
第一部分:新建實(shí)例
1、欲使用db2icrt命令來創(chuàng)建實(shí)例,卻發(fā)現(xiàn)找不到該命令:
[db2inst1@localhost ~]$ db2icrt
-bash: db2icrt: command not found
2、查找該命令工具的路徑,并嘗試執(zhí)行,發(fā)現(xiàn)權(quán)限不足,需要在root用戶下執(zhí)行該命令:
[db2inst1@localhost ~]$ find /opt/ibm/ -name db2icrt
/opt/ibm/db2/V9.7/instance/db2icrt
[db2inst1@localhost ~]$ /opt/ibm/db2/V9.7/instance/./db2icrt
-h
-bash:
/opt/ibm/db2/V9.7/instance/./db2icrt: Permission denied
3、切換到root用戶,使用-h來查看幫助:
[root@localhost instance]# su - db2inst2
[db2inst2@localhost ~]$ su - root
Password:
[root@localhost ~]# cd /opt/ibm/db2/V9.7/instance
[root@localhost instance]# ./db2icrt -h
DBI1001IUsage:
db2icrt [-h|-?]
[-d]
[-a AuthType]
[-p PortName]
[-s InstType]
-u FencedID InstName
4、發(fā)現(xiàn)需要指定FencedID和InstName參數(shù),而這兩個(gè)參數(shù),實(shí)際上就是要指定兩個(gè)用戶名,FencedID用戶主要管理用戶定義的函數(shù)(UDF)和受防護(hù)存儲(chǔ)過程。而InstName是新實(shí)例的名稱,也是我們新實(shí)例的管理員的用戶名。下面我們,分別新建這兩個(gè)用戶:
[root@localhost
~]# useradd inst2Fence
[root@localhost ~]# passwd inst2Fence
Changing password for user inst2Fence.
New UNIX password:
BAD PASSWORD: it is based on a dictionary
word
Retype new UNIX password:
passwd: all authentication tokens updated
successfully.
[root@localhost
~]# useradd db2inst2
[root@localhost ~]# passwd db2inst2
Changing password for user db2inst2.
New UNIX password:
BAD PASSWORD: it is based on a dictionary word
Retype new UNIX password:
passwd: all authentication tokens updated
successfully.
5、現(xiàn)在是最關(guān)鍵的步驟,使用如下命令來創(chuàng)建實(shí)例,客戶驗(yàn)證的方式采用server(-a參數(shù)),指定端口號(hào)為55555(-p參數(shù)),結(jié)果因Fenced用戶名過長,創(chuàng)建失敗:
[root@localhost instance]#./db2icrt -a server -p
55555 -s ese -u inst2Fence db2inst2
ERROR: The length of the fenced user name
inst2Fence is invalid. It must not be longer than 8.
我們?cè)賱?chuàng)建一個(gè)名字較短的用戶,以滿足要求:
[root@localhost instance]# ./db2icrt -a server -p
55555 -s ese -u Fence2 db2inst2
DBI1070IProgram db2icrt completed successfully.
6、切換用戶登陸,查看下系統(tǒng)當(dāng)前的默認(rèn)實(shí)例:
[root@localhost instance]# su - db2inst2
[db2inst2@localhost ~]$ db2 get instance
The
current database manager instance is:db2inst2
查看所有實(shí)例:
[db2inst2@localhost ~]$ db2ilist
db2inst2
db2inst1
總結(jié):
1、創(chuàng)建實(shí)例使用的是db2icrt命令,由于版本的原因,默認(rèn)是找不到該命令工具的路徑。2、在創(chuàng)建實(shí)例之前,需要先創(chuàng)建好FencedID用戶和InstName用戶。
第二部分
此部分實(shí)驗(yàn),演示了如何使用命令行客戶端如何與db2服務(wù)器進(jìn)行通信。
首先,在服務(wù)端需要配置好服務(wù)名、監(jiān)聽端口、通信協(xié)議,并且需要?jiǎng)?chuàng)建一個(gè)數(shù)據(jù)庫,供客戶端連接:
1、配置服務(wù)名
1.1、查看一下服務(wù)名,發(fā)現(xiàn)創(chuàng)建實(shí)例時(shí)指定的-p參數(shù)(端口名或端口號(hào)),成為了服務(wù)名:
[db2inst2@localhost ~]$ db2 get dbm cfg | grep SVC
TCP/IP Service name(SVCENAME) = 55555
SSL
service name(SSL_SVCENAME) =
1.2、指定實(shí)例的服務(wù)名為db2c_db2inst2:
[db2inst2@localhost ~]$ db2 update dbm cfg using
SVCENAME db2c_db2inst2
DB20000IThe UPDATE DATABASE MANAGER CONFIGURATION command completed
successfully.
[db2inst2@localhost ~]$ db2 get dbm cfg | grep
SVC
TCP/IP Service name(SVCENAME) =
db2c_db2inst2
SSL
service name(SSL_SVCENAME) =
2、指定監(jiān)聽客戶端請(qǐng)求的端口,修改service文件:
[root@localhost instance]# vi /etc/services
db2c_db2inst255555/tcp
3、確認(rèn)好通信協(xié)議是tcpip:
[db2inst2@localhost ~]$ db2set
DB2COMM=tcpip
4、重啟db2實(shí)例(運(yùn)行db2stop和db2start兩條命令),查看監(jiān)聽是否開啟:
[root@localhost instance]#netstat -a | grep db2c_db2inst2
tcp00 *:db2c_db2inst2*:*LISTEN
5、新建一個(gè)數(shù)據(jù)庫,供客戶端連接:
db2 => create database demo
DB20000IThe CREATE DATABASE command completed successfully.
以下部分是在客戶端進(jìn)行配置的操作過程:
1、編目節(jié)點(diǎn)目錄:
回到我們的客戶端機(jī)器,打開windows的開始菜單,選擇“IBM DB2”--“命令行工具”--“命令窗口”:
db2 => catalog TCPIP node n1 remote
192.168.102.163 server db2c_db2inst2
DB20000ICATALOG TCPIP NODE命令成功完成。
DB21056W只有在刷新目錄高速緩存以后,目錄更改才會(huì)生效。
如何才能夠“刷新”呢?使用如下命令,來查看幫助:
db2 => ? DB21056W
DB21056W直到刷新目錄高速緩存之后,目錄更改才生效。
解釋:
若啟用了目錄高速緩存(DBM CFG dir_cache),數(shù)據(jù)庫、節(jié)點(diǎn)和DCS目錄文件都高速緩存在內(nèi)存中。直到刷新該目錄高速緩存之后,目錄更改才開始生效。參閱“管理指南”中的dir_cache配置參數(shù)以獲取有關(guān)目錄高速緩存的描述。
用戶響應(yīng):
要刷新CLP的目錄高速緩存,發(fā)出db2TERMINATE。要刷新另一個(gè)應(yīng)用程序的目錄信息,停止該應(yīng)用程序,然后重新啟動(dòng)它。要刷新該數(shù)據(jù)庫的目錄信息,停止(db2stop)該應(yīng)用程序,然后重新啟動(dòng)(db2start)它。
查看幫助后,發(fā)現(xiàn)使用terminate即可:
db2 => terminate
DB20000ITERMINATE命令成功完成。
D:\Program Files\IBM\SQLLIB\BIN>
2、在客戶端上編目數(shù)據(jù)庫,可以給數(shù)據(jù)庫名在本地取一個(gè)“別名”,以防止不同實(shí)例下的數(shù)據(jù)庫出現(xiàn)同名的情況:
db2 => catalog database demo as demo2 at node n1
authentication server
DB20000ICATALOG DATABASE命令成功完成。
DB21056W只有在刷新目錄高速緩存以后,目錄更改才會(huì)生效。
db2 => terminate
DB20000ITERMINATE命令成功完成。
3、連接到數(shù)據(jù)庫時(shí)出錯(cuò),提示找不到服務(wù):
db2 => connect to demo2 user db2inst2 using passwd
SQL1337N找不到服務(wù)"db2c_db2inst2"。
4、分析:建立節(jié)點(diǎn)時(shí),指定的最后一個(gè)參數(shù)可能有問題,因?yàn)槲覀冃陆▽?shí)例的時(shí)候,指定的是端口號(hào);與之對(duì)應(yīng)得,客戶端的在進(jìn)行節(jié)點(diǎn)編目時(shí)也應(yīng)該指定端口號(hào),而不是服務(wù)名:
刪除數(shù)據(jù)庫編目和節(jié)點(diǎn)目錄,為重新配置,做準(zhǔn)備:
db2 => uncatalog db demo2
DB20000IUNCATALOG DATABASE命令成功完成。
DB21056W只有在刷新目錄高速緩存以后,目錄更改才會(huì)生效。
db2 => uncatalog node n1
DB20000IUNCATALOG NODE命令成功完成。
DB21056W只有在刷新目錄高速緩存以后,目錄更改才會(huì)生效。
db2 => terminate
DB20000ITERMINATE命令成功完成。
D:\Program Files\IBM\SQLLIB\BIN>db2
5、重建節(jié)點(diǎn)目錄和數(shù)據(jù)庫編目:
db2 => catalog TCPIP node n1 remote
192.168.102.163 server 55555
DB20000ICATALOG TCPIP NODE命令成功完成。
DB21056W只有在刷新目錄高速緩存以后,目錄更改才會(huì)生效。
db2 => terminate
DB20000ITERMINATE命令成功完成。
db2 => catalog database demo as demo2 at node n1
authentication server
DB20000ICATALOG DATABASE命令成功完成。
DB21056W只有在刷新目錄高速緩存以后,目錄更改才會(huì)生效。
db2 => terminate
DB20000ITERMINATE命令成功完成。
6、成功登陸
db2 => connect to demo2 user db2inst2 using passwd
數(shù)據(jù)庫連接信息
數(shù)據(jù)庫服務(wù)器= DB2/LINUX 9.7.1
SQL授權(quán)標(biāo)識(shí)= DB2INST2
本地?cái)?shù)據(jù)庫別名= DEMO2
db2 => list node directory
節(jié)點(diǎn)目錄
目錄中的條目數(shù)= 2
節(jié)點(diǎn)1條目:
節(jié)點(diǎn)名= N1
注釋=
目錄條目類型= LOCAL
協(xié)議= TCPIP
主機(jī)名= 192.168.102.163
服務(wù)名稱= 55555
節(jié)點(diǎn)2條目:
節(jié)點(diǎn)名= NDE5C9F6
注釋=
目錄條目類型= LOCAL
協(xié)議= TCPIP
主機(jī)名= 192.168.102.163
服務(wù)名稱= db2c_db2inst1
總結(jié):1、在本實(shí)驗(yàn)中,端口號(hào)和通信協(xié)議是服務(wù)器配置的重要參數(shù),服務(wù)名的作用沒有體現(xiàn)出來(使用圖形化工具配置時(shí),服務(wù)名作用十分重要);
2、客戶端的配置,比較關(guān)鍵的步驟是節(jié)點(diǎn)目錄和數(shù)據(jù)庫編目的創(chuàng)建。
總結(jié)
以上是生活随笔為你收集整理的linux db2配置实例用户,[DB2]原创--新建实例与网络通信配置的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Android平台GB28181设备接入
- 下一篇: linux课程设计网络应用,Linux技