Глупый вопрос про консольные команды db2
От: greydrone Россия  
Дата: 05.02.24 04:23
Оценка:
Распространенным методом запуска sql-запроса или вызова хранимой процедуры под linux является выполнение команд, наподобие этих

db2 connect to ASV user $DB2_USER using $DB2_PASSWORD
db2 call P_RM5939_DROP_ALL_TABLES\(\)

Иногда за этим следует

db2 connect reset

Мне непонятно, каким образом исполняемый файл db2 получает информацию от предыдущей команды db2 connect (выбор базы данных).
Насколько я знаю, по завершении выполнения исполняемого файла, все открытые файловые дексрипторы и дескрипторы сокетов закрываются.
У меня было предположение, что происходит установка переменной окружения, однако до и после выполнения db2 connect, один и тот же набор переменных.
Как следствие, непонятно, насколько необходима connect reset команда.

Не могли бы вы прояснить вопрос?
Re: Глупый вопрос про консольные команды db2
От: Sinclair Россия https://github.com/evilguest/
Дата: 05.02.24 04:34
Оценка:
Здравствуйте, greydrone, Вы писали:

G>Не могли бы вы прояснить вопрос?

https://www.ibm.com/docs/en/db2/11.5?topic=clp-command-line-processor-features#r0010412__title__6

The command line processor consists of two processes: the front-end process (the Db2 command), which acts as the user interface, and the back-end process (db2bp), which maintains a database connection.

Maintaining database connections
Each time that db2 is invoked, a new front-end process is started. The back-end process is started by the first db2 invocation, and can be explicitly terminated with TERMINATE. All front-end processes with the same parent are serviced by a single back-end process, and therefore share a single database connection.

Уйдемте отсюда, Румата! У вас слишком богатые погреба.
Re[2]: Глупый вопрос про консольные команды db2
От: greydrone Россия  
Дата: 05.02.24 04:59
Оценка:
Спасибо. Теперь понятно. Вот любопытно узнать на счет

db2 connect reset


Я никогда не выполняю эту команду, насколько это может быть вредно?
Может, переполнение максимально возможного числа подключений?
Re[3]: Глупый вопрос про консольные команды db2
От: Sinclair Россия https://github.com/evilguest/
Дата: 05.02.24 06:24
Оценка:
Здравствуйте, greydrone, Вы писали:

G>Спасибо. Теперь понятно. Вот любопытно узнать на счет

G>

db2 connect reset


G>Я никогда не выполняю эту команду, насколько это может быть вредно?
G>Может, переполнение максимально возможного числа подключений?
Там же используется connection pooling. Вряд ли вы сможете сильно что-то переполнить — но, естественно, это зависит от подробностей того, что именно и как именно вы делаете.
Наверняка у db2 есть инструменты по анализу статистики — посмотрите, сколько там в итоге получается подключений при вашей повседневной работе.
Уйдемте отсюда, Румата! У вас слишком богатые погреба.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.