如何为新创建的用户运行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命令的主要内容,如果未能解决你的问题,请参考以下文章