【问题标题】:DB2 : Grant all privileges to db2admin on the localhost databaseDB2:在 localhost 数据库上向 db2admin 授予所有权限
【发布时间】:2013-07-16 10:54:25
【问题描述】:

我已经在我的本地机器上安装了 DB2 Express-C,并为我的用户名创建了示例数据库。 现在,我希望 db2admin 访问这个示例数据库。 我试过下面的命令,

connect to DATABASENAME user USER_NAME using USER_PASSWORD

GRANT DBADM,CREATETAB,BINDADD,CONNECT,CREATE_NOT_FENCED_ROUTINE,IMPLICIT_SCHEMA,LOAD,CREATE_EXTERNAL_ROUTINE,QUIESCE_CONNECT,SECADM ON DATABASE TO USER DB2ADMIN;

但是,我也无法使用 db2admin 访问数据库表,如下所示,

connect to DATABASENAME user db2admin using USER_PASSWORD

list tables

显示找到 0 条记录。这意味着它无法访问数据库。

任何帮助将不胜感激。

【问题讨论】:

  • “无法访问”是什么意思?有任何错误消息或代码吗?
  • 用户不能授予用户帐户没有的任何权限。
  • 我已经编辑了详细描述的代码。

标签: java db2


【解决方案1】:

这意味着它无法访问数据库。

错了。 当您连接时,DB2 会告诉您这一点。 您的示例仅表明用户 db2admin 在其默认模式中没有表。

试试这个:

list tables for schema user_name

其中user_name 是数据库创建者的名称。

注意

list tables

列出当前用户的表,并在创建之前返回 0 行。

【讨论】:

    【解决方案2】:

    我认为你可以尝试以下步骤:(这里我以 SAMPLE 为例)

    1. 使用您的 Windows 域 ID 连接到 SAMPLE:

      db2 connect to SAMPLE

      这里,默认情况下连接将使用您的 Windows 域 ID。您可以通过返回“SQL 授权 ID =”来检查这一点

    2. db2 grant DATAACCESS on DATABASE to user db2admin

      这会将DATAACCESS 权限授予db2admin

    3. 终止连接:db2 terminate

    4. 使用 db2admin 连接到 SAMPLE:db2 connect to sample user db2admin using 'password'

    5. 您应该可以使用db2admin 访问数据库

    您可以在此处阅读有关 windows 域 ID 和 db2admin 的更多信息:

    1. IBM Data Studio can't browse data on SAMPLE (DB2 Express-C)
    2. How do I grant all privileges to local db2admin with DB2 9.7 on Windows?

    请告诉我它是如何工作的。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-08-10
      • 2014-08-16
      • 1970-01-01
      • 2011-06-28
      • 1970-01-01
      • 2019-12-28
      相关资源
      最近更新 更多