Reference Guide Table of Contents

  1. Introduction
    1. What is Berkeley DB?
    2. Sleepycat Software Berkeley DB Products
    3. Where does Berkeley DB run?
    4. What does the Berkeley DB distribution include?
    5. What can you do with Berkeley DB?
  2. Getting Started: A Simple Tutorial
    1. Introduction
    2. Key/data pairs
    3. Object handles
    4. Error returns
    5. Opening a database
    6. Adding elements to a database
    7. Retrieving elements from a database
    8. Removing elements from a database
    9. Closing a database
  3. Access Method Operations
    1. Access method operations
    2. Opening a database
    3. Opening multiple databases in a single file
    4. Upgrading databases
    5. Retrieving records
    6. Storing records
    7. Deleting records
    8. Flushing the database cache
    9. Database statistics
    10. Closing a database
    11. Database cursors
      1. Retrieving records with a cursor
      2. Storing records with a cursor
      3. Deleting records with a cursor
      4. Duplicating a cursor
      5. Logical join
      6. Data item count
      7. Closing a cursor
    12. Partial record storage and retrieval
    13. Database verification and salvage
    14. Error support
  4. Access Method Configuration
    1. What are the available access methods?
    2. Selecting an access method
    3. Logical record numbers
    4. General access method configuration
      1. Selecting a page size
      2. Selecting a cache size
      3. Selecting a byte order
      4. Duplicate data items
      5. Non-local memory allocation
    5. Btree access method specific configuration
      1. Btree comparison
      2. Btree prefix comparison
      3. Minimum keys per page
      4. Retrieving Btree records by logical record number
    6. Hash access method specific configuration
      1. Page fill factor
      2. Specifying a database hash
      3. Hash table size
    7. Queue and Recno access method specific configuration
      1. Managing record-based databases
      2. Flat-text backing files
      3. Logically renumbering records
  5. Berkeley DB Architecture
    1. The big picture
    2. Programming model
    3. Programmatic APIs
    4. Scripting languages
    5. Supporting utilities
  6. The Berkeley DB Environment
    1. Introduction
    2. Creating an environment
    3. File naming
    4. Security
    5. Shared memory regions
    6. Remote filesystems
    7. Opening databases within the environment
    8. Error support
  7. Berkeley DB Concurrent Data Store Applications
    1. Building Berkeley DB Concurrent Data Store applications
  8. Berkeley DB Transactional Data Store Applications
    1. Terminology
    2. Introduction
    3. Building transaction protected applications
    4. Building transaction protected routines
    5. Administration
    6. Deadlock detection
    7. Performing checkpoints
    8. Archival procedures
    9. Recovery procedures
    10. Recovery and filesystem operations
    11. Recovery implementation
    12. Berkeley DB recoverability
    13. Transaction throughput
  9. XA Resource Manager
    1. Introduction
    2. Configuring Berkeley DB with The Tuxedo System
    3. Frequently Asked Questions
  10. Programmer Notes
    1. Application signal handling
    2. Error returns to applications
    3. Environmental variables
    4. Building multi-threaded applications
    5. Name spaces
    6. Copying databases
    7. Library version information
    8. Database limits
    9. Byte ordering
    10. Disk space requirements
    11. Compatibility with historic interfaces
    12. Application-specific logging and recovery
    13. Run-time configuration
  11. The Locking Subsystem
    1. Berkeley DB and locking
    2. Page locks
      1. Standard lock modes
      2. Locking without transactions
      3. Locking with transactions: two-phase locking
    3. Access method locking conventions
    4. Berkeley DB Concurrent Data Store locking conventions
    5. Deadlocks and deadlock avoidance
    6. Configuring locking
    7. Locking and non-Berkeley DB applications
  12. The Logging Subsystem
    1. Berkeley DB and logging
    2. Log file limits
    3. Configuring logging
  13. The Memory Pool Subsystem
    1. Berkeley DB and the memory pool
    2. Configuring the memory pool
  14. The Transaction Subsystem
    1. Berkeley DB and transactions
    2. Nested transactions
    3. Cursor stability
    4. Transaction limits
    5. Configuring transactions
    6. Transactions and non-Berkeley DB applications
  15. RPC Client/Server
    1. Introduction
    2. Client program
    3. Server program
  16. Java API
    1. Configuration
    2. Compatibility
    3. Programming notes
  17. Perl API
    1. Using Berkeley DB with Perl
  18. Tcl API
    1. Loading Berkeley DB with Tcl
    2. Using Berkeley DB with Tcl
    3. Tcl API programming notes
    4. Tcl error handling
  19. Sendmail
    1. Using Berkeley DB with Sendmail
  20. Dumping and Reloading Databases
    1. The db_dump and db_load utilities
    2. Dump output formats
    3. Loading text into databases
  21. System Installation Notes
    1. File utility /etc/magic information
  22. Debugging Applications
    1. Introduction
    2. Compile-time configuration
    3. Run-time error information
    4. Reviewing Berkeley DB log files
    5. Common errors
  23. Building Berkeley DB for UNIX systems
    1. Building for UNIX
    2. Configuring Berkeley DB
    3. Changing compile or load options
    4. Installing Berkeley DB
    5. Dynamic shared libraries
    6. Running the test suite under UNIX
    7. Architecture independent FAQ
    8. Architecture specific FAQs
      1. AIX
      2. FreeBSD
      3. HP-UX
      4. IRIX
      5. Linux
      6. OSF/1
      7. SCO
      8. Solaris
      9. SunOS
      10. Ultrix
  24. Building Berkeley DB for Win32 platforms
    1. Building for Win32
    2. Running the test suite under Windows
    3. Windows notes
    4. Windows FAQ
  25. Building Berkeley DB for VxWorks systems
    1. Building for VxWorks
    2. VxWorks notes
    3. VxWorks FAQ
  26. Upgrading Berkeley DB Applications
    1. Upgrading Berkeley DB 1.XX applications to Berkeley DB 2.0
      1. Release 2.0: introduction
      2. Release 2.0: system integration
      3. Release 2.0: converting applications
      4. Release 2.0: on-disk database format
    2. Upgrading Berkeley DB 2.X.X applications to Berkeley DB 3.0
      1. Release 3.0: introduction
      2. Release 3.0: environment open/close/unlink
      3. Release 3.0: function arguments
      4. Release 3.0: the DB_ENV structure
      5. Release 3.0: database open/close
      6. Release 3.0: db_xa_open
      7. Release 3.0: the DB structure
      8. Release 3.0: the DBINFO structure
      9. Release 3.0: DB->join
      10. Release 3.0: DB->stat
      11. Release 3.0: DB->sync and DB->close
      12. Release 3.0: lock_put
      13. Release 3.0: lock_detect
      14. Release 3.0: lock_stat
      15. Release 3.0: log_register
      16. Release 3.0: log_stat
      17. Release 3.0: memp_stat
      18. Release 3.0: txn_begin
      19. Release 3.0: txn_commit
      20. Release 3.0: txn_stat
      21. Release 3.0: DB_RMW
      22. Release 3.0: DB_LOCK_NOTHELD
      23. Release 3.0: EAGAIN
      24. Release 3.0: EACCES
      25. Release 3.0: db_jump_set
      26. Release 3.0: db_value_set
      27. Release 3.0: the DbEnv class for C++ and Java
      28. Release 3.0: the Db class for C++ and Java
      29. Release 3.0: additional C++ changes
      30. Release 3.0: additional Java changes
      31. Release 3.0: on-disk database format
    3. Upgrading Berkeley DB 3.0 applications to Berkeley DB 3.1
      1. Release 3.1: introduction
      2. Release 3.1: DBENV->open, DBENV->remove
      3. Release 3.1: DBENV->set_tx_recover
      4. Release 3.1: DBENV->set_feedback, DB->set_feedback
      5. Release 3.1: DBENV->set_paniccall, DB->set_paniccall
      6. Release 3.1: DB->put
      7. Release 3.1: identical duplicate data items
      8. Release 3.1: DB->stat
      9. Release 3.1: DB_SYSTEM_MEM
      10. Release 3.1: log_register
      11. Release 3.1: memp_register
      12. Release 3.1: txn_checkpoint
      13. Release 3.1: environment configuration
      14. Release 3.1: Tcl API
      15. Release 3.1: DB_TMP_DIR
      16. Release 3.1: log file pre-allocation
      17. Release 3.1: on-disk database format
  27. Test Suite
    1. Running the test suite
  28. Distribution
    1. Source code layout
  29. Additional References
    1. Additional references

Copyright Sleepycat Software