Table unknown. RDB$DATABASE.

Ремонт и восстановление баз данных InterBase, Firebird, Yaffil

Модераторы: kdv, Alexey Kovyazin

Ответить
Konstantin
Сообщения: 37
Зарегистрирован: 27 окт 2004, 06:01

Table unknown. RDB$DATABASE.

Сообщение Konstantin » 17 июн 2005, 07:43

через IBExpert дал Одной из ролей все права на чтение таблиц.
После этого к базе могу подключится только через SYSDBA.
Пользователи все подключаются через Роли.

если подключаться пользователем с ролью вылетает ошибка

Undefined name.
Dynamic SQL Error.
SQL error code = -204.
Table unknown.
RDB$DATABASE.
At line 2, column 19.

Что делать?? в чем проблема???

kdv
Forum Admin
Сообщения: 6595
Зарегистрирован: 25 окт 2004, 18:07

Сообщение kdv » 17 июн 2005, 10:36

нажал не ту нкопку, и создались не те права. см. в rdb$user_privileges

Konstantin
Сообщения: 37
Зарегистрирован: 27 окт 2004, 06:01

Сообщение Konstantin » 17 июн 2005, 11:41

И что там смотреть???

конкретнее можно??

Konstantin
Сообщения: 37
Зарегистрирован: 27 окт 2004, 06:01

Сообщение Konstantin » 17 июн 2005, 13:42

Удалил Роль из базы.
почистил все упоминания этой роли в rdb$user_privileges

не помогает.

Merlin
Динозавр IB/FB
Сообщения: 1502
Зарегистрирован: 27 окт 2004, 11:44

Сообщение Merlin » 17 июн 2005, 14:05

Сделай backup-restore и больше не балуйся с правами на системные таблицы.

Konstantin
Сообщения: 37
Зарегистрирован: 27 окт 2004, 06:01

Сообщение Konstantin » 20 июн 2005, 08:43

Да не трогал я системные таблицы.

Роли права назначал через IBExpert .

Это уже не первый раз. такое а бакап и ресторе 4Гига делать каждый раз. долговато.

Merlin
Динозавр IB/FB
Сообщения: 1502
Зарегистрирован: 27 окт 2004, 11:44

Сообщение Merlin » 20 июн 2005, 12:54

Konstantin писал(а):Да не трогал я системные таблицы.
Трогал-трогал. Чудес не бывает.
Konstantin писал(а): Роли права назначал через IBExpert .
Вот тут руки и не помыл. То ли сам назначил права на доступ к системеным таблицам, то ли Экспертовский автогрант помог.

Konstantin
Сообщения: 37
Зарегистрирован: 27 окт 2004, 06:01

Сообщение Konstantin » 20 июн 2005, 13:08

Merlin писал(а): то ли Экспертовский автогрант помог.
А вот этим часто пользуемся.

Так как лечить то??? 4Гига сильно долго бакап ресторе делать.

Причем на убитой базе - удаляли все права кроме Sysdbа

назначали снова - через Эксперт все рано не коннктится.

мне нужно выснить причину что повлекло это.
и в следующий раз лечить это быстро.

Merlin
Динозавр IB/FB
Сообщения: 1502
Зарегистрирован: 27 окт 2004, 11:44

Сообщение Merlin » 20 июн 2005, 13:48

select * from rdb$user_privileges where rdb$relation_name starting 'RDB$'

По уму должен получить не больше 6 записей с доступом к RDB$ROLES - 5 на все права создателя базы (если он не SYSDBA) и 1 на чтение PUBLIC. Если что вылезет ещё - revoke. По идее должно оклематься, но я бы советовал всё-таки b/r - там остаются лишние записи в RDB$SECURITY_CLASSES, чем может аукнуться впоследствии - не знаю.

Ответить