powered by simpleCommunicator - 2.0.59     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / IBM DB2, WebSphere, IMS, U2 [игнор отключен] [закрыт для гостей] / Обращение к табличному пространству не разрешено.. SQLCODE=-290, SQLSTATE=55039, DRIVER=4.
6 сообщений из 6, страница 1 из 1
Обращение к табличному пространству не разрешено.. SQLCODE=-290, SQLSTATE=55039, DRIVER=4.
    #38423196
pvm12
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
DB2 Express, Windows Server 2008. Всем привет ! Уже не первый раз это происходит. Меняю структуры в базе используя Data Studio. При этом получаю скрипт. После выполнения скрипта. Возникает ошибка "Обращение к табличному пространству не разрешено.. SQLCODE=-290, SQLSTATE=55039, DRIVER=4.". Всё теперь никакие метаданные не могу поменять в этом табличном пространстве. Делаю list tablespaces. Табличное пространство в состоянии 0x0020. т.е. Backup pending (отложенного резервного копирования) . Есть ли какой нибудь выход кроме того чтобы из бекапа восстанавливать базу. Тем более много изменений внёс. Не хотелось бы по всем изменениям формировать скрипты и опять запускать. И ещё , в чём причина возникновения такой ситуации ведь скрипт по изменению метаданных не сам придумываю а система?
...
Рейтинг: 0 / 0
Обращение к табличному пространству не разрешено.. SQLCODE=-290, SQLSTATE=55039, DRIVER=4.
    #38423255
CawaSPb
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
pvm12,

Как можно быстрее восстановить доступность:
Код: plaintext
db2 backup db <dbname> tablespace(<tbspace_name>) online to nul
если логи не циркулярные.

Код: plaintext
... to /dev/null
На UNIX'ах

Код: plaintext
db2 backup db <dbname> tablespace(<tbspace_name>) to nul
бэкап в offline режиме.

Полезная ссылка:
DB2 Basics: Demystifying table and table space states

Скорее всего в скриптах используется LOAD без флагов NONRECOVERABLE (явно указывающий, что нам на эту таблицу пофиг и мы не боимся её потерять) или COPY YES (сохраняющий данные LOAD'а в месте, доступном для последующих ROLLFORWARD).
...
Рейтинг: 0 / 0
Обращение к табличному пространству не разрешено.. SQLCODE=-290, SQLSTATE=55039, DRIVER=4.
    #38423312
pvm12
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
CawaSPb,
Спасибо за информацию. Доступность табличного пространства удалось восстановить. Но при попытке обратиться к данным таблицы выдаёт
Операция для таблицы "1" не разрешается по причине "BUH.M1020001".. SQLCODE=-668, SQLSTATE=57016, DRIVER=4.13.111
"
...
Рейтинг: 0 / 0
Обращение к табличному пространству не разрешено.. SQLCODE=-290, SQLSTATE=55039, DRIVER=4.
    #38423325
pvm12
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Помогло
SET INTEGRITY FOR BUH.M1020001 ALLOW NO ACCESS IMMEDIATE CHECKED
...
Рейтинг: 0 / 0
Обращение к табличному пространству не разрешено.. SQLCODE=-290, SQLSTATE=55039, DRIVER=4.
    #38423333
pvm12
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Видимо причиной возникновения этой ситуации действительно была команда
CALL SYSPROC.ADMIN_CMD( 'LOAD FROM .\default_BUH_M1020001_MB9__SQL31_cust.dat OF IXF METHOD P (1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24) INSERT INTO BUH.M1020001 (ID_KOM, K360, H190, B691, B692, K556, DOLJCEX, A408, A409, K802, A628, A400, A759, H040, B140, H012, B296, P030, GOSUD, PR_FIZWORK, STRAH_TARIF, KOEF1, KOEF2, STRAH_SUM)' )

Ещё раз спасибо за помощь !
...
Рейтинг: 0 / 0
Обращение к табличному пространству не разрешено.. SQLCODE=-290, SQLSTATE=55039, DRIVER=4.
    #38423461
CawaSPb
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
pvm12CawaSPb,
Спасибо за информацию. Доступность табличного пространства удалось восстановить. Но при попытке обратиться к данным таблицы выдаёт
Операция для таблицы "1" не разрешается по причине "BUH.M1020001".. SQLCODE=-668, SQLSTATE=57016, DRIVER=4.13.111
"
Дополнение небольшое. В случае ошибок со стороны DB2 нужно искать выданный SQLCODE.
Затем из командной строки спрашиваем:
Код: plaintext
db2 ? SQL668N
В ответ получаем детальное описание.

LOAD лучше поправить и добавить туда опцию NONRECOVERABLE или COPY YES согласно описанию:
http://pic.dhe.ibm.com/infocenter/db2luw/v9r7/topic/com.ibm.db2.luw.admin.cmd.doc/doc/r0008305.html
Автоматически преобразовывать все COPY NO (используемые "по умолчанию") можно с помощью переменной DB2_LOAD_COPY_NO_OVERRIDE (находится по доке).
...
Рейтинг: 0 / 0
6 сообщений из 6, страница 1 из 1
Форумы / IBM DB2, WebSphere, IMS, U2 [игнор отключен] [закрыт для гостей] / Обращение к табличному пространству не разрешено.. SQLCODE=-290, SQLSTATE=55039, DRIVER=4.
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]