网络编程 | 站长之家 | 网页制作 | 图形图象 | 操作系统 | 冲浪宝典 | 软件教学 | 网络办公 | 邮件系统 | 网络安全 | 认证考试 | 系统进程
Firefox | IE | Maxthon | 迅雷 | 电驴 | BitComet | FlashGet | QQ | QQ空间 | Vista | 输入法 | Ghost | Word | Excel | wps | Powerpoint
asp | .net | php | jsp | Sql | c# | Ajax | xml | Dreamweaver | FrontPages | Javascript | css | photoshop | fireworks | Flash | Cad | Discuz!
当前位置 > 网站建设学院 > 网络编程 > 数据库 > DB2教程
Tag:注入,存储过程,分页,安全,优化,xmlhttp,fso,jmail,application,session,防盗链,stream,无组件,组件,md5,乱码,缓存,加密,验证码,算法,cookies,ubb,正则表达式,水印,索引,日志,压缩,base64,url重写,上传,控件,Web.config,JDBC,函数,内存,PDF,迁移,结构,破解,编译,配置,进程,分词,IIS,Apache,Tomcat,phpmyadmin,Gzip,触发器,socket
数据库:数据库教程,数据库技巧,Oracle教程,MySQL教程,Sybase教程,Access教程,DB2教程,数据库安全,数据库文摘
本月文章推荐
.验证DB2数据库的备份成功技巧.
.DB2中多种常用功能的解决方法(1.
.带你深入了解IBM DB2数据库的备份.
.教你快速掌握DB2数据库创建外键时.
.定制DB2通用数据库命令行处理器.
.DB2数据库使用经验漫谈(1).
.DB2建立nickname导致CRASH解决方.
.全面了解DB2数据库中的各数据类型.
.DB2 9:打开通往 XML 之门.
.选择 IBM DB2数据库的五大理由.
.解决db2 codepage导致连接不上数.
.循序渐进讲解DB2数据库的内置数据.
.DB2信息集成提速异构信息管理.
.讲解捕获IBM DB2 SQL的执行快照的.
.使用DB2look重新创建优化器访问计.
.DB2 V9.5工作负载管理之如何实现.
.如何为 DB2 Cube Views 构建元数.
.DB2:数据同步方面的经验(1).
.全面解析IBM DB2数据库移植的常见.
.DB2 9 数据库服务器管理之DB2实例.

DB2数据库创建存储过程时遇到的错误

发表日期:2008-2-9


  问:在 Unix 操作系统下,有时会发生当 DB2 用户使用如:  db2 -td@ -vf <存储过程创建脚本文件>  创建存储过程失败的情况,而查看 db2diag.log 文件则发现有类似如下报错信息:    --------------------------------------------------------------
2002-10-05-13.47.40.075759 Instance:db2inst1 Node:000
PID:1355876(db2agent (ABC) 0) TID:1 Appid:OC10103F.OD12.017302185202
oper system services sqloChangeFileOwnership Probe:100 Database:ABC
  errno:
0x0FFFFFFFFFFF7AF0 : 0x00000001 ....
  PID:1355876 TID:1 Node:000 Title: Path/Filename
/home/db2inst1/sqllib/function/routine/sqlproc/ABC/DB2INST1/tmp/
  2002-10-05-13.47.40.166289 Instance:db2inst1 Node:000
PID:1355876(db2agent (ABC) 0) TID:1 Appid:OC10103F.OD12.017302185202
PSM - SQL Procedure psm_ctrl::psm_init_backend Probe:230 Database:ABC
  DIA8402C A disk error has occurred.
ZRC=0x860F0004
  PID:1355876 TID:1 Node:000 Title: SQL procedure initialization:
0x09000000031213BC : 696E 7374 616E 6365 206F 776E 6572 2064 instance owner d
0x09000000031213CC : 6F65 7320 6E6F 7420 6265 6C6F 6E67 2074 oes not belong t
0x09000000031213DC : 6F20 6665 6E63 6564 2075 7365 7227 7320 o fenced user's
0x09000000031213EC : 7072 696D 6172 7920 6772 6F75 70 primary group
--------------------------------------------------------------
  答:在 Unix 平台下的 DB2 存储过程对于实例用户和受防护用户之间的关系有一个约束,即 DB2 实例用户必须同时是受防护用户的主组中的一个用户。上述问题的发生就是由于在系统上,实例用户未加入至受防护用户的主组中,从而引发了存取权限不够的问题所导致的,而并非真的发生了如日志中所报的磁盘错误。解决这一问题的方法很简单,只要将实例用户加入该主组即可。但有时用户会发现,即使已将用户加入到指定组,问题仍然存在,这时还应检查一下实例用户所加入的组是否是实例用户所对应的受防护用户的主组,即检查一下加入的组是否正确。  要找到实例用户所应的受防护用户以及受防护用户的主组,可用如下方法:  1. 转入实例用户 Home 路径下的 sqllib/adm 路径  2. 执行命令:ls -l .fenced,会得到类似如下输出:  -r--r--r-- 1 db2fencj db2fgrp2 0 Jul 30 09:57 .fenced  3. 输出中表明,该文件所属的用户(db2fencj)即为受防护用户,所属的组(db2fgrp2)即为受防护用户的主组  继而,用户便可验证实例用户是否被加入到了正确的组中,假如结果正确,便可以解决上述问题。
上一篇:DB2数据库设计和最高性能原则(1) 人气:883
下一篇:使用DB2配置向导配置参数 人气:1230
浏览全部DB2教程的内容 Dreamweaver插件下载 网页广告代码 祝你圣诞节快乐 2009年新年快乐