Запросы, планы, оптимизация запросов, ...
Модераторы: kdv, CyberMax
-
Quasar
- Сообщения: 61
- Зарегистрирован: 23 дек 2005, 10:26
Сообщение
Quasar » 17 сен 2006, 15:18
Есть база. Раньше ее владельцем и владельцем всех ее объектов был user1. Я сделал бэкап/рестор, тем самым сменив владельца базы на user2, но владельцем всех объектов базы остался user1.
Вопрос: как сменить владельца объектов? Пробовал через системные таблицы, не получилось.
FB1.5.2
-
CyberMax
- Заслуженный разработчик
- Сообщения: 638
- Зарегистрирован: 31 янв 2006, 09:05
Сообщение
CyberMax » 18 сен 2006, 02:18
Пересоздание базы при помощи скриптов под user2. Скрипт БД можно сделать через IB Expert, через него же залить данные.
-
Quasar
- Сообщения: 61
- Зарегистрирован: 23 дек 2005, 10:26
Сообщение
Quasar » 18 сен 2006, 05:57
CyberMax писал(а):Пересоздание базы при помощи скриптов под user2. Скрипт БД можно сделать через IB Expert, через него же залить данные.
Над этим вариантом я думал, но ведь если база большая, то это скорее всего выльется в весьма долгий процесс, ведь так? Неужели нет прямого способа?
-
CyberMax
- Заслуженный разработчик
- Сообщения: 638
- Зарегистрирован: 31 янв 2006, 09:05
Сообщение
CyberMax » 18 сен 2006, 06:40
Можно пересоздать таблицы под user2.
Весьма вероятно, что есть возможность сделать это через модификацию системных таблиц, но этот метод неэтичен.
-
Quasar
- Сообщения: 61
- Зарегистрирован: 23 дек 2005, 10:26
Сообщение
Quasar » 18 сен 2006, 06:48
Насчёт пересоздания базы с помощью скриптов. А если в БД лежат блобы, картинки например, то их таким образом неудастся перенести.
Можно пересоздать таблицы под user2.
Можно поподробнее? Если создавать таблицы в той же базе, то их потом не получится переименовать, а если в другой базе, то непонятно как переносить данные.
-
Quasar
- Сообщения: 61
- Зарегистрирован: 23 дек 2005, 10:26
Сообщение
Quasar » 18 сен 2006, 07:14
Кажется нашел решение. Мои действия:
1. Экспортировал метаданные исходной БД в скрипт с помощью IBexpert.
2. С помощью скрипта, создал новую пустую БД, под user2.
3. Воспользовался утилитой IBpump. Всё.
Утилита отработала замечательно. Пока вроде никаких косяков не нашел.