리눅스 커널 버퍼 메모리가 0입니다

리눅스 커널 버퍼 메모리가 0입니다

Google에서 찾을 수 없는 질문이 하나 있습니다.

나는 주로 SLES 또는 openSUSE, 다른 버전 및 커널을 사용하는 많은 Linux 상자를 가지고 있습니다. 그들 중 일부에서는 느린 오라클 트랜잭션 문제에 직면했습니다. 때때로 문제가 발생하며 그 당시 상자에 로그인하면 커널 함수 sync_page에서 oracle이 차단된 것을 볼 수 있습니다.

# while :; do ps axo stat,pid,cmd,wchan | egrep '^D|^R'; echo --; sleep 5; done
D     3483 hald-addon-storage: polling ide_do_drive_cmd
Ds    4635 ora_dbw0_orcl               sync_page
Ds    4637 ora_lgwr_orcl               sync_page
Ds    4639 ora_ckpt_orcl               sync_page
D    11210 oracleorcl (LOCAL=NO)       sync_page
D    12457 [smtpd]                     sync_page
R+   12458 ps axo stat,pid,cmd,wchan   -
--
Ds    4635 ora_dbw0_orcl               sync_page
Ds    4637 ora_lgwr_orcl               sync_page
Ds    4639 ora_ckpt_orcl               sync_page
D    11210 oracleorcl (LOCAL=NO)       sync_page
R+   12501 ps axo stat,pid,cmd,wchan   -
--
Ds    4635 ora_dbw0_orcl               sync_page
Ds    4637 ora_lgwr_orcl               sync_page
Ds    4639 ora_ckpt_orcl               sync_page
D    11210 oracleorcl (LOCAL=NO)       sync_page
R+   12535 ps axo stat,pid,cmd,wchan   -
--
Ds    4635 ora_dbw0_orcl               sync_page
Ds    4637 ora_lgwr_orcl               sync_page
Ds    4639 ora_ckpt_orcl               sync_page
D    11210 oracleorcl (LOCAL=NO)       sync_page
R+   12570 ps axo stat,pid,cmd,wchan   -
--

그래서 내 생각에는 그 상자에 디스크 버퍼용 메모리가 부족한 것 같지만 메모리는 괜찮습니다.

             total       used       free     shared    buffers     cached
Mem:       4149084    3994552     154532          0          0    2424328
-/+ buffers/cache:    1570224    2578860
Swap:      3148700     750696    2398004

내 생각엔 이것이 문제인 것 같아. 버퍼가 0이고 디스크에 직접 써야 하는데, 하지만 왜 버퍼가 0입니까?- 구글링을 해봐도 아무 것도 나오지 않습니다. 혹시 도움을 주실 분 계신가요?

답변1

Oracle DBMS는 OS의 버퍼를 우회하고 블록 장치에 직접 씁니다. 버퍼를 사용하지 않아서 트랜잭션이 느려지는 것은 아니라고 생각합니다.

답변2

free커널이 사용하는 버퍼의 양을 알려주는 것입니다.얼마만큼 가능하지?. 커널 버퍼는 전체 메모리에서 제외됩니다. 따라서 이 경우 커널은 버퍼에 0/4149084의 사용 가능한 메모리를 사용하고 있습니다. 나는 이것이 귀하의 문제라고 생각하지 않으며 Oracle 관련 문제가 발생하는 이유를 알아보기 위해 새로운 질문을 만들 것입니다.

관련 정보