|
|
|
Помогите разобраться со swap-ом
|
|||
|---|---|---|---|
|
#18+
Стоит RH73, Oracle8i (1Гб памяти) Смотрю top и вижу что памяти свободно 20Мб, и swap использует 840Кб Но если использование памяти меняется динамически(то больше, то меньше), то used swap стоит на месте 840Кб.Этот же top показывает что oracle использует ну максимум 300Мб.Все остальные процессы и того меньше в процентном соотношении (в общей сумме Гиг ну никак не получается).Как же мне все таки узнать кто хавает память и если это Oracle (а я думаю что это он), то почему swap не сбрасывается. Парметры такие db_block_size = 16384 db_block_buffers = 5000 shared_pool_size = 40099660 log_buffer = 163840 sort_area_size = 65536 sort_area_retained_size = 65536 db_file_multiblock_read_count = 32 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.05.2003, 16:47:37 |
|
||
|
Помогите разобраться со swap-ом
|
|||
|---|---|---|---|
|
#18+
И вот еще результат top (не пойму куда память-то делась, ведь ни один процесс не использует столько много) 5:19pm up 9:43, 2 users, load average: 0,00, 0,00, 0,00 49 processes: 48 sleeping, 1 running, 0 zombie, 0 stopped CPU0 states: 0,0% user, 0,0% system, 0,0% nice, 100,0% idle CPU1 states: 0,1% user, 0,1% system, 0,0% nice, 99,3% idle Mem: 1031004K av, 1000324K used, 30680K free, 0K shrd, 38324K buff Swap: 514040K av, 824K used, 513216K free 881068K cached PID USER PRI NI SIZE RSS SHARE STAT %CPU %MEM TIME COMMAND 3139 oracle 15 0 20620 20M 19692 S 0,0 1,9 0:00 oracle 3137 oracle 15 0 20616 20M 19496 S 0,0 1,9 0:00 oracle 3149 oracle 15 0 17980 17M 16304 S 0,0 1,7 0:03 oracle 3151 oracle 15 0 16604 16M 15300 S 0,0 1,6 0:03 oracle 3145 oracle 15 0 13632 13M 13160 S 0,0 1,3 0:00 oracle 3155 oracle 15 0 10200 9M 9672 S 0,0 0,9 0:03 oracle 3147 oracle 15 0 6908 6908 6480 S 0,0 0,6 0:00 oracle 3153 oracle 15 0 6652 6652 6220 S 0,0 0,6 0:03 oracle 3157 oracle 15 0 6352 6352 5920 S 0,0 0,6 0:03 oracle 3141 oracle 15 0 6020 6020 5444 S 0,0 0,5 0:01 oracle 3135 oracle 15 0 5552 5552 5016 S 0,0 0,5 0:00 oracle 3143 oracle 15 0 5352 5352 4756 S 0,0 0,5 0:02 oracle 3043 oracle 16 0 2980 2980 2076 S 0,0 0,2 0:00 tnslsnr 4419 root 15 0 2068 2060 1520 S 0,0 0,1 0:00 sshd 4361 root 15 0 2036 2028 1520 S 0,0 0,1 0:00 sshd 680 root 15 0 1852 1648 1332 S 0,0 0,1 0:01 sendmail 717 root 15 0 1840 1548 1204 S 0,0 0,1 0:00 smbd 722 root 15 0 1652 1384 1044 S 0,0 0,1 0:01 nmbd 4362 root 15 0 1328 1328 996 S 0,0 0,1 0:00 bash 4420 root 15 0 1328 1328 996 S 0,0 0,1 0:00 bash 619 root 15 0 1232 1224 1108 S 0,0 0,1 0:00 sshd 4418 root 15 0 1044 1044 660 S 0,0 0,1 0:00 grotty 4462 root 15 0 1028 1028 832 R 0,3 0,0 0:00 top 4412 root 17 0 1020 1020 864 S 0,0 0,0 0:00 nroff 4408 root 15 0 980 980 904 S 0,0 0,0 0:00 sh 4407 root 16 0 944 944 872 S 0,0 0,0 0:00 sh 652 root 15 0 928 888 732 S 0,0 0,0 0:00 xinetd 4416 root 16 0 824 824 660 S 0,0 0,0 0:00 groff 4413 root 15 0 788 788 656 S 0,0 0,0 0:00 less 4404 root 15 0 772 772 468 S 0,0 0,0 0:00 man 699 root 15 0 616 616 540 S 0,0 0,0 0:00 crond 515 root 15 0 588 588 500 S 0,0 0,0 0:00 syslogd ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.05.2003, 17:22:03 |
|
||
|
Помогите разобраться со swap-ом
|
|||
|---|---|---|---|
|
#18+
Память здесь : Код: plaintext Попробуй поэксплуатировать систему с выключенным swap-файлом. Если всё будет нормально, то так и оставь без него. А со свапом, когда он включен может быть такая ситуация(мои измышления) - когда физической памяти для сортировок в SQL не хватит, то OC даст Oracle память из swap-а. И встаёт вопрос, а лучше ли это, если бы Oracle обратился е TEMPORARY-сегментам во временной табличной области? Я не уверен. Всё-же временные tablespaces должны быть специально оптимизированы для этого. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.05.2003, 17:42:27 |
|
||
|
Помогите разобраться со swap-ом
|
|||
|---|---|---|---|
|
#18+
2 KSN с памятью у тебя все нормально - никуда она не делась, просто скорее всего отдана под кеш файловой системы. Это не страшно. 2 Softbuilder >Попробуй поэксплуатировать систему с выключенным swap-файлом. >Если всё будет нормально, то так и оставь без него. Попробовать конечно можно, но вот последствия будут немного другие чем ты себе представляешь. Дело в том, чтот Оракл понятие не имеет что такое swap, а просто использует системный вызов brk() (вернее это вроппер, а вызов там malloc()) для увеличения сегмента данных серверного процесса (например, для сортировки, если конечно это в пределах sort_area_size). И если физ. память уже израсходована, то ОС пытается использовать swap, а при отсутствии такового скорее всего просто развалиться. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.05.2003, 21:06:04 |
|
||
|
Помогите разобраться со swap-ом
|
|||
|---|---|---|---|
|
#18+
Т.е. получается, что под кэш ФС отдано 900МБ. Я просто на форуме смотрел, люди то же приводили резу-ты своих top, так точно до мегабайта отображается, мол так-то процесс от оракла занимает 150Мб, другой столько-то и т.д. А тут у меня все процессы показывается, что используют около 100Мб.Или от ОС зависит(у меня RH73) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.05.2003, 08:36:27 |
|
||
|
Помогите разобраться со swap-ом
|
|||
|---|---|---|---|
|
#18+
"И если физ. память уже израсходована, то ОС пытается использовать swap, а при отсутствии такового скорее всего просто развалиться." to .dba: Ну не во всех же случаях. Для сортировок будут использоваться временные сегменты во временных табличных областях. А если памяти будет не хватать под другие элементы PGA - есть смысл перейти на MTS. Кстати у меня swap отключен. Когда был включен, Oracle тоже со временем(после рестарта) влезал в swap, хотя по идее должен был высвобождать память из файлового кэша. Потом я решил его отключить, и так как это негативно ни как не сказалось - я так и оставил. Поэтому я и сказал, что надо пробовать, а не утверждал на 100%. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.05.2003, 08:49:19 |
|
||
|
Помогите разобраться со swap-ом
|
|||
|---|---|---|---|
|
#18+
>Попробовать конечно можно, но вот последствия будут немного другие чем ты себе представляешь. Дело в том, чтот Оракл понятие не имеет что такое swap, а просто использует системный вызов brk() (вернее это вроппер, а вызов там malloc()) для увеличения сегмента данных серверного процесса (например, для сортировки, если конечно это в пределах sort_area_size). И если физ. память уже израсходована, то ОС пытается использовать swap, а при отсутствии такового скорее всего просто развалиться. Видел я на практике такую ситуацию под линуксом. Когда по vmstat'у физической памяти оставалось около 100М оракловый процесс не мог получить новой порции памяти и отваливался с ORA-ошибкой. Ну и новые пользователи конечно не могли зайти в базу. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.05.2003, 13:08:00 |
|
||
|
Помогите разобраться со swap-ом
|
|||
|---|---|---|---|
|
#18+
>to .dba: >Ну не во всех же случаях. Для сортировок будут использоваться временные >сегменты во временных табличных областях. А если памяти будет не хватать >под другие элементы PGA - есть смысл перейти на MTS. сейчас нет времени проверять, но думаю, что отсутствием свопа ты никак не заставишь Оракл использовать временные сегменты для сортировок при не использованном sort_area_size. Кстати, сообщение Эда тому подтверждение. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.05.2003, 14:38:07 |
|
||
|
|

start [/forum/topic.php?fid=52&gotonew=1&tid=1990387]: |
0ms |
get settings: |
7ms |
get forum list: |
10ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
18ms |
get topic data: |
9ms |
get first new msg: |
6ms |
get forum data: |
2ms |
get page messages: |
41ms |
get tp. blocked users: |
1ms |
| others: | 235ms |
| total: | 333ms |

| 0 / 0 |
