Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Oracle Новый топик    Ответить
 linux бд в свап  [new]
AlexVin
Member

Откуда: E-burg
Сообщений: 1055
оракле 12.1.0.2.160419

как на линуксе из ос (не из бд) посмотреть сколько реально занимает памяти оракловый процесс?
вот так
ps auxw | sort -n -k6 | tail -n 6
на аиксе показывает правду, на линуксе какие-то запредельные значения (походу добавляет туда шаред сегмент)
26 окт 16, 08:26    [19822236]     Ответить | Цитировать Сообщить модератору
 Re: linux бд в свап  [new]
Вячеслав Любомудров
Member

Откуда: Владивосток
Сообщений: 18484
ps -eo pid,rss,args | sort -k 2 -n | tail -5
26 окт 16, 09:43    [19822437]     Ответить | Цитировать Сообщить модератору
 Re: linux бд в свап  [new]
python3.5
Guest
https://github.com/pixelb/ps_mem/blob/master/ps_mem.py
26 окт 16, 10:02    [19822528]     Ответить | Цитировать Сообщить модератору
 Re: linux бд в свап  [new]
AlexVin
Member

Откуда: E-burg
Сообщений: 1055
Вячеслав Любомудров
ps -eo pid,rss,args | sort -k 2 -n | tail -5

ну вот на тесте - показывает те же самые 2 гига у каждого из сотни оракловых процессов, когда на машинке всего 8
26 окт 16, 10:15    [19822599]     Ответить | Цитировать Сообщить модератору
 Re: linux бд в свап  [new]
Вячеслав Любомудров
Member

Откуда: Владивосток
Сообщений: 18484
Оно в kb кажет
26 окт 16, 10:28    [19822665]     Ответить | Цитировать Сообщить модератору
 Re: linux бд в свап  [new]
AlexVin
Member

Откуда: E-burg
Сообщений: 1055
Вячеслав Любомудров
Оно в kb кажет

да. центос 6. на рхеле то же самое

$ ps -eo pid,rss,args | sort -k 2 -n | tail -5
  778 2197160 oracleMYDB (LOCAL=NO)
  658 2216556 oracleMYDB (LOCAL=NO)
28632 2621136 oracleMYDB (LOCAL=NO)
27512 2815456 ora_dbw0_MYDB

$free
Mem:        7904748

memory_target                        big integer 5G

select * from v$sgainfo
Shared Pool Size	1644167168
26 окт 16, 11:42    [19823158]     Ответить | Цитировать Сообщить модератору
 Re: linux бд в свап  [new]
Вячеслав Любомудров
Member

Откуда: Владивосток
Сообщений: 18484
Судя по memory_target HugePages не используются
Поэтому и SGA туда попадает

С HugePages у меня достаточно коррелирует с PGA
+
SQL> !ps -eo pid,rss,args | grep 'oracletest (LOCAL=NO)' | sort -k 2 -n | tail -5 | sort -n
 2099 13792 oracletest (LOCAL=NO)
 2101 17092 oracletest (LOCAL=NO)
 3882  8932 oracletest (LOCAL=NO)
26509  9244 oracletest (LOCAL=NO)
29339 12220 oracletest (LOCAL=NO)

SQL> select spid, trunc(pga_alloc_mem/1024), trunc(pga_max_mem/1024) from v$process
  2  where spid in (2099, 2101, 3882, 26509, 29339) order by to_number(spid);

SPID                     TRUNC(PGA_ALLOC_MEM/1024) TRUNC(PGA_MAX_MEM/1024)
------------------------ ------------------------- -----------------------
2099                                         12962                   12962
2101                                         23778                   28066
3882                                          4834                    8290
26509                                        13538                   13538
29339                                         4514                   36770
Хотя, конечно, не так точно, как хотелось бы
Для большей точности надо лезть в /proc/PID/smaps

Да это и не те цифры, которые нужны
Вот когда один процесс сильно выделяется на фоне других (жрет кучу памяти), то он будет виден и через такой запрос
26 окт 16, 13:43    [19823717]     Ответить | Цитировать Сообщить модератору
 Re: linux бд в свап  [new]
AlexVin
Member

Откуда: E-burg
Сообщений: 1055
ну, я думал на memory_target, но sga_target без HugePages через ps показывает так же много

питоновый скрипт показывает интересные вещи - для некоторых процессов очень адекватно, а для некоторых, не сходящиеся с другими показатели, например(это другая машинка):
питон:
 Private  +   Shared  =  RAM used   Swap used   Program[pid]
  1.5 GiB +   1.5 GiB =   3.0 GiB     1.7 MiB   oracle_7031_oradb [7031]
ps:
ps -eo pid,rss,args | grep 7031
 7031 19832088 oracleORADB (LOCAL=NO)
select:
select spid, trunc(pga_alloc_mem/1024), trunc(pga_max_mem/1024),  from v$process p 
7031	5526	10006

и что - это где-то утечка или несовершенство измерительных приборов?

таки нет простой башевской команды для точного измерения кушаемой памяти оракловых процессов в линуксе? (неправильно я тему обозвал)
27 окт 16, 06:59    [19826334]     Ответить | Цитировать Сообщить модератору
 Re: linux бд в свап  [new]
Вячеслав Любомудров
Member

Откуда: Владивосток
Сообщений: 18484
HugePages в RSS не отображается
Если HugePages не используется, то в RSS будет как приватная так и разделяемая память процесса, которая находится в физической памяти (т.е. не в свопе / файле)

Почему у тебя такое расхождение -- смотри в smaps -- там конкретно по каждому отображению (map) видна статистика
27 окт 16, 09:18    [19826548]     Ответить | Цитировать Сообщить модератору
Все форумы / Oracle Ответить