linux db2配置实例用户,[DB2]原创--新建实例与网络通信配置
最近白天上DB2课程,晚上准备OCP考试复习,有一段时间没写博客了。现在先将今晚的实验给总结一下,有空再将前些日子的实验进行整理。
本实验分为上下两部分,第一部分:创建一个DB2实例;第二部分,进行了DB2网络通信配置(Server验证模式)的详解,演示了使用DB2命令行客户端(windows环境下),连接远端数据库的配置过程,这其中涉及到服务器端的配置、客户端的编目节点目录和编目数据库的内容。
第一部分:新建实例
1、欲使用db2icrt命令来创建实例,却发现找不到该命令:
[db2inst1@localhost ~]$ db2icrt
-bash: db2icrt: command not found
2、查找该命令工具的路径,并尝试执行,发现权限不足,需要在root用户下执行该命令:
[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、发现需要指定FencedID和InstName参数,而这两个参数,实际上就是要指定两个用户名,FencedID用户主要管理用户定义的函数(UDF)和受防护存储过程。而InstName是新实例的名称,也是我们新实例的管理员的用户名。下面我们,分别新建这两个用户:
[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、现在是最关键的步骤,使用如下命令来创建实例,客户验证的方式采用server(-a参数),指定端口号为55555(-p参数),结果因Fenced用户名过长,创建失败:
[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.
我们再创建一个名字较短的用户,以满足要求:
[root@localhost instance]# ./db2icrt -a server -p
55555 -s ese -u Fence2 db2inst2
DBI1070IProgram db2icrt completed successfully.
6、切换用户登陆,查看下系统当前的默认实例:
[root@localhost instance]# su - db2inst2
[db2inst2@localhost ~]$ db2 get instance
The
current database manager instance is:db2inst2
查看所有实例:
[db2inst2@localhost ~]$ db2ilist
db2inst2
db2inst1
总结:
1、创建实例使用的是db2icrt命令,由于版本的原因,默认是找不到该命令工具的路径。2、在创建实例之前,需要先创建好FencedID用户和InstName用户。
第二部分
此部分实验,演示了如何使用命令行客户端如何与db2服务器进行通信。
首先,在服务端需要配置好服务名、监听端口、通信协议,并且需要创建一个数据库,供客户端连接:
1、配置服务名
1.1、查看一下服务名,发现创建实例时指定的-p参数(端口名或端口号),成为了服务名:
[db2inst2@localhost ~]$ db2 get dbm cfg | grep SVC
TCP/IP Service name(SVCENAME) = 55555
SSL
service name(SSL_SVCENAME) =
1.2、指定实例的服务名为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、指定监听客户端请求的端口,修改service文件:
[root@localhost instance]# vi /etc/services
db2c_db2inst255555/tcp
3、确认好通信协议是tcpip:
[db2inst2@localhost ~]$ db2set
DB2COMM=tcpip
4、重启db2实例(运行db2stop和db2start两条命令),查看监听是否开启:
[root@localhost instance]#netstat -a | grep db2c_db2inst2
tcp00 *:db2c_db2inst2*:*LISTEN
5、新建一个数据库,供客户端连接:
db2 => create database demo
DB20000IThe CREATE DATABASE command completed successfully.
以下部分是在客户端进行配置的操作过程:
1、编目节点目录:
回到我们的客户端机器,打开windows的开始菜单,选择“IBM DB2”--“命令行工具”--“命令窗口”:
db2 => catalog TCPIP node n1 remote
192.168.102.163 server db2c_db2inst2
DB20000ICATALOG TCPIP NODE命令成功完成。
DB21056W只有在刷新目录高速缓存以后,目录更改才会生效。
如何才能够“刷新”呢?使用如下命令,来查看帮助:
db2 => ? DB21056W
DB21056W直到刷新目录高速缓存之后,目录更改才生效。
解释:
若启用了目录高速缓存(DBM CFG dir_cache),数据库、节点和DCS目录文件都高速缓存在内存中。直到刷新该目录高速缓存之后,目录更改才开始生效。参阅“管理指南”中的dir_cache配置参数以获取有关目录高速缓存的描述。
用户响应:
要刷新CLP的目录高速缓存,发出db2TERMINATE。要刷新另一个应用程序的目录信息,停止该应用程序,然后重新启动它。要刷新该数据库的目录信息,停止(db2stop)该应用程序,然后重新启动(db2start)它。
查看帮助后,发现使用terminate即可:
db2 => terminate
DB20000ITERMINATE命令成功完成。
D:\Program Files\IBM\SQLLIB\BIN>
2、在客户端上编目数据库,可以给数据库名在本地取一个“别名”,以防止不同实例下的数据库出现同名的情况:
db2 => catalog database demo as demo2 at node n1
authentication server
DB20000ICATALOG DATABASE命令成功完成。
DB21056W只有在刷新目录高速缓存以后,目录更改才会生效。
db2 => terminate
DB20000ITERMINATE命令成功完成。
3、连接到数据库时出错,提示找不到服务:
db2 => connect to demo2 user db2inst2 using passwd
SQL1337N找不到服务"db2c_db2inst2"。
4、分析:建立节点时,指定的最后一个参数可能有问题,因为我们新建实例的时候,指定的是端口号;与之对应得,客户端的在进行节点编目时也应该指定端口号,而不是服务名:
删除数据库编目和节点目录,为重新配置,做准备:
db2 => uncatalog db demo2
DB20000IUNCATALOG DATABASE命令成功完成。
DB21056W只有在刷新目录高速缓存以后,目录更改才会生效。
db2 => uncatalog node n1
DB20000IUNCATALOG NODE命令成功完成。
DB21056W只有在刷新目录高速缓存以后,目录更改才会生效。
db2 => terminate
DB20000ITERMINATE命令成功完成。
D:\Program Files\IBM\SQLLIB\BIN>db2
5、重建节点目录和数据库编目:
db2 => catalog TCPIP node n1 remote
192.168.102.163 server 55555
DB20000ICATALOG TCPIP NODE命令成功完成。
DB21056W只有在刷新目录高速缓存以后,目录更改才会生效。
db2 => terminate
DB20000ITERMINATE命令成功完成。
db2 => catalog database demo as demo2 at node n1
authentication server
DB20000ICATALOG DATABASE命令成功完成。
DB21056W只有在刷新目录高速缓存以后,目录更改才会生效。
db2 => terminate
DB20000ITERMINATE命令成功完成。
6、成功登陆
db2 => connect to demo2 user db2inst2 using passwd
数据库连接信息
数据库服务器= DB2/LINUX 9.7.1
SQL授权标识= DB2INST2
本地数据库别名= DEMO2
db2 => list node directory
节点目录
目录中的条目数= 2
节点1条目:
节点名= N1
注释=
目录条目类型= LOCAL
协议= TCPIP
主机名= 192.168.102.163
服务名称= 55555
节点2条目:
节点名= NDE5C9F6
注释=
目录条目类型= LOCAL
协议= TCPIP
主机名= 192.168.102.163
服务名称= db2c_db2inst1
总结:1、在本实验中,端口号和通信协议是服务器配置的重要参数,服务名的作用没有体现出来(使用图形化工具配置时,服务名作用十分重要);
2、客户端的配置,比较关键的步骤是节点目录和数据库编目的创建。
linux db2配置实例用户,[DB2]原创--新建实例与网络通信配置相关推荐
- 中兴交换机配置telnet连接_原创:思科交换机常用配置
一.交换机的配置方式 1.Console 将配置电缆的DB-9(或DB-25)孔式插头 接到要对交换机进行配置的微机或终端的串口上. 首先启动超级终端,点击windows的开始→程序→附件→通讯→超级 ...
- 配置库用户_手把手教新手安装Anaconda配置开发环境
Anaconda是针对Python的集成环境,它已经成为全球数千万数据科学从业人员必备的开发工具,帮助人们有效地解决数据科学和机器学习相关地问题.如果你想从事数据科学和机器学习的工作,可以从本文开始, ...
- linux看是不是db2实例用户,切换到实例用户以后不能执行 db2
切换到实例用户以后不能执行 db2 在linux下安装了db2 express ,但是在切换到实例用户以后不能执行db2命令:-sh-3.2$ su - db2inst1 Password: -sh- ...
- linux db2 数据源配置文件,为 DB2 UDB 系列配置数据源
Colin Yu,业务方案团队, IBM 多伦多实验室 Jane Fung, WebSphere Studio 技术支持部, IBM 多伦多实验室 2003 年 9 月 本文描述了在 WebSpher ...
- AIX环境:su 到实例用户下连库并执行Db2命令方法
问题: 在linux环境下,如果想使用root用户切换到实例用户下,连库并执行db2命令,采用以下方式即可: # su - db2inst1 -c "db2 connect to sampl ...
- 安装完db2后新建实例
在DB2中实例的可以如下描述:一个实例提供了一个独立的环境,在这个环境里可以进行数据库操作和程序运行.在一个服务器中可以有多个实例,每个实例可以有多个数据库.由于环境是独立的,所以实例间内容上是不透明 ...
- linux服务器mysql数据库新建数据库并配置数据库用户
linux服务器mysql数据库新建数据库并配置数据库用户 第一步:进入数据库 mysql -uroot -p 提示输入密码,输入你的root用户密码(默认不显示) 如下图: 第二步:创建一个数据库 ...
- Redhat Linux 5.3环境实施DB2 V9.7 HADR
数据库主机:使用VMware workstation 虚拟两台机器 操作系统:Red Hat EL 5.3 数据库软件:DB2 V9.7 虚拟机,操作系统环境安装过程省去. 2.2逻辑拓扑结构 2.3 ...
- db2 linux 导入数据_linux导入db2数据库
AIX系统上实现DB2数据导入LINUX系统 下面为您介绍的DB2数据导入导出方法实现的是AIX系统上DB2数据导入LINUX系统,如果您对DB2数据导入方面感兴趣的话,不妨一看. (一)AIX系统上 ...
最新文章
- 基于HAproxy的web动静分离及输出状态检测页面
- 自己去年用intraweb写的模仿动网论坛的原程序,用的是动网论坛的数据库
- python实现图形旋转_python轻松实现图片旋转
- [转]JSP中EL表达式三元运算符的使用
- OpenExpressApp对建模支持的初步计划
- linux shell之控制台打印各种颜色字体和背景
- 海思芯片怎么使用tde给qt加速_3519移植Qt适配附件
- 服务器中有两个R文件夹,一台服务器中配置多个git sshkey
- python变量命名规则_Python教程第9篇:牢记Python变量命名5大规则
- 远程mysql用ssh连接_使用SSH密钥连接到远程MySQL服务器
- OceanBase架构介绍
- 如何将 Apple Watch 用作闹钟?
- 解析几何 | 吕子根 设三平行平面 $\pi_i:\ Ax+By+Cz+D_i=0\,(i=1,2,3),L,M,N$ 依次是平面 $\pi_1,\pi_2,\pi_3$ 上的任意点,求 $\tria
- [导入]Reporting Services 6: 在服务器端报表中筛选数据
- 规范JavaScript注释
- mumu 模拟器连不上adb
- es配置中文和拼音分词器
- python基础篇:字符画生成~甜心教主
- 大菠萝已经完全变味了
- 程序员的算法趣题Q67: 不挨着坐是一种礼节吗?
热门文章
- 一分钟开发一套美容店在线预约小程序
- 【word使用】word文档查看字符统计
- 《Effective Morden C++》Item 8: Prefer nullptr to 0 and NULL.
- 编程之余—80后夫妻公约
- Qt 记住上次打开路径
- 阿里云主机遭受DDOS攻击IP不能使用如何更换弹性公网IP
- 2020-10-14
- 【python】保存某个文件夹下所有图片名字到一个txt文件里
- JS if 水仙花数 游乐园门票计算 闰年 三元运算符 for循环 算法 穷举法 While 拔萝卜 等差数 随机数函数random 区间数 猜数字
- edge浏览器如何把网页放到桌面_edge浏览器怎么把网页放桌面 - 卡饭网