powered by simpleCommunicator - 2.0.59     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / IBM DB2, WebSphere, IMS, U2 [игнор отключен] [закрыт для гостей] / Перенос БД в другой домен. Как?
3 сообщений из 3, страница 1 из 1
Перенос БД в другой домен. Как?
    #36064077
DB2_ламер
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Необходимо перенести БД в другой домен. Собственно что сложного, backup/restore. Но! Юзеры и их гранты так же валакуца со старого домена :( Как их отсечь и взять только данные? Если можно без посылки к манам, мне надо сделать и забыть. Я ваще управдом :)
...
Рейтинг: 0 / 0
Перенос БД в другой домен. Как?
    #36064519
бомж_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
управдом найми грузчиков или выполни revoke на базе и ее объектах для юзеров, которых хочешь отсечь. просто убери права и все.
...
Рейтинг: 0 / 0
Перенос БД в другой домен. Как?
    #36064612
Mark Barinstein
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
После восстановления вы можете сгенерировать соответствующие команды revoke, основываясь на информации из системного каталога.
Вам надо будет в каком-нибудь каталоге создать 2 файла и из db2cw, находясь в этом каталоге, выполнить:
1. db2 connect to mydbname user my_dbadmin_username using my_dbadmin_password

2. Удаление привилегий на объекты:
Поместите запрос в файл privileges_gen.sql
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
select 
  'revoke '||privilege||' '
||case objecttype when 'TABLESPACE' then 'of' else 'on' end||' '
||case when objecttype in ('MATERIALIZED QUERY TABLE', 'TABLE', 'VIEW') then 'TABLE' else objecttype end||' '
||rtrim(objectschema)||case when objectschema!='' and coalesce(objectname, '')!='' then '.' else '' end||coalesce(objectname, '')||' from '
||case when authid='PUBLIC' then '' else case authidtype when 'G' then 'GROUP' when 'U' then 'USER' when 'R' then 'ROLE' end end||' '
||authid
from sysibmadm.privileges
where not (authid=USER and authidtype='U')
and authid!='PUBLIC'
;
и выполните:
db2 -txf privileges_gen.sql -r privileges.sql
оно сгенерирует список команд revoke в файле privileges.sql.
Выполните этот файл:
db2 -vsf privileges.sql -z privileges.log

3. Удаление привилегий на базу:
Поместите запрос в файл dbauth_gen.sql
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
select 'revoke '||substr(
  case BINDADDAUTH when 'Y' then ', BINDADD' else '' end
||case CONNECTAUTH when 'Y' then ', CONNECT' else '' end
||case CREATETABAUTH when 'Y' then ', CREATETAB' else '' end
||case DBADMAUTH when 'Y' then ', DBADM' else '' end
||case EXTERNALROUTINEAUTH when 'Y' then ', CREATE_EXTERNAL_ROUTINE' else '' end
||case IMPLSCHEMAAUTH when 'Y' then ', IMPLICIT_SCHEMA' else '' end
||case LOADAUTH when 'Y' then ', LOAD' else '' end
||case NOFENCEAUTH when 'Y' then ', CREATE_NOT_FENCED_ROUTINE' else '' end
||case QUIESCECONNECTAUTH when 'Y' then ', QUIESCE_CONNECT' else '' end
||case SECURITYADMAUTH when 'Y' then ', SECADM' else '' end
,  3 )||' from '
||case grantee when 'PUBLIC' then '' else case granteetype when 'G' then 'GROUP' when 'U' then 'USER' when 'R' then 'ROLE' end||' ' end
||grantee
from syscat.dbauth
where not (grantee=USER and granteetype='U')
and grantee!='PUBLIC'
;
и выполните:
db2 -txf dbauth_gen.sql -r dbauth.sql
оно сгенерирует список команд revoke в файле dbauth.sql.
Выполните этот файл:
db2 -vsf dbauth.sql -z dbauth.log
...
Рейтинг: 0 / 0
3 сообщений из 3, страница 1 из 1
Форумы / IBM DB2, WebSphere, IMS, U2 [игнор отключен] [закрыт для гостей] / Перенос БД в другой домен. Как?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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