Переименование виртуальной машины с DB2
04.09.2015Случилось несчастье – пришлось переименовать виртуальную машину на которой была запущена DB2. После этого DB2 отказалась запускаться со словами
«db2start : SQL1022C There is not enough memory available to process the command.».
С учетом свободных 6 ГБ оперативной памяти было ясно, что проблема не в ней. После некоторого гугления был найден рецепт. Тут привожу его перевод.
Изначальное виртуалка называлась пусть VM1, после переименования стала VM2 (названия естественно изменены). Что сделать чтобы чудо случилось:
В C:\Windows\system32\drivers\etc\hosts добавляем строки
127.0.0.1 VM1
127.0.0.1 VM1.company.com
где company.com – ваш домен.
Далее поиском ищем db2nodes.cfg и заменяем там VM1 на VM2, должно получиться примерно так
0 VM2 VM2 0
Далее запускаем редактор реестра (regedit) и навигируемся сюда
HKLM\Software\IBM\DB2\GLOBAL_PROFILE
Правим
DB2_ADMINGROUP "VM1\DB2ADMINS" -> "VM2\DB2ADMINS"
DB2_USERSGROUP "VM1\DB2USERS" -> "VM2\DB2USERS"
DB2SYSTEM "VM1" -> "VM2"
После этого перезагружаемся и все должно работать…
И не работает …
Надо сделать еще вот что:
$ db2extsec -r
$ db2extsec /a DB2ADMNS /u DB2USERS
После этого все заработало