`
minfree
  • 浏览: 34851 次
  • 性别: Icon_minigender_1
  • 来自: 北京
最近访客 更多访客>>
社区版块
存档分类
最新评论

Berkeley DB (四)

阅读更多

Berkeley DB 配置与维护

 

一、 配置部份
在基本配置完成之后,可以在slapd.conf设置一些提高安全和效率的选项
  cachesize 5000
  checkpoint 1024 5
  cachesize是ldap在内存中缓存的记录条数。这个缓存是openldap自己维护的,与bdb库无关。
  为了提高效率bdb在修改数据库时,是先修改内存里面的,然后分批回写到数据库文件里面。Checkpoint操作就是把内存中的数据回写数据库文件的操作。
  checkpoint 1024 5表示每写1024kb数据,或者是每隔5分钟,bdb会执行一次checkpoint的操作。
  在bdb库中提拱了一个命令db_checkpoint,用来给用户执行checkpoint用。比如,当用户需要删除日志的时候,他需要先执行一下db_checkpoint,来确保数据已经回写到数据库文件中了,这时才能放心地删掉日志。

  还有一些设置bdb环境的选项设置,这些选项存在于DB_CONFIG。这个文件放在openldap-data/下
  set_cachesize是bdb库自己的cache,这个选项用来设置cache的大小。这个选项的格式

  set_cachesize
    : cache 的 GB 大小
    : cache 的 Bytes
    : cache 段的数目, 如果配置为 0 or 1, 那么是一段连续的 cache. 
  set_cachesize一旦设定,就不能更改,除非你再用db_recover重建库。
  set_lg_dir 设置操作日志存放的目录。
  set_lg_bsize 设置操作日志的缓存
  set_lg_max 设置操作日志文件大小
  set_flags 配置数据库启动参数, 可以配置多个选项标志,比如 DB_TXN_NOSYNC 告诉数据库不要立即刷新事务缓冲, 设置该值可以提高数据库写性能, 但伴随的是数据丢失的风险(无法通过操作日志恢复). 因此并不推荐使用该选项。

 

二、维护
  1) 数据库和日志的归档(或者叫备份)
  有两种备份方法
    a)标准备份
    这种备份方法,要求是在备份的时候停止对数据库的写操作。方法是,
      1)停止对数据库的写
      2)执行一次checkpoint
      3)在数据库文件的目录下,执行db_archive –s标识出数据库文件,把它们拷到要备份的目录下。
      4)在日志目录下,执行db_archive,列出的是不活动的日志文件,再用db_archive –l列出所有
      的日志文件,由些来判断哪个是活动日志文件。一般是日志文件编号最大的一个。把这个日志文件拷到
      备份的目录下。

      这种备份不需要recover,直接就能用。
    b)热备份
    这种备份方法,可以在任何时候用。方法如下
      1)在数据库文件的目录下,执行db_archive –s标识出数据库文件,把它们都拷到备份目录下。
      2)在日志目录下,执行db_archive –l标识出所有的日志文件。把它们拷到备份目录下。
      为了节省备份目录的空间,可以在热备份之前,在备份目录执行db_archive列出不再需要的日志文件
      的列表,可以不把这些日志文件拷到备份目录下。

  2)数据恢复
  数据恢复有两种,一种是正常恢复,一种是热恢复。 
  正常恢复是,当数据库文件和日志文件都没有被损坏时,执行db_recover,不要带参数。当采用热备份的方法所做的备份,必段要用热恢复的方法来恢复

  热恢复是,当数据库文件或者日志文件损坏时,在热备份的备份目录下,执行db_recover -c 来恢复数据。

 

几个工具的简介
  db_archive 用来确定归档文件的工具,常用的用法
  在数据文件目录下,运行db_archive –s 用来确定哪些是数据库文件
db_archive 不带任保参数,列出不再需要的日志文件名。db_archive –l 列出所有日志文件名

  db_checkpoint 用来手工checkpoint的工具,比如,在数据文件目录下,运行db_checkpoint –1 执行一次checkpoint的操作。

  db_recover 用于恢复数据库,常用的用法,db_recover 不带任务参数,表示用正常恢复方法恢复数据库。db_recover –c 用于热恢复用的,db_reover –t 可以把数据库恢复到指定时间的状态。

db_upgrade  升级数据版本,使用此命令之前需要用db_recover -e 恢复一下,否则会出现版本不匹配的错误

 

 

来源:http://blog.csdn.net/simbi/archive/2009/06/17/4277193.aspx

分享到:
评论

相关推荐

    Berkeley DB4.8以上各版本

    Berkeley DB4.8以上各版本,已经亲测过哪些版本可与redhat6.5兼容,见附件名称备注。

    Berkeley DB Java 版 4.0.92

    Oracle Berkeley DB Java 版是一个开源的、可嵌入的事务存储引擎,是完全用 Java 编写的。与 Oracle Berkeley DB 类似,Oracle Berkeley DB Java 版在应用程序的地址空间中执行,没有客户端/服务器通信的开销,从而...

    Berkeley DB 读取样例

    嵌入式数据库Berkeley DB Java Edition Berkeley DB的使用 使用Berkeley DB的一般步骤 创建、打开、操作、关闭数据库环境Environment

    Berkeley DB

    Berkeley DB(BDB)是OpenLDAP后台数据库的默认配置,因此在安装OpenLDAP之前应先安装BDB。

    Berkeley DB数据库 6.2.32 64位

    Berkeley DB 6.2.32_64.msi Windows 64-bit binary installer Berkeley DB是一个嵌入式数据库,为应用程序提供可伸缩的、高性能的、有事务保护功能的数据管理服务。 主要特点: 嵌入式:直接链接到应用程序中,与...

    BerkeleyDB测试程序

    BerkeleyDB测试程序 包含散列文件入库,和读取的速度的测试

    Berkeley DB 5.3.21.tar

    Berkeley DB 5.3.21.tar,你也可以去http://www.oracle.com/technetwork/products/berkeleydb/downloads/index.html下载最新版

    Berkeley DB文章集合

    Berkeley DB文章集合

    BerkeleyDB

    BerkeleyDB的java应用jar包

    Berkeley DB数据库最新版

    Berkeley DB6.0.20 Berkeley DB BDB Berkeley DB数据库

    Berkeley DB C++编程入门教

    介绍DB API的设置与使用的快速入门手册,目标是提供一个快速有效地机制,能让你进入Berkeley DB研发的世界。在本文中侧重于C++语言的研发人员,以及研究进城内数据管理解决方案的资深架构师。

    berkeley db使用手册

    berkeley db 使用手册

    sqlite PK Berkeley DB

    sqlite 和Berkeley db各方面 的比较

    BerkeleyDB Java Edition用户手册

    Java版本的Berkeley DB用户手册,找了好久

    Berkeley DB数据库支持事物的C++语言入门教程

    本文描述了如何在Berkeley DB中使用事务(Transaction)。它简要介绍了事务是如何保护你的应用的数据的...本书假设你已经了解BerkeleyDB的基本架构知识(这些知识在<Getting Started with Berkeley DB Guide>一书中。)

    BerkeleyDB-0.26

    BerkeleyDB和Sqlite是当前最流行的嵌入式开源数据库。

    Berkeley DB 资料

    Berkeley DB 批量插入更新与删除用法示例 Berkeley 函数接口 Berkeley DB 由浅入深 SQL 开发人员 Oracle Berkeley DB 指南 Berkeley DB参考手册

    SQL 开发人员 Oracle Berkeley DB 指南

    不是所有的 SQL 应用程序都应该在 Oracle Berkeley DB 实施( Oracle Berkeley DB 是一个开放源的嵌入式数据库引擎,提供了快速、可靠、本地的持久性,无需管理),但如果您有一系列相对固定的查询且很关心性能,...

    BerkeleyDB-JE je-6.0.11

    Oracle BerkeleyDB-JE je-6.0.11

Global site tag (gtag.js) - Google Analytics