old-www/HOWTO/IngresII-HOWTO/sysreq.html

896 lines
14 KiB
HTML

<HTML
><HEAD
><TITLE
>System Requirements</TITLE
><META
NAME="GENERATOR"
CONTENT="Modular DocBook HTML Stylesheet Version 1.63
"><LINK
REL="HOME"
TITLE="Ingres II HOWTO"
HREF="index.html"><LINK
REL="PREVIOUS"
TITLE="Ingres"
HREF="ingres.html"><LINK
REL="NEXT"
TITLE="Preparing for the Installation"
HREF="prep.html"></HEAD
><BODY
CLASS="SECT1"
BGCOLOR="#FFFFFF"
TEXT="#000000"
LINK="#0000FF"
VLINK="#840084"
ALINK="#0000FF"
><DIV
CLASS="NAVHEADER"
><TABLE
WIDTH="100%"
BORDER="0"
CELLPADDING="0"
CELLSPACING="0"
><TR
><TH
COLSPAN="3"
ALIGN="center"
>Ingres II HOWTO</TH
></TR
><TR
><TD
WIDTH="10%"
ALIGN="left"
VALIGN="bottom"
><A
HREF="ingres.html"
>Prev</A
></TD
><TD
WIDTH="80%"
ALIGN="center"
VALIGN="bottom"
></TD
><TD
WIDTH="10%"
ALIGN="right"
VALIGN="bottom"
><A
HREF="prep.html"
>Next</A
></TD
></TR
></TABLE
><HR
ALIGN="LEFT"
WIDTH="100%"></DIV
><DIV
CLASS="SECT1"
><H1
CLASS="SECT1"
><A
NAME="SYSREQ"
>3. System Requirements</A
></H1
><P
>In this section you will see what hardware and software
requirements must be met before you can install
<SPAN
CLASS="APPLICATION"
>Ingres</SPAN
>.
The ingres user, owner of the installation, makes a debut, too.</P
><DIV
CLASS="SECT2"
><H2
CLASS="SECT2"
><A
NAME="HARDWARE"
>3.1. Hardware</A
></H2
><P
>The minimal hardware capable of running <SPAN
CLASS="APPLICATION"
>Ingres</SPAN
>
is:</P
><P
></P
><UL
><LI
><P
>486x33 processor, Pentium recommended.</P
></LI
><LI
><P
>16 Mb <SPAN
CLASS="ACRONYM"
>RAM</SPAN
>, with 32 Mb swap space (64 Mb
<SPAN
CLASS="ACRONYM"
>RAM</SPAN
> recommended).</P
></LI
><LI
><P
>200 Mb disk space if you install everything (150 Mb will do
for the <SPAN
CLASS="ACRONYM"
>SDK</SPAN
>).
You do not need to have this space in one file system: we will discuss
the possibilities in the section <A
HREF="prep.html"
>Preparing for the Installation</A
>.</P
></LI
></UL
><DIV
CLASS="NOTE"
><P
></P
><TABLE
CLASS="NOTE"
WIDTH="100%"
BORDER="0"
><TR
><TD
WIDTH="25"
ALIGN="CENTER"
VALIGN="TOP"
><IMG
SRC="../images/note.gif"
HSPACE="5"
ALT="Note"></TD
><TD
ALIGN="LEFT"
VALIGN="TOP"
><P
>This is the <EM
>minimum</EM
> recommended configuration.
<SPAN
CLASS="APPLICATION"
>Ingres</SPAN
>, like most other <SPAN
CLASS="ACRONYM"
>RDBMSs</SPAN
>,
is a fairly resource-hungry application.
While your development system will probably run beatifully on a 166 MHz
Pentium with 64 Mb <SPAN
CLASS="ACRONYM"
>RAM</SPAN
>, a live system with
potentially many concurrent users would require more iron.</P
></TD
></TR
></TABLE
></DIV
></DIV
><DIV
CLASS="SECT2"
><H2
CLASS="SECT2"
><A
NAME="SOFTWARE"
>3.2. Software</A
></H2
><P
>The following software must be present for
<SPAN
CLASS="APPLICATION"
>Ingres</SPAN
> to run:</P
><P
></P
><UL
><LI
><P
>kernel 2.0.34 or higher.</P
></LI
><LI
><P
>libcrypt.so - this library is not included in every Linux
distribution.
If this is the case with your system, check your distribution's
Web site: they must have it somewhere.</P
></LI
><LI
><P
>uncompress - certain
Linux distributions (such as Caldera's Open Linux 2.2) do not
contain the <SPAN
CLASS="APPLICATION"
>ncompress</SPAN
> package.
Again, check your distribution's Web site if you do not have it.</P
></LI
></UL
><P
>Working glibc versions:</P
><DIV
CLASS="INFORMALTABLE"
><A
NAME="AEN300"
></A
><P
></P
><TABLE
BORDER="1"
CLASS="CALSTABLE"
><THEAD
><TR
><TH
WIDTH="33%"
ALIGN="CENTER"
VALIGN="TOP"
>glibc
</TH
><TH
WIDTH="33%"
ALIGN="CENTER"
VALIGN="TOP"
>SDK
</TH
><TH
WIDTH="33%"
ALIGN="CENTER"
VALIGN="TOP"
>Full Version
</TH
></TR
></THEAD
><TBODY
><TR
><TD
WIDTH="33%"
ALIGN="CENTER"
VALIGN="TOP"
>glibc 2.07 (eg RedHat 5.2)
</TD
><TD
WIDTH="33%"
ALIGN="CENTER"
VALIGN="TOP"
>Yes.
</TD
><TD
WIDTH="33%"
ALIGN="CENTER"
VALIGN="TOP"
>No.
</TD
></TR
><TR
><TD
WIDTH="33%"
ALIGN="CENTER"
VALIGN="TOP"
>glibc 2.1 (eg RedHat 6.0)
</TD
><TD
WIDTH="33%"
ALIGN="CENTER"
VALIGN="TOP"
>Yes but you need the RedHat compatibility packages and an
<SPAN
CLASS="APPLICATION"
>Ingres</SPAN
> patch to be able to use
the forms-based development tools.
See <A
HREF="misc.html#FORMS"
>Forms-Based Development Tools</A
> for details.
</TD
><TD
WIDTH="33%"
ALIGN="CENTER"
VALIGN="TOP"
>Yes.
</TD
></TR
><TR
><TD
WIDTH="33%"
ALIGN="CENTER"
VALIGN="TOP"
>glibc 2.1.1, 2.1.2 (eg RedHat 6.1)
</TD
><TD
WIDTH="33%"
ALIGN="CENTER"
VALIGN="TOP"
>No.
</TD
><TD
WIDTH="33%"
ALIGN="CENTER"
VALIGN="TOP"
>Yes.
</TD
></TR
><TR
><TD
WIDTH="33%"
ALIGN="CENTER"
VALIGN="TOP"
>glibc 2.1.3 (eg RedHat 6.2)
</TD
><TD
WIDTH="33%"
ALIGN="CENTER"
VALIGN="TOP"
>See glibc 2.1.
</TD
><TD
WIDTH="33%"
ALIGN="CENTER"
VALIGN="TOP"
>Yes.
</TD
></TR
></TBODY
></TABLE
><P
></P
></DIV
><P
>If you are unsure of the version of your glibc, check the
<TT
CLASS="FILENAME"
>/lib</TT
> directory:</P
><TABLE
BORDER="0"
BGCOLOR="#E0E0E0"
WIDTH="100%"
><TR
><TD
><FONT
COLOR="#000000"
><PRE
CLASS="PROGRAMLISTING"
># ls -l /lib/libc*so
</PRE
></FONT
></TD
></TR
></TABLE
><P
>The output should be something like:</P
><TABLE
BORDER="1"
BGCOLOR="#E0E0E0"
WIDTH="100%"
><TR
><TD
><FONT
COLOR="#000000"
><PRE
CLASS="SCREEN"
>-rwxr-xr-x ... /lib/libc-2.1.3.so
</PRE
></FONT
></TD
></TR
></TABLE
><P
>The version of my glibc is apparently 2.1.3.</P
><DIV
CLASS="NOTE"
><P
></P
><TABLE
CLASS="NOTE"
WIDTH="100%"
BORDER="0"
><TR
><TD
WIDTH="25"
ALIGN="CENTER"
VALIGN="TOP"
><IMG
SRC="../images/note.gif"
HSPACE="5"
ALT="Note"></TD
><TD
ALIGN="LEFT"
VALIGN="TOP"
><P
>There is no guarantee that if your system meets the above
requirements you will be able to install <SPAN
CLASS="APPLICATION"
>Ingres</SPAN
>
on it.
Sticking to a distribution that is explicitly mentioned in the
release notes of your <SPAN
CLASS="APPLICATION"
>Ingres</SPAN
> version is the
best way to avoid installation problems.</P
></TD
></TR
></TABLE
></DIV
></DIV
><DIV
CLASS="SECT2"
><H2
CLASS="SECT2"
><A
NAME="KERNEL"
>3.3. Kernel Parameters</A
></H2
><P
>The default settings of the Linux kernel are adequate for a
development <SPAN
CLASS="APPLICATION"
>Ingres</SPAN
> environment.
For a live system, however, probably to increase the size of the database
cache(s), you may want to change the built-in value of the
<TT
CLASS="PARAMETER"
><I
>SHMMAX</I
></TT
> parameter.
This parameter sets the maximum size of a shared memory segment.
By default, it is 32 Mb which allows for a somewhat lesser buffer cache.</P
><P
>You have two choices to change the value of <TT
CLASS="PARAMETER"
><I
>SHMMAX</I
></TT
>:
</P
><P
>As root, simply <B
CLASS="COMMAND"
>echo</B
> the new value into
<TT
CLASS="FILENAME"
>/proc/sys/kernel/shmmax</TT
>:</P
><TABLE
BORDER="0"
BGCOLOR="#E0E0E0"
WIDTH="100%"
><TR
><TD
><FONT
COLOR="#000000"
><PRE
CLASS="PROGRAMLISTING"
>#echo 83886080 &#62; /proc/sys/kernel/shmmax
</PRE
></FONT
></TD
></TR
></TABLE
><P
>In the example above, we set the value of <TT
CLASS="PARAMETER"
><I
>SHMMAX</I
></TT
>
to 80 Mb.
The change takes effect immediately but after a reboot, the original value
is restored.</P
><P
>The other possibility is to change <TT
CLASS="PARAMETER"
><I
>SHMMAX</I
></TT
>'s
default value in the kernel source (the relevant header file is
<TT
CLASS="FILENAME"
>/usr/src/linux/include/asm/shmparam.h</TT
> if you have
installed the source).
In this case, you may also have to modify other parameters in the file, then
rebuild the kernel.
I suggest you do it only if you know what you are doing.
For information on how to configure and compile the kernel see
<A
HREF="http://www.linuxdoc.org/HOWTO/Kernel-HOWTO.html"
TARGET="_top"
> The Linux Kernel HOWTO</A
> by Brian Ward.</P
></DIV
><DIV
CLASS="SECT2"
><H2
CLASS="SECT2"
><A
NAME="INGUSER"
>3.4. The ingres User and II_SYSTEM</A
></H2
><P
>We need an account called ingres to install and run
<SPAN
CLASS="APPLICATION"
>Ingres</SPAN
>.
He will own the installed software and only he can perform system
management tasks such as starting and stopping
<SPAN
CLASS="APPLICATION"
>Ingres</SPAN
>.</P
><P
>The ingres user may belong to any group.
In the following example, we will create a separate group for him.</P
><P
>The verified (therefore, recommended) shell for the ingres user is
<B
CLASS="COMMAND"
>bash</B
>.
All examples in this paper apply to this shell.
If you use some other shell (which is probably just as fine),
take into account the differences in syntax.</P
><P
>The binaries, shared libraries, configuration files and
other files which make up the <SPAN
CLASS="APPLICATION"
>Ingres</SPAN
> software,
will be located in a tree structure after installation.
You will set the root of this tree via the shell variable
<TT
CLASS="ENVAR"
>II_SYSTEM</TT
> in the environment of the ingres user (to be exact,
the root directory will be
<TT
CLASS="FILENAME"
>$II_SYSTEM/ingres</TT
>).</P
><P
>If you plan to install the whole software, either the
<SPAN
CLASS="ACRONYM"
>SDK</SPAN
>, or the full version, make sure you have
the following free space under
<TT
CLASS="FILENAME"
>$II_SYSTEM/ingres</TT
>:</P
><DIV
CLASS="INFORMALTABLE"
><A
NAME="AEN371"
></A
><P
></P
><TABLE
BORDER="1"
CLASS="CALSTABLE"
><THEAD
><TR
><TH
WIDTH="50%"
ALIGN="CENTER"
VALIGN="TOP"
>SDK
</TH
><TH
WIDTH="50%"
ALIGN="CENTER"
VALIGN="TOP"
>Full Version
</TH
></TR
></THEAD
><TBODY
><TR
><TD
WIDTH="50%"
ALIGN="CENTER"
VALIGN="TOP"
>70 Mb
</TD
><TD
WIDTH="50%"
ALIGN="CENTER"
VALIGN="TOP"
>90 Mb
</TD
></TR
></TBODY
></TABLE
><P
></P
></DIV
><P
>10 Mb extra free space is needed during installation.</P
><DIV
CLASS="TIP"
><P
></P
><TABLE
CLASS="TIP"
WIDTH="100%"
BORDER="0"
><TR
><TD
WIDTH="25"
ALIGN="CENTER"
VALIGN="TOP"
><IMG
SRC="../images/tip.gif"
HSPACE="5"
ALT="Tip"></TD
><TD
ALIGN="LEFT"
VALIGN="TOP"
><P
>If this is the first time you install
<SPAN
CLASS="APPLICATION"
>Ingres</SPAN
> (I hope you start with the
<SPAN
CLASS="ACRONYM"
>SDK</SPAN
>, not a live system), I suggest you
keep the whole installation (the <SPAN
CLASS="APPLICATION"
>Ingres</SPAN
> software,
databases, backups, sort areas, etc.) in one place so that you can find
every component easily.
If you have at least 150-200 Mb free space under
<TT
CLASS="FILENAME"
>$II_SYSTEM/ingres</TT
>
and you do not plan to create large databases (at least, not
for some time), your system will work without problems.
Should you at any later time run out of space, you will always
have the possibility to relocate some of your databases to other
partitions.</P
></TD
></TR
></TABLE
></DIV
><P
>In the following, I will assume that <TT
CLASS="ENVAR"
>II_SYSTEM</TT
> is set to
<TT
CLASS="FILENAME"
>/opt</TT
>.</P
><P
>Logging in as root, execute the tasks mentioned above:</P
><TABLE
BORDER="0"
BGCOLOR="#E0E0E0"
WIDTH="100%"
><TR
><TD
><FONT
COLOR="#000000"
><PRE
CLASS="PROGRAMLISTING"
># useradd -d /opt/ingres -s /bin/bash ingres
# chmod 755 /opt/ingres
# passwd ingres
</PRE
></FONT
></TD
></TR
></TABLE
><P
>The <B
CLASS="COMMAND"
>useradd</B
> command creates a group with the same
name as the new user if you do not specify the group on the command line.
It also creates the user's home directory.</P
><P
>We set the home directory of ingres to
<TT
CLASS="FILENAME"
>/opt/ingres</TT
>
(<TT
CLASS="FILENAME"
>$II_SYSTEM/ingres</TT
>).
This is not mandatory but convenient.
</P
><P
>Finally, append the following lines to the <TT
CLASS="FILENAME"
>.bashrc</TT
>
file of ingres:</P
><TABLE
BORDER="0"
BGCOLOR="#E0E0E0"
WIDTH="100%"
><TR
><TD
><FONT
COLOR="#000000"
><PRE
CLASS="PROGRAMLISTING"
>umask 022
export II_SYSTEM=/opt
export PATH=$II_SYSTEM/ingres/bin:$II_SYSTEM/ingres/utility:$PATH
export LD_LIBRARY_PATH=/lib:/usr/lib:$II_SYSTEM/ingres/lib
export ING_EDIT=/bin/vi
if [ -n "$DISPLAY" ]
then
export TERM_INGRES=vt100fx
else
export TERM_INGRES=vt100f
fi
</PRE
></FONT
></TD
></TR
></TABLE
><P
><TT
CLASS="ENVAR"
>ING_EDIT</TT
> sets the editor that can be called from
<SPAN
CLASS="APPLICATION"
>Ingres</SPAN
> utilities or application programs.
Naturally, you can use any editor, not just <B
CLASS="COMMAND"
>vi</B
>.
You must, however, specify the whole access path to the program.
(If you stick to <B
CLASS="COMMAND"
>vi</B
>, check if it is under
<TT
CLASS="FILENAME"
>/bin</TT
>: it may be somewhere else
in your system.)</P
><DIV
CLASS="NOTE"
><P
></P
><TABLE
CLASS="NOTE"
WIDTH="100%"
BORDER="0"
><TR
><TD
WIDTH="25"
ALIGN="CENTER"
VALIGN="TOP"
><IMG
SRC="../images/note.gif"
HSPACE="5"
ALT="Note"></TD
><TD
ALIGN="LEFT"
VALIGN="TOP"
><P
>If the <TT
CLASS="ENVAR"
>EDITOR</TT
> shell variable is set, it overrides
the value of <TT
CLASS="ENVAR"
>ING_EDIT</TT
>.</P
></TD
></TR
></TABLE
></DIV
><P
>Setting <TT
CLASS="ENVAR"
>TERM_INGRES</TT
> is necessary for the terminal to
work properly.
Forms-based <SPAN
CLASS="APPLICATION"
>Ingres</SPAN
> utilities, such as the
installer itself, and also applications created with traditional
<SPAN
CLASS="APPLICATION"
>Ingres</SPAN
> development tools
(<SPAN
CLASS="ACRONYM"
>ABF</SPAN
>, Vision) make heavy use of function keys.
The <TT
CLASS="FILENAME"
>.bashrc</TT
> above sets <TT
CLASS="ENVAR"
>TERM_INGRES</TT
>
according to the terminal type (X, or VT100-like).</P
><P
>These settings must be included in the <TT
CLASS="FILENAME"
>.bashrc</TT
>
file of every <SPAN
CLASS="APPLICATION"
>Ingres</SPAN
> user.</P
></DIV
></DIV
><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
WIDTH="100%"><TABLE
WIDTH="100%"
BORDER="0"
CELLPADDING="0"
CELLSPACING="0"
><TR
><TD
WIDTH="33%"
ALIGN="left"
VALIGN="top"
><A
HREF="ingres.html"
>Prev</A
></TD
><TD
WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
HREF="index.html"
>Home</A
></TD
><TD
WIDTH="33%"
ALIGN="right"
VALIGN="top"
><A
HREF="prep.html"
>Next</A
></TD
></TR
><TR
><TD
WIDTH="33%"
ALIGN="left"
VALIGN="top"
>Ingres</TD
><TD
WIDTH="34%"
ALIGN="center"
VALIGN="top"
>&nbsp;</TD
><TD
WIDTH="33%"
ALIGN="right"
VALIGN="top"
>Preparing for the Installation</TD
></TR
></TABLE
></DIV
></BODY
></HTML
>