powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Oracle [игнор отключен] [закрыт для гостей] / Растут процессы
20 сообщений из 20, страница 1 из 1
Растут процессы
    #39645341
Фотография Goofy122
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В базе растут с каждым днем число процессов по 3-4 процесса за день V$PROCESS , но активных процессов всего 22.

Код: plsql
1.
 SELECT цCOUNTунт(*) FROM V$PROCESS WHERE STATUS = 'ACTIVE'



Разве процессы которые не используются (INACTIVE) они не должны удаляться автоматически максмимум число процессов было по дефаулту 150 я увеличил до 300 , уже достигло 250 это нормально ?

И как определить откуда плодятся столько процессов ?

Спасибо.
...
Рейтинг: 0 / 0
Растут процессы
    #39645347
Фотография Goofy122
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
И можно ли очистить ? diag/orcl/orc/trace , там уже больше 19000 набралось ?
...
Рейтинг: 0 / 0
Растут процессы
    #39645444
Фотография DВА
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Goofy122
Разве процессы которые не используются (INACTIVE) они не должны удаляться автоматически максмимум число процессов было по дефаулту 150 я увеличил до 300 , уже достигло 250 это нормально ?

с какого перепугу?
если специально не настроил - не удаляться.
откуда процессы поспрашивай у пользователей базы, а не у Вселенной ))
...
Рейтинг: 0 / 0
Растут процессы
    #39645459
Фотография Viewer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
+1
https://asktom.oracle.com/pls/apex/f?p=100:11:0::::P11_QUESTION_ID:914029001168 for inactive - sure, inactive sessions are just that - inactive. not evil, not bad, not good, not anything. Just INACTIVE.
Nothing wrong or bad about inactive (unless you personally consider it otherwise, then you set timeouts).

Goofy122но активных процессов всего 22.
Код: plsql
1.
SELECT type FROM V$session WHERE STATUS = 'ACTIVE'
...
Рейтинг: 0 / 0
Растут процессы
    #39646428
Фотография Goofy122
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
DВАGoofy122Разве процессы которые не используются (INACTIVE) они не должны удаляться автоматически максмимум число процессов было по дефаулту 150 я увеличил до 300 , уже достигло 250 это нормально ?

с какого перепугу?
если специально не настроил - не удаляться.
откуда процессы поспрашивай у пользователей базы, а не у Вселенной ))

Специально можно по подробней пожалуйста , если можно про таймаут пожалуйста буду очень благодарен как и чем едят ?
...
Рейтинг: 0 / 0
Растут процессы
    #39646452
SAS2014
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
у меня так же было когда клиентская прога при закрытие ее процесс не убивался и весел.
пока разрабы клиентского ПО не устранили эту ошибку

в вашем случае нужно с начало узнать к какому ПО принадлежит процесс которые не убиваются
или если уже ни как с разрабами не связаться, о проблеме то можно попробовать как то вычислить мертвые процессы и убивать их.
...
Рейтинг: 0 / 0
Растут процессы
    #39646453
SAS2014
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
+

Для такого удаления в составе ПО Oracle имеется специальная программа orakill
параметрами:
1. номер процесса (нити) ОС (берем из поля V$PROCESS.SPID)
2. имя экземпляра СУБД (ORACLE_SID):

orakill ORACLE_SID номер_процесса_(нити)

все этом можно автоматизировать, но как вы будите получать инфу о процессах и подставлять в orakill , можно использовать pl\sql код, далее его запихнуть в dbms_job
...
Рейтинг: 0 / 0
Растут процессы
    #39646454
SAS2014
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
но если это слишком сложно, то можно хехе делать рестарт базы, но это делать когда ни кто с базой не работает и ни какие процессы, джобы и прочее (которые имеют статус важности) в это время не будут выполняться
...
Рейтинг: 0 / 0
Растут процессы
    #39646493
Фотография Viewer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Goofy122если можно про таймаут пожалуйста
How does the profile parameter 'idle_time' work?
...
Рейтинг: 0 / 0
Растут процессы
    #39646750
Фотография Goofy122
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SAS2014у меня так же было когда клиентская прога при закрытие ее процесс не убивался и весел.
пока разрабы клиентского ПО не устранили эту ошибку

в вашем случае нужно с начало узнать к какому ПО принадлежит процесс которые не убиваются
или если уже ни как с разрабами не связаться, о проблеме то можно попробовать как то вычислить мертвые процессы и убивать их.


Спасибо именно эта фигня , при закрытие клиентского ПО ее процесс не убивается и висит.

Буду очень благодарен если поможете (подскажете) как определить к какому ПО принадлежит процесс ?

Заранее благодарен.
...
Рейтинг: 0 / 0
Растут процессы
    #39646753
Фотография Goofy122
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SAS2014+

Для такого удаления в составе ПО Oracle имеется специальная программа orakill
параметрами:
1. номер процесса (нити) ОС (берем из поля V$PROCESS.SPID)
2. имя экземпляра СУБД (ORACLE_SID):

orakill ORACLE_SID номер_процесса_(нити)

все этом можно автоматизировать, но как вы будите получать инфу о процессах и подставлять в orakill , можно использовать pl\sql код, далее его запихнуть в dbms_job


