
1.在命令行界面中用如下语句切换到db2inst1账户中:
su - db2inst1
注意,命令要小写,中间的减号是半角的。其中db2inst1账户(同时也是实例、进程)是在安装DB2过程中创建的一个默认账户,相当于Windows中的那个DB2实例,要想执行各种db2的命令,需要在这个账户下 *** 作;
2.在该账户下,可以打开控制中心,也可以进入到命令行处理器。进入命令行处理器的方法很简单,直接用db2命令,然后回车即可;
3.打开控制中心稍微有点麻烦,需要在桌面上另外打开一个命令行窗口,在其中输入:
xhost local:db2
然后在db2inst1账户所在的窗口中,输入命令:
db2cc &
就可以打开控制中心。
4.现在可以查看当前实例
db2ilist
如果需要创建表,则需要打开数据库管理服务,输入命令:
su - db2inst1
db2start//启动db2工作实例
db2stop //停止db2实例
db2set -all//查看db2所有注册表变量
在变量列表中有一个db2管理用户:DB2ADMINSERVER=XXXXX
只有切换到管理用户才可以创建表 su - XXXXX
然后,输入命令: db2admin start 启动管理实例
说明:
在Linux环境下,一个用户对应一个实例,创建数据库必须在实例下创建,因此切换到用户即可切换到实例。命令如下:
su - db2inst1
db2 get instance
下面说的方法需要你自己动手去排查:1、确定服务是否运行正常,简单,把访问程序放到数据库所在机器直接测试,如果不ok,属于数据库本身有问题,此处排查你应该可以控制,自行查找错误。如果不ok执行下面几步。
2、确认linux防火墙是否开着,如果开着,看访问规则是否对,要允许你配置的端口往外发数据,同时要允许想访问服务的ip数据包可以发过来。还要注意别把端口给禁止掉。此处很简单是不是防火墙影响,暂时把防火墙服务关闭掉。如:iptables service iptables stop。
3、第二步如果还不行,考虑你的网络是否经过某些特定的防火墙,你自己又控制不了,协调网络管理人员重设防火墙规则。让该访问的机器都能访问到。你要用的应用端口也得打开。大公司,一般会把web服务器或应用服务器放到dmz区,该区的防火墙控制级别相当高。
Connection refused,属于TCP错误,能报出此错误说明机器是通的。端口不可用的几率很大,端口不可用分两种:
a、应用服务没启动活没在特定的端口启动;可以这样确认,netstat -a ,看你启动的端口是否真是你期望的。
b、应用服务器启动出错,导致网络监听服务没启动,看数据库日志。
c、各级防火墙不允许访问你期望的端口。解决方法如上2、3步骤。
如果还解决不了,网络上,应该没人有那本事再帮你。
我也在AIX上用db2, 但没遇到过你这种情况, 我是谷歌得来的下面信息, 希望能帮到你:DB2在控制中心点选数据库或表时,报错:
[IBM] [CLI Driver] SQL1031N
The database directory cannot be found on the indicated file system. SQLSTATE=58031
碰到这样的情况应该是:
db2 =>? sql1031n
SQL1031N在指示的文件系统中找不到数据库目录。
解释: 找不到系统数据库目录或本地数据库目录。尚未创建数据库,或者没
有正确编目该数据库。
未能处理该命令。
用户响应: 验证数据库是否是用正确的路径规范创建的。Catalog
Database 命令带有路径参数,它指定数据库所驻留的目录。
sqlcode: -1031
sqlstate: 58031
从提示信息来看,你应该重新编目数据库
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)