首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >无法浏览示例上的数据(DB2 Express-C)

无法浏览示例上的数据(DB2 Express-C)
EN

Stack Overflow用户
提问于 2015-03-08 17:32:49
回答 2查看 6.4K关注 0票数 3

我不能浏览样本DB上的数据。安装程序如下:- Windows 7 64 bit PRO,- installation C,10.5.500.107 (最新)-IBMDataStudio4.1.1版本(管理安装,使用IBMInstallationManager1.8.1安装)

数据库凭证是: db2admin/db2admin Windows管理员用户名是: Nenad (密码受保护)

使用DB2命令行处理器(Start -> IBM DB2 DB2COPY1 (默认) -> DB2命令行处理器),我可以使用以下方法连接到示例数据库:

代码语言:javascript
运行
复制
db2 => connect to sample
Database Connection Information

 Database server        = DB2/NT64 10.5.5
 SQL authorization ID   = NENAD
 Local database alias   = SAMPLE

和查询staff表,其中:

代码语言:javascript
运行
复制
db2 => select * from staff

ID     NAME      DEPT   JOB   YEARS  SALARY    COMM
------ --------- ------ ----- ------ --------- ---------
    10 Sanders       20 Mgr        7  98357.50         -
    20 Pernal        20 Sales      8  78171.25    612.45
    30 Marenghi      38 Mgr        5  77506.75         -
    40 O'Brien       38 Sales      6  78006.00    846.55
    50 Hanes         15 Mgr       10  80659.80         -
    60 Quigley       38 Sales      -  66808.30    650.25
    70 Rothman       15 Sales      7  76502.83   1152.00
    80 James         20 Clerk      -  43504.60    128.20
    90 Koonitz       42 Sales      6  38001.75   1386.70
   100 Plotz         42 Mgr        7  78352.80         -
   110 Ngan          15 Clerk      5  42508.20    206.60
   120 Naughton      38 Clerk      -  42954.75    180.00
   130 Yamaguchi     42 Clerk      6  40505.90     75.60
   140 Fraye         51 Mgr        6  91150.00         -
   150 Williams      51 Sales      6  79456.50    637.65
   160 Molinare      10 Mgr        7  82959.20         -
   170 Kermisch      15 Clerk      4  42258.50    110.10
   180 Abrahams      38 Clerk      3  37009.75    236.50
   190 Sneider       20 Clerk      8  34252.75    126.50
   200 Scoutten      42 Clerk      -  41508.60     84.20
   210 Lu            10 Mgr       10  90010.00         -
   220 Smith         51 Sales      7  87654.50    992.80
   230 Lundquist     51 Clerk      3  83369.80    189.65
   240 Daniels       10 Mgr        5  79260.25         -
   250 Wheeler       51 Clerk      6  74460.00    513.30
   260 Jones         10 Mgr       12  81234.00         -
   270 Lea           66 Mgr        9  88555.50         -
   280 Wilson        66 Sales      9  78674.50    811.50
   290 Quill         84 Mgr       10  89818.00         -
   300 Davis         84 Sales      5  65454.50    806.10
   310 Graham        66 Sales     13  71000.00    200.30
   320 Gonzales      66 Sales      4  76858.20    844.00
   330 Burke         66 Clerk      1  49988.00     55.50
   340 Edwards       84 Sales      7  67844.00   1285.00
   350 Gafney        84 Clerk      5  43030.50    188.00

  35 record(s) selected.

所以我想DB/DBMS运行得很好。

然后使用设置在Data中创建连接:

代码语言:javascript
运行
复制
Database: SAMPLE
Host: localhost
Port number: 50000
Username: db2admin
Password: db2admin

测试连接:使用,Ping成功了!结果。

当我点击表格时,我可以看到所有的表。

但是,当我右键单击(Schema: NENAD) (表名: STAFF)数据->浏览数据时,我得到了以下错误:

