如何为新创建的用户运行db2look命令

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何为新创建的用户运行db2look命令相关的知识,希望对你有一定的参考价值。

我正在使用db2来获取对象的ddl。

我在Windows 10中创建了具有hunny名称的新用户。

我在db2中获取对象的ddl所执行的命令是: -

db2look  -i hunny -w hunny -z admin -d sample -server 192.168.1.64 -dp -td : -e -x -o C:	estdb_new.sql

当我使用cmd执行该命令时,我得到了以下错误。

 Error Message =
SQL0551N  The statement failed because the authorization ID does not have
the required authorization or privilege to perform the operation.
Authorization ID: "HUNNY".  Operation: "EXECUTE". Object:
"NULLID.DB2L2O1W".  SQLSTATE=42501


SQLCA
Size    = 136
SQLCODE = -551
Tokens  = HUNNY _ EXECUTE _ NULLID.DB2L2O1W
RDS fn  = SQLRA13E
RC      = 0x801A006D = -2145779603
Reason  = 0x0000 = 0
Reason2 = 0x0000 = 0
Line #  = -20
Warning flags =

请建议我应该给用户执行db2look命令的权限类型。

答案

至少,db2look需要在目录表上使用SELECT(默认情况下,它可用于PUBLIC - 应该没问题)。

该错误可能是由程序包绑定引起的。如果执行db2look的用户有SYSADM和DBADM,那么一切正常。但在这种情况下,并不存在绑定db2look包的所有权限。我建议看看this blog article解释如何解决它。

以上是关于如何为新创建的用户运行db2look命令的主要内容,如果未能解决你的问题,请参考以下文章

铁威马NAS教程之如何为NAS创建新用户

如何为控制台命令创建监听器

如何为 XSLT 代码片段配置 CruiseControl 的 C# 版本?

如何为新服务器运行迁移

如何为在您网站上注册的用户自动创建子域?

如何为在网站上注册的用户创建自动创建子域?