DB2-获取找不到页面大小至少为“ 8192”的默认表空间。该授权ID“ ***”被授权使用 [英] DB2- Getting A default table space could not be found with a page size of at least "8192" that authorization ID "***" is authorized to use

查看:558
本文介绍了DB2-获取找不到页面大小至少为“ 8192”的默认表空间。该授权ID“ ***”被授权使用的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我是db2的新手,总体数据库请帮助我。

I'm new for db2 and overall databases pls help me.

我正在现有数据库中创建一个表,但是在执行create语句后,我得到了在错误消息以下,

I'm creating a table within an existing database, but after executing the create statement i got below error msg,

SQL0286N找不到页面大小至少为
且授权标识为 DB2ADMIN得到授权的 8192的默认表空间

SQLSTATE = 42727

SQL0286N A default table space could not be found with a page size of at least "8192" that authorization ID "DB2ADMIN" is authorized to use.
SQLSTATE=42727

SQL0286N找不到默认表空间,其页面大小至少为该授权ID的 8192

SQL0286N A default table space could not be found with a page size of at least "8192" that authorization ID "DB2ADMIN" is authorized to use.

说明:

CREATE TABLE,CREATE GLOBAL TEMPORARY TABLE或DECLARE GLOBAL
TEMPORARY TABLE语句未指定表空间,并且表类型为
的正确类型的空间(已创建临时表的USER TEMPORARY或声明为临时表的
)具有足够的页面大小(为找不到授权ID为的USE
特权的至少
)。

The CREATE TABLE, CREATE GLOBAL TEMPORARY TABLE, or DECLARE GLOBAL TEMPORARY TABLE statement did not specify a table space, and a table space of the right type (USER TEMPORARY for created temporary table or declared temporary table) with sufficient page size (at least ""), over which authorization ID "" has USE privilege, could not be found.

表由行的字节数
或列数确定。

Sufficient page size for a table is determined by either the byte count of the row or the number of columns.

因此,我创建了一个表空间

Hence I created a tablespace

创建大表空间大数据
最大大小512 M

CREATE LARGE TABLESPACE LARGEDATA MAXSIZE 512 M

并使用此空间来创建表,例如

and used this space to create my table, like

在LARGEDATA中创建表table_name( * );

create table table_name(*) in LARGEDATA;

我认为512M应该足以容纳15列的表,但出现以下异常:

I thought 512M should be enough for table with some 15 columns, but I get below exceptions:

SQL0670N表的行长度超过了 4005字节的限制。 (表空间 LARGEDATA

SQL0670N The row length of the table exceeded a limit of "4005" bytes. (Table space "LARGEDATA

请帮助...

感谢您的帮助和时间。:)

Thanks in advance for help and time. :)

推荐答案

您正在创建的表的行超出了现有表空间的页面大小。

The row of the table you are creating exceeds the page size of the existent tablespaces.

可能您有一个默认页面大小为4KB的数据库,而userspace1表空间具有相同的页面大小。

Probably, you have a database with a default page size of 4KB, and the userspace1 tablespace has the same page size.

大表空间,您仅将行ID大小从1字节(常规)更改为2字节(大),但是页面大小仍然相同。

When you created the Large tablespace, you are only changing the Row ID size from 1 byte (regular) to 2 bytes (large). However the page size is still the same.

您应该创建一个至少8KB页面大小的缓冲池,然后创建一个使用该缓冲池的表空间。

You should create a bufferpool of at least 8KB page size, and then a tablespace that uses that bufferpool.

db2 create bufferpool bp8k pagesize 8K
db2 create tablespace data pagesize 8K bufferpool bp8K

这篇关于DB2-获取找不到页面大小至少为“ 8192”的默认表空间。该授权ID“ ***”被授权使用的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