com.ibm.db2.jcc.am.SqlSyntaxErrorException:语句失败,因为授权ID没有执行操作所需的授权或特权。授权ID:"DB2ADMIN“。操作:“选择”。对象:“NENAD.STAFF”。SQLCODE=-551,SQLSTATE=42501,DRIVER=4.18.60语句失败,因为授权ID没有执行操作所需的授权或特权。授权ID:"DB2ADMIN“。操作:“选择”。对象:“NENAD.STAFF”。SQLCODE=-551,SQLSTATE=42501,DRIVER=4.18.60

我尝试过用不同的设置和用户名重新安装DB2和Data,我尝试右键单击表,然后管理特权(将所有特权都授予DB2ADMIN和NENAD),但没有成功。

我也不能创建新的数据库,我得到了以下错误:

在‘C:\DB2\ WITH 0000’DBPATH上创建数据库FTN自动存储,在‘C:\DB2\WITH 0000’别名FTN上使用'FTN数据库‘无法执行命令。DAS返回以下错误: sqlcode=-22201 output=null

我的问题是:

  1. 如何解决此错误?
  2. 是否有一种简单的方法(就像simple中的方法一样),只创建用户,然后单击Grant,仅此而已?

通过Oracle Express DB和Studio,我创建了新用户,并以这种(非常简单)的方式授予权限:

编辑-更新:我不得不使用的

代码语言:javascript
运行
复制
Step 1:
Start menu -> IBM DB2 DB2COPY1 (Default) -> DB2 Command Line Processor
In DB2 Command Line Processor: 
db2 => connect to sample
db2 => GRANT DBADM ON DATABASE to db2admin

Step 2:
db2admin stop 
db2admin start

在那之后,我能够在database中浏览数据,并执行查询,,但是我仍然不能从database创建新的数据库?

这些帖子没有直接关系,也没有帮助我解决这个问题:

Cannot connect IBM data studio with DB2 Express-C (Error: User Id Revoked)

DB2 query runs in IBM Data Studio but not in code

IBM Data Studio Connection error SQL1035N

IBM Data Studio

IBM data studio not connecting to local DB2 databases

db2 Express-C SAMPLE database

Why don't I see all of my DB2 instances in Data Studio?

IBM DB2 created schema is not visible?

IBM Data Studio (Admin client) version 3.1.1

How to create New instance in db2 10.1 using IBM Data Studio

How to create a new schema on a database at IBM Data Studio?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2015-03-09 16:44:41

您的问题是,您以Nenad的身份登录到命令行(从默认模式可以看出这一点),并且您是以db2admin身份通过db2admin登录到DB中。您需要以Nenad的身份登录。或者作为Nenad,您需要向用户ID db2admin授予适当的权限。

编辑:,以更好地解释事情,以及在下面的评论中你的问题.DB2不像其他数据库那样使用创建的用户ids。它依赖于底层操作系统或LDAP进行身份验证。在Unix/Linux环境中,实例Id (从管理上来说是最高的ID )是将实例设置为运行的ID。您的db2admin帐户就是这个帐户。said....Windows引入了一种不同的安全方案。即使实例ID存在,安装产品的人(他们的用户ID)往往在DB2中被授予很高的管理权限。当您发出CREATE DATABASE语句时,您使用的是Windows,因此它成为数据库的所有者,并授予它DBADMSECADMDATAACCESSACCESSCTRL。db2admin通常会有DBADM WITHOUT DATAACCESS WITHOUT ACCESSCTRL。因此,您需要以Nenad (带有SECADM的ID )登录,并将(为了安全起见) DBADMSECADMDATAACCESSACCESSCTRL授予用户db2admin。现在ID应该有你要找的东西了。 对于任何ID,我不推荐这些特权,如果您只需要访问对表的读/写权限,那么只需DATAACCESS就可以了。

票数 3
EN

Stack Overflow用户

发布于 2015-08-03 01:55:17

我在创建一个新数据库时遇到了同样的问题,并通过运行以下命令解决了问题: db2set DB2_CREATE_DB_ON_CHANGE=YES和DB2命令窗口(作为管理员):(1)停止数据库(2)运行db2set DB2_CREATE_DB_ON_CHANGE=YES (3)启动数据库

现在您可以通过指定本地存储、数据库名称.

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/28929634

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档