source: server/databases/db.xml@ de7f20e

10.0 10.1 11.0 11.1 7.10 7.4 7.5 7.6 7.6-blfs 7.6-systemd 7.7 7.8 7.9 8.0 8.1 8.2 8.3 8.4 9.0 9.1 basic bdubbs/svn elogind gnome kde5-13430 kde5-14269 kde5-14686 krejzi/svn lazarus nosym perl-modules qt5new systemd-11177 systemd-13485 trunk upgradedb xry111/intltool xry111/test-20220226
Last change on this file since de7f20e was de7f20e, checked in by Randy McMurchy <randy@…>, 13 years ago

Added Berkeley DB dependencies as it is no longer built in LFS

git-svn-id: svn://svn.linuxfromscratch.org/BLFS/trunk/BOOK@7849 af4574ff-66df-0310-9fd7-8a98e5e911e0

  • Property mode set to 100644
File size: 13.8 KB
Line 
1<?xml version="1.0" encoding="ISO-8859-1"?>
2<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
3 "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
4 <!ENTITY % general-entities SYSTEM "../../general.ent">
5 %general-entities;
6
7 <!ENTITY db-download-http "http://download-east.oracle.com/berkeley-db/db-&db-version;.tar.gz">
8 <!ENTITY db-download-ftp "&gentoo-ftp-repo;/db-&db-version;.tar.gz">
9 <!ENTITY db-md5sum "b0f1c777708cb8e9d37fb47e7ed3312d">
10 <!ENTITY db-size "9.2 MB">
11 <!ENTITY db-buildsize "94 MB (additional 100 MB to run parallel standard test suite)">
12 <!ENTITY db-time "1.7 SBU (builds all bindings, add an additional 145 SBU to run parallel standard test suite)">
13]>
14
15<sect1 id="db" xreflabel="Berkeley DB-&db-version;">
16 <?dbhtml filename="db.html"?>
17
18 <sect1info>
19 <othername>$LastChangedBy$</othername>
20 <date>$Date$</date>
21 </sect1info>
22
23 <title>Berkeley DB-&db-version;</title>
24
25 <indexterm zone="db">
26 <primary sortas="a-Berkeley-DB">Berkeley DB</primary>
27 </indexterm>
28
29 <sect2 role="package">
30 <title>Introduction to Berkeley DB</title>
31
32 <!-- <para>The <application>Berkeley DB</application> package contains programs
33 and utilities used by many other applications for database related
34 functions. This package is also installed during LFS and may already exist
35 on your system. It is listed here in BLFS as well because you may need to
36 reinstall it if you need the additional language bindings or the RPC
37 server. If you do reinstall <application>Berkeley DB</application>, ensure
38 you use the &lfs-bdb-version; version used in the LFS book.</para> -->
39
40 <para>The <application>Berkeley DB</application> package contains programs
41 and utilities used by many other applications for database related
42 functions.</para>
43
44 <bridgehead renderas="sect3">Package Information</bridgehead>
45 <itemizedlist spacing="compact">
46 <listitem>
47 <para>Download (HTTP): <ulink url="&db-download-http;"/></para>
48 </listitem>
49 <listitem>
50 <para>Download (FTP): <ulink url="&db-download-ftp;"/></para>
51 </listitem>
52 <listitem>
53 <para>Download MD5 sum: &db-md5sum;</para>
54 </listitem>
55 <listitem>
56 <para>Download size: &db-size;</para>
57 </listitem>
58 <listitem>
59 <para>Estimated disk space required: &db-buildsize;</para>
60 </listitem>
61 <listitem>
62 <para>Estimated build time: &db-time;</para>
63 </listitem>
64 </itemizedlist>
65
66 <bridgehead renderas="sect3">Additional Downloads</bridgehead>
67 <itemizedlist spacing="compact">
68 <listitem>
69 <para>Required patch: <ulink
70 url="http://www.oracle.com/technology/products/berkeley-db/db/update/&db-version;/patch.&db-version;.1"/></para>
71 </listitem>
72 <listitem>
73 <para>Required patch: <ulink
74 url="http://www.oracle.com/technology/products/berkeley-db/db/update/&db-version;/patch.&db-version;.2"/></para>
75 </listitem>
76 </itemizedlist>
77
78 <bridgehead renderas="sect3">Berkeley DB Dependencies</bridgehead>
79
80 <bridgehead renderas="sect4">Optional</bridgehead>
81 <para role="optional"><xref linkend="tcl"/>,
82 <xref linkend="jdk"/>, and
83 <ulink url="http://www.gnu.org/software/sharutils/">sharutils</ulink>
84 (for the <command>uudecode</command> command)</para>
85
86 <para condition="html" role="usernotes">User Notes:
87 <ulink url="&blfs-wiki;/db"/></para>
88
89 </sect2>
90
91 <sect2 role="testing">
92 <title>Testing Berkeley DB</title>
93
94 <para>You may want to skip ahead to <xref linkend="bdb-installation"/>. The
95 test suite can take up to 150 SBUs and has a few bugs causing a report of
96 <quote>Regression tests failed</quote>. However, running the test suite is
97 a very exhaustive test of your hardware, perhaps pushing your machine
98 harder (especially disk I/O) than it will ever see during production use.
99 Note that you must have <application>Tcl</application> installed to run the
100 test suite.</para>
101
102 <para>Build for the <application>Berkeley DB</application> test by running
103 the following commands:</para>
104
105<screen><userinput>patch -Np0 -i ../patch.&db-version;.1 &amp;&amp;
106patch -Np0 -i ../patch.&db-version;.2 &amp;&amp;
107cd build_unix &amp;&amp;
108../dist/configure --prefix=/usr \
109 --enable-test \
110 --enable-tcl \
111 --with-tcl=/usr/lib &amp;&amp;
112make</userinput></screen>
113
114 <para>To test the results, start <command>tclsh</command>:</para>
115
116<screen><userinput>tclsh</userinput></screen>
117
118 <para>From the <command>tclsh</command> prompt (<prompt>%&nbsp;</prompt>),
119 run:</para>
120
121<screen><userinput>source ../test/test.tcl
122run_parallel 5 run_std
123exit</userinput></screen>
124
125 <para>Clean up the source tree with the following command:</para>
126
127<screen><userinput>make realclean &amp;&amp;
128cd ..</userinput></screen>
129
130 </sect2>
131
132 <sect2 role="installation" id="bdb-installation">
133 <title>Installation of Berkeley DB</title>
134
135 <!-- <para>The installation commands below are identical to the commands used
136 in the LFS book. If you installed <application>Berkeley DB</application>
137 in LFS, and you don't add anything to the <command>configure</command>
138 script, you'll end up with exactly what you already have. The additional
139 parameters you can use are listed in the Command Explanations section
140 below.</para> -->
141
142 <note>
143 <para>If you plan on installing <application>Berkeley DB</application>
144 with Java support, you should check the system for certain versions
145 of <xref linkend="jdk"/> and <xref linkend="gmime"/>. Specifically, if
146 <application>JDK</application>-6 Update X and the
147 <command>uudecode</command> program from the
148 <application>GMime</application> program is on the system, the build will
149 fail (unless you run the modified <command>./configure</command> command
150 shown below). You can run two commands (<command>javac -version</command>
151 and <command>uudecode --version</command>) to determine what versions are
152 installed. You can also download and run a shell script from
153 <ulink url="&files-anduin;/jdk-uudecode-check.sh"/> that will alert
154 you to a non-working condition. If the identified programs exist on the
155 system, you must modify the
156 <command>./configure</command> command as shown below.</para>
157
158<screen><userinput>uudecode="no" ../dist/configure --(use the parameters shown below)</userinput></screen>
159 </note>
160
161 <para>Install <application>Berkeley DB</application> by running the
162 following commands:</para>
163
164<screen><userinput>patch -Np0 -i ../patch.&db-version;.1 &amp;&amp;
165patch -Np0 -i ../patch.&db-version;.2 &amp;&amp;
166cd build_unix &amp;&amp;
167../dist/configure --prefix=/usr \
168 --enable-compat185 \
169 --enable-cxx &amp;&amp;
170make</userinput></screen>
171
172 <para>Now, as the <systemitem class="username">root</systemitem> user:</para>
173
174<screen role="root"><userinput>make docdir=/usr/share/doc/db-&db-version; install &amp;&amp;
175chown -v -R root:root \
176 /usr/bin/berkeley_db_svc \
177 /usr/bin/db_* \
178 /usr/include/db{,_185,_cxx}.h \
179 /usr/lib/libdb{{,_cxx}.a,{,_cxx,_java,_tcl}-4.5.{so,a,la}} \
180 /usr/share/doc/db-&db-version;</userinput></screen>
181
182 </sect2>
183
184 <sect2 role="commands">
185 <title>Command Explanations</title>
186
187 <para><command>cd build_unix &amp;&amp;
188 ../dist/configure --prefix=/usr...</command>:
189 This replaces the normal <command>./configure</command> command, as
190 <application>Berkeley DB</application> comes with various
191 build directories for different platforms.</para>
192
193 <para><parameter>--enable-compat185</parameter>: This switch enables
194 building the DB-1.85 compatibility API.</para>
195
196 <para><parameter>--enable-cxx</parameter>: This switch enables building
197 C++ API libraries.</para>
198
199 <para><parameter>--enable-tcl --with-tcl=/usr/lib</parameter>:
200 Enables <application>Tcl</application> support in DB and creates the
201 <filename class="libraryfile">libdb_tcl</filename> libraries.</para>
202
203 <para><parameter>--enable-java</parameter>: Enables
204 <application>Java</application> support in DB and creates the
205 <filename class='libraryfile'>libdb_java</filename> libraries.</para>
206
207 <para><parameter>--enable-rpc</parameter>: Enables building the
208 <application>Berkeley DB</application> RPC server.</para>
209
210 <para><command>make docdir=/usr/share/doc/db-&db-version;
211 install</command>: This installs the documentation in
212 the standard location instead of
213 <filename class='directory'>/usr/docs</filename>.</para>
214
215 <para><command>chown -v -R root:root ...</command>:This command changes
216 the ownership of various installed files from the uid:gid of the
217 builder to root:root.</para>
218
219 </sect2>
220
221 <sect2 role="content">
222 <title>Contents</title>
223
224 <!-- <para>Only the program and libraries not installed in LFS are listed here,
225 the others can be found at <ulink
226 url="&lfs-root;/chapter06/db.html#contents-db"/> as they were initially
227 installed during the building of LFS.</para> -->
228
229 <segmentedlist>
230 <segtitle>Installed Programs</segtitle>
231 <segtitle>Installed Libraries</segtitle>
232 <segtitle>Installed Directory</segtitle>
233
234 <seglistitem>
235 <seg>berkeley_db_svc, db_archive, db_checkpoint, db_deadlock, db_dump,
236 db_load, db_printlog, db_recover, db_stat, db_upgrade, db_verify</seg>
237 <seg>libdb.{so,a}, libdb_cxx.{so,a}, libdb_java.{so,a},
238 libdb_tcl.{so,a} and db.jar</seg>
239 <seg>/usr/share/doc/db-&db-version;</seg>
240 </seglistitem>
241 </segmentedlist>
242
243 <variablelist>
244 <bridgehead renderas="sect3">Short Descriptions</bridgehead>
245 <?dbfo list-presentation="list"?>
246 <?dbhtml list-presentation="table"?>
247
248 <varlistentry id="berkeley_db_svc">
249 <term><command>berkeley_db_svc</command></term>
250 <listitem>
251 <para>is the <application>Berkeley DB</application>
252 RPC server.</para>
253 <indexterm zone="db berkeley_db_svc">
254 <primary sortas="b-berkeley_db_svc">berkeley_db_svc</primary>
255 </indexterm>
256 </listitem>
257 </varlistentry>
258
259 <varlistentry id="db_archive">
260 <term><command>db_archive</command></term>
261 <listitem>
262 <para>prints the pathnames of log files that are no longer in
263 use.</para>
264 <indexterm zone="db db_archive">
265 <primary sortas="b-db_archive">db_archive</primary>
266 </indexterm>
267 </listitem>
268 </varlistentry>
269
270 <varlistentry id="db_checkpoint">
271 <term><command>db_checkpoint</command></term>
272 <listitem>
273 <para>is a daemon process used to monitor and checkpoint database
274 logs.</para>
275 <indexterm zone="db db_checkpoint">
276 <primary sortas="b-db_checkpoint">db_checkpoint</primary>
277 </indexterm>
278 </listitem>
279 </varlistentry>
280
281 <varlistentry id="db_deadlock">
282 <term><command>db_deadlock</command></term>
283 <listitem>
284 <para>is used to abort lock requests when deadlocks are
285 detected.</para>
286 <indexterm zone="db db_deadlock">
287 <primary sortas="b-db_deadlock">db_deadlock</primary>
288 </indexterm>
289 </listitem>
290 </varlistentry>
291
292 <varlistentry id="db_dump">
293 <term><command>db_dump</command></term>
294 <listitem>
295 <para>converts database files to a flat file format readable by
296 <command>db_load</command>.</para>
297 <indexterm zone="db db_dump">
298 <primary sortas="b-db_dump">db_dump</primary>
299 </indexterm>
300 </listitem>
301 </varlistentry>
302
303 <varlistentry id="db_load">
304 <term><command>db_load</command></term>
305 <listitem>
306 <para>is used to create database files from flat files created with
307 <command>db_dump</command>.</para>
308 <indexterm zone="db db_load">
309 <primary sortas="b-db_load">db_load</primary>
310 </indexterm>
311 </listitem>
312 </varlistentry>
313
314 <varlistentry id="db_printlog">
315 <term><command>db_printlog</command></term>
316 <listitem>
317 <para>converts database log files to human readable text.</para>
318 <indexterm zone="db db_printlog">
319 <primary sortas="b-db_printlog">db_printlog</primary>
320 </indexterm>
321 </listitem>
322 </varlistentry>
323
324 <varlistentry id="db_recover">
325 <term><command>db_recover</command></term>
326 <listitem>
327 <para>is used to restore a database to a consistent state after a
328 failure.</para>
329 <indexterm zone="db db_recover">
330 <primary sortas="b-db_recover">db_recover</primary>
331 </indexterm>
332 </listitem>
333 </varlistentry>
334
335 <varlistentry id="db_stat">
336 <term><command>db_stat</command></term>
337 <listitem>
338 <para>displays database environment statistics.</para>
339 <indexterm zone="db db_stat">
340 <primary sortas="b-db_stat">db_stat</primary>
341 </indexterm>
342 </listitem>
343 </varlistentry>
344
345 <varlistentry id="db_upgrade">
346 <term><command>db_upgrade</command></term>
347 <listitem>
348 <para>is used to upgrade database files to a newer version of
349 <application>Berkeley DB</application>.</para>
350 <indexterm zone="db db_upgrade">
351 <primary sortas="b-db_upgrade">db_upgrade</primary>
352 </indexterm>
353 </listitem>
354 </varlistentry>
355
356 <varlistentry id="db_verify">
357 <term><command>db_verify</command></term>
358 <listitem>
359 <para>is used to run consistency checks on database files.</para>
360 <indexterm zone="db db_verify">
361 <primary sortas="b-db_verify">db_verify</primary>
362 </indexterm>
363 </listitem>
364 </varlistentry>
365
366 </variablelist>
367
368 </sect2>
369
370</sect1>
Note: See TracBrowser for help on using the repository browser.