Табличное пространство DB2 с ошибкой в ​​буферном пуле (SQLSTATE = 42601) - PullRequest
0 голосов
/ 17 марта 2020

Я пытаюсь создать табличное пространство, используя предопределенный пул буферов в моей DB2 11.1. К сожалению, я получаю сообщение об ошибке, даже когда пытаюсь использовать много разных комбинаций. Результат тот же, я использую SQLClient или терминал db2 (пользователь-администратор db2inst1).

Мои заявления:

CREATE BUFFERPOOL POOL32 SIZE 32000 PAGESIZE 32768; // Successful
commit;

CREATE TABLESPACE mytablespace PAGESIZE 32K MANAGED BY DATABASE USING (FILE '/tmp/mytablespace' 100000) BUFFERPOOL POOL32;

Ошибка:

DB21034E  The command was processed as an SQL statement because it was not a
valid Command Line Processor command.  During SQL processing it returned:
SQL0109N  The statement or command was not processed because the following
clause is not supported in the context where it is used: "MANAGED BY
DATABASE".  SQLSTATE=42601

ОБНОВЛЕНИЕ:

Чтобы ответить на некоторые комментарии:

  • Версия - IBM Db2 Developer- C 11.1.4.4, а Платформа - Linux / Unix, Red Hat Enterprise Linux 7.6
  • Я попытался использовать автоматическое c хранилище, но если я просто определю его без размера страницы (или, возможно, с инициализацией), я получу ошибку во время инициализации базы данных программного обеспечения, когда оператор создания таблицы достигает максимального размера страницы (поэтому я хотел использовать буферный пул и файл dms, так как он все еще работал с oracle дБ):

-

CREATE LARGE TABLESPACE MYTABLESPACE MANAGED BY AUTOMATIC STORAGE;
commit;

Что приводит к этому ошибка ограничения страницы:

DB21034E  The command was processed as an SQL statement because it was not a
valid Command Line Processor command.  During SQL processing it returned:
SQL0286N  A table space could not be found with a page size of at least "4096"
that authorization ID "DB2INST1" is authorized to use.  SQLSTATE=42727

Изображение всех табличных пространств

-

CREATE TABLESPACE TS3 INITIALSIZE 8K INCREASESIZE 20 PERCENT MANAGED BY AUTOMATIC STORAGE

С ошибкой здесь:

DB21034E  The command was processed as an SQL statement because it was not a
valid Command Line Processor command.  During SQL processing it returned:
SQL0104N  An unexpected token "INITIALSIZE 8K INCREASESIZE 20 PERCENT" was
found following "REATE TABLESPACE TS3".  Expected tokens may include:
"<space>".  SQLSTATE=42601
...