Еще проще

Код: plsql
1.
2.
3.
4.
5.
6.
BEGIN
  FOR r IN (select sid,serial# from v$session where username = 'UB_USER' AND STATUS = 'INACTIVE' AND USERNAME IS NOT NULL)
  LOOP
    EXECUTE IMMEDIATE 'alter system kill session ''' || r.sid  || ',' || r.serial# || '''';
  END LOOP;
END;



Но сами понимаете это не выход , нужен источник откуда плодятся данные процессы не убиваюстя и висят
...
Рейтинг: 0 / 0
Растут процессы
    #39646770
Фотография Viewer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
Растут процессы
    #39646863
flexgen
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Goofy122Буду очень благодарен если поможете (подскажете) как определить к какому ПО принадлежит процесс ?

Смотри v$session , а именно поле PROGRAM.
...
Рейтинг: 0 / 0
Растут процессы
    #39647339
SAS2014
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Goofy122SAS2014+

Для такого удаления в составе ПО Oracle имеется специальная программа orakill
параметрами:
1. номер процесса (нити) ОС (берем из поля V$PROCESS.SPID)
2. имя экземпляра СУБД (ORACLE_SID):

orakill ORACLE_SID номер_процесса_(нити)

все этом можно автоматизировать, но как вы будите получать инфу о процессах и подставлять в orakill , можно использовать pl\sql код, далее его запихнуть в dbms_job


Еще проще

Код: plsql
1.
2.
3.
4.
5.
6.
BEGIN
  FOR r IN (select sid,serial# from v$session where username = 'UB_USER' AND STATUS = 'INACTIVE' AND USERNAME IS NOT NULL)
  LOOP
    EXECUTE IMMEDIATE 'alter system kill session ''' || r.sid  || ',' || r.serial# || '''';
  END LOOP;
END;



Но сами понимаете это не выход , нужен источник откуда плодятся данные процессы не убиваюстя и висят

пробуйте запустить систему мониторинга подключений к базе, т.е. у меня например есть такая штука которая выбирает из системного претдастваленеи v$session нужную инфу о пользователей, сидов и т.п. с добавлением проги и другая инфа все это записывается в таблицу..... а в таблицу делает запись джобс
...
Рейтинг: 0 / 0
Растут процессы
    #39647340
SAS2014
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
в это табл я могу точно сказать кто восколька откуда заходил в базу, может у вас выполняется кратко временные коннекты какой то проги.
...
Рейтинг: 0 / 0
Растут процессы
    #39647570
Фотография Goofy122
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Создал PROFILE накинул созданный PROFILE нескольким пользователям и поставил IDLE_TIME и CONNECT_TIME 2 мин. ,

Код: plsql
1.
2.
ALTER PROFILE SESSION_TIME LIMIT IDLE_TIME 2; 
ALTER PROFILE SESSION_TIME LIMIT CONNECT_TIME  2;



Но число сессий не уменьшается хоть и показывает INACTIVE
...
Рейтинг: 0 / 0
Растут процессы
    #39647577
Фотография Goofy122
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Например если в базу подключиться с обычным пользователем сессия добавляется в V$SESSION если дисконнектиться норм исчезает. Но процессы которые не исчезают они добавляюстя все через пользовательское ПО но не исчезают и показывает INACTIVE.

Код: plsql
1.
SELECT * FROM V$SESSION WHERE TYPE <> 'BACKGROUND';



Все показывает JDBC Thin Client
...
Рейтинг: 0 / 0
Растут процессы
    #39647579
Фотография Goofy122
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Goofy122Например если в базу подключиться с обычным пользователем сессия добавляется в V$SESSION если дисконнектиться норм исчезает. Но процессы которые не исчезают они добавляюстя все через пользовательское ПО но не исчезают и показывает INACTIVE.

Код: plsql
1.
SELECT PROGRAM FROM V$SESSION WHERE TYPE <> 'BACKGROUND';



Все показывает JDBC Thin Client
...
Рейтинг: 0 / 0
Растут процессы
    #39647616
Фотография Viewer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Goofy122Все показывает JDBC Thin Client

https://stackoverflow.com/questions/7569446/inactive-session-in-oracle-by-jdbc Normally, the middle tier application server creates a connection pool. When your code requests a connection, it gets an already open connection from the pool rather than going through the overhead of spawning a new connection to the database. When your code closes a connection, the connection is returned to the pool rather than going through the overhead of physically closing the connection. That means that there will be a reasonable number of connections to the database where the STATUS in V$SESSION is "INACTIVE" at any given point in time. That's perfectly normal.

Even under load, most database connections from a middle tier are "INACTIVE" most of the time. A status of "INACTIVE" merely means that at the instant you ran the query, the session was not executing a SQL statement. Most connections will spend most of their time either sitting in the connection pool waiting for a Java session to open them or waiting on the Java session to do something with the data or waiting on the network to transfer data between the machines.
...
Рейтинг: 0 / 0
Растут процессы
    #39647925
Фотография Goofy122
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Спасибо !
...
Рейтинг: 0 / 0
20 сообщений из 20, страница 1 из 1
Форумы / Oracle [игнор отключен] [закрыт для гостей] / Растут процессы
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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