6.5. 데이터베이스 캐시 크기 설정
데이터베이스 캐시에는 데이터베이스에 대한 Berkeley 데이터베이스 인덱스 파일이 포함되어 있습니다. 즉, 데이터베이스에서 인덱싱하는 데 사용되는
*.db
및 기타 모든 파일을 의미합니다. 이 값은 Berkeley DB API 함수 set_cachesize() 에 전달됩니다.
이 캐시 크기는 항목 캐시 크기보다 Directory Server 성능에 미치는 영향은 적지만 항목 캐시 크기가 설정된 후 사용 가능한 RAM이 있는 경우 데이터베이스 캐시에 할당된 메모리 양을 늘립니다.
운영 체제에는 RAM 사용을 위해 데이터베이스 캐시와 경쟁할 수 있는 파일 시스템 캐시도 있습니다. 파일 시스템 캐시 설정 및 파일 시스템 캐시 모니터링에 대한 정보를 찾으려면 운영 체제 설명서를 참조하십시오.
참고
항목 캐시 크기를 수동으로 설정하는 대신 하드웨어 리소스를 기반으로 최적화된 설정에 맞게 자동 크기 조정 기능을 권장합니다. 자세한 내용은 6.1.1절. “수동으로 데이터베이스 및 입력 캐시 자동 크기 활성화”의 내용을 참조하십시오.
6.5.1. 명령줄을 사용하여 데이터베이스 캐시 크기 수동 설정 링크 복사링크가 클립보드에 복사되었습니다!
링크 복사링크가 클립보드에 복사되었습니다!
명령줄을 사용하여 데이터베이스 캐시 크기를 수동으로 설정하려면 다음을 수행합니다.
- 자동 캐시 튜닝을 비활성화합니다.
dsconf -D "cn=Directory Manager" ldap://server.example.com backend config set --cache-autosize=0
# dsconf -D "cn=Directory Manager" ldap://server.example.com backend config set --cache-autosize=0
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 데이터베이스 캐시 크기를 수동으로 설정합니다.dsconf -D "cn=Directory Manager" ldap://server.example.com backend config set --dbcachesize=268435456
# dsconf -D "cn=Directory Manager" ldap://server.example.com backend config set --dbcachesize=268435456
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 이 명령은 데이터베이스 캐시를 256MB로 설정합니다. - Directory 서비스 인스턴스를 다시 시작하십시오.
dsctl instance_name restart
# dsctl instance_name restart
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
6.5.2. 웹 콘솔을 사용하여 데이터베이스 캐시 크기 수동 설정 링크 복사링크가 클립보드에 복사되었습니다!
링크 복사링크가 클립보드에 복사되었습니다!
웹 콘솔을 사용하여 데이터베이스 캐시 크기를 수동으로 설정하려면 다음을 수행합니다.
- 웹 콘솔에서 Directory Server 사용자 인터페이스를 엽니다. 자세한 내용은 Red Hat Directory Server 관리 가이드의 웹 콘솔을 사용하여 디렉터리 서버 로깅 섹션을 참조하십시오.
- 인스턴스를 선택합니다.
- 글로벌 데이터베이스 구성을 선택합니다.탭에서
- 자동 캐시 튜닝을 비활성화합니다.
- 데이터베이스 캐시 크기(바이트) 필드를 데이터베이스 캐시 크기로 설정합니다.
- 인스턴스 재시작 을 선택합니다.버튼을 클릭하고
6.5.3. RAM 디스크에 데이터베이스 캐시 저장 링크 복사링크가 클립보드에 복사되었습니다!
링크 복사링크가 클립보드에 복사되었습니다!
Directory Server 인스턴스를 실행하는 시스템에 충분한 RAM이 있는 경우 추가 성능 향상을 위해 RAM 디스크에 데이터베이스 캐시를 선택적으로 저장할 수 있습니다.
- RAM 디스크에 데이터베이스 캐시 및 메타데이터의 디렉터리를 생성합니다.
mkdir -p /dev/shm/slapd-instance_name/
# mkdir -p /dev/shm/slapd-instance_name/
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 디렉터리에 다음 권한을 설정합니다.
chown dirsrv:dirsrv /dev/shm/slapd-instance_name/ chmod 770 /dev/shm/slapd-instance_name/
# chown dirsrv:dirsrv /dev/shm/slapd-instance_name/ # chmod 770 /dev/shm/slapd-instance_name/
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - Directory Server 인스턴스를 중지합니다.
systemctl stop dirsrv@instance_name
# systemctl stop dirsrv@instance_name
Copy to Clipboard Copied! Toggle word wrap Toggle overflow /etc/dirsrv/slapd-instance_name/dse.ldif
파일을 편집하고 cn=bdb,cn=config,cn=plugins,cn=plugins,cn=config 항목의nsslapd-db
-home-directory 속성에 새 경로를 설정합니다.dn: cn=bdb,cn=config,cn=ldbm database,cn=plugins,cn=config ... nsslapd-db-home-directory: /dev/shm/slapd-instance_name/
dn: cn=bdb,cn=config,cn=ldbm database,cn=plugins,cn=config ... nsslapd-db-home-directory: /dev/shm/slapd-instance_name/
Copy to Clipboard Copied! Toggle word wrap Toggle overflow nsslapd-db-home-directory
특성이 없는 경우 cn=bdb,cn=config,cn=ldbm database,cn=plugins,cn=config 항목에 새 값을 추가하여 추가합니다.- Directory Server 인스턴스를 시작합니다.
systemctl start dirsrv@instance_name
# systemctl start dirsrv@instance_name
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
참고
데이터베이스 캐시가 RAM 디스크에 저장되면 재부팅할 때마다 Directory Server를 다시 생성해야 합니다. 결과적으로 캐시를 다시 생성할 때까지 서비스 시작 및 초기 작업이 느려집니다.