CGTT (глобальная временная таблица) может быть создана только в табличном пространстве определенного типа, отличающегося от обычного табличного пространства.
Используйте синтаксис create user temporary tablespace ...
, работая какПользователь db2inst1 и убедитесь, что он успешно завершил работу перед повторной попыткой CGTT.
Если db2inst1 является владельцем экземпляра, как вы предлагаете, то у него будут права на это.Однако, если учетная запись, отличная от db2inst1, хочет запустить create global temporary table
, возможно, этой учетной записи может потребоваться предоставить доступ USE к временному табличному пространству пользователя.
Если вы планируете использовать объекты DGTT и CGTT, тогда это целесообразнообеспечить во время сборки для каждой базы данных, что соответствующие пользовательские временные табличные пространства создаются для каждого из размеров страниц 4K, 8K, 16K и 32K, после того как буферные пулы уже существуют для каждого размера страниц, а затем убедиться, что соответствующие учетные записи и роли имеют доступ USEи рассмотрите возможность отмены общего доступа к ним.
Например, это создаст временное табличное пространство пользователя 4K в базе данных Db2-LUW V11.1 и будет повторно использовать пул буферов 4K по умолчанию, многие из этих опций могутопустить, но это показывает, что db2look будет производить, и позволяет увидеть, что можно изменить:
CREATE USER TEMPORARY TABLESPACE "UTMP4K"
PAGESIZE 4096 MANAGED BY AUTOMATIC STORAGE
USING STOGROUP "IBMSTOGROUP"
EXTENTSIZE 4
PREFETCHSIZE AUTOMATIC
BUFFERPOOL "IBMDEFAULTBP"
OVERHEAD INHERIT
TRANSFERRATE INHERIT
FILE SYSTEM CACHING
DROPPED TABLE RECOVERY OFF;