Use the latest production release of MySQL. Should you choose to use an older release of MySQL on UnixWare 7.1.x, you must use a version of MySQL at least as recent as 3.22.13 to get fixes for some portability and OS problems.
We have been able to compile MySQL with the following configure command on UnixWare 7.1.x:
CC="cc" CFLAGS="-I/usr/local/include" \ CXX="CC" CXXFLAGS="-I/usr/local/include" \ ./configure --prefix=/usr/local/mysql \ --enable-thread-safe-client --with-berkeley-db=./bdb \ --with-innodb --with-openssl --with-extra-charsets=complex
If you want to use gcc, you must use gcc 2.95.3 or newer.
CC=gcc CXX=g++ ... ./configure ...
The version of Berkeley DB that comes with either UnixWare
7.1.4 or OpenServer 6.0.0 is not used when building MySQL.
MySQL instead uses its own version of Berkeley DB. The
configure command needs to build both a
static and a dynamic library in
,
but it does not with MySQL's own src_directory
/bdb/build_unix/BDB
version. The workaround is as follows.
Configure as normal for MySQL.
cd bdb/build_unix/
cp -p Makefile Makefile.sav
Use same options and run ../dist/configure.
Run gmake.
cp -p Makefile.sav Makefile
Change to top source directory and run gmake.
This allows both the shared and dynamic libraries to be made and work.
SCO provides operating system patches at ftp://ftp.sco.com/pub/unixware7 for UnixWare 7.1.1, ftp://ftp.sco.com/pub/unixware7/713/ for UnixWare 7.1.3, ftp://ftp.sco.com/pub/unixware7/714/ for UnixWare 7.1.4, and ftp://ftp.sco.com/pub/openunix8 for OpenUNIX 8.0.0.
SCO provides information about security fixes at ftp://ftp.sco.com/pub/security/OpenUNIX for OpenUNIX and ftp://ftp.sco.com/pub/security/UnixWare for UnixWare.
The UnixWare 7 file size limit is 1 TB with VXFS. Some OS utilities have a limitation of 2GB.
On UnixWare 7.1.4 you do not need to do anything to get large file support, but to enable large file support on prior versions of UnixWare 7.1.x, run fsadm.
#fsadm -Fvxfs -o largefiles /
#fsadm /
* Note #ulimit unlimited
#/etc/conf/bin/idtune SFSZLIM 0x7FFFFFFF
** Note #/etc/conf/bin/idtune HFSZLIM 0x7FFFFFFF
** Note #/etc/conf/bin/idbuild -B
* This should report "largefiles". ** 0x7FFFFFFF represents infinity for these values.
Reboot the system using shutdown
.
By default, the entries in
/etc/conf/cf.d/mtune
are set as follows:
Value Default Min Max ----- ------- --- --- SVMMLIM 0x9000000 0x1000000 0x7FFFFFFF HVMMLIM 0x9000000 0x1000000 0x7FFFFFFF
To make changes to the kernel, use the idtune
name parameter
command.
idtune modifies the
/etc/conf/cf.d/stune
file for you. To set
the kernel values, execute the following commands as
root
:
#/etc/conf/bin/idtune SDATLIM 0x7FFFFFFF
#/etc/conf/bin/idtune HDATLIM 0x7FFFFFFF
#/etc/conf/bin/idtune SVMMLIM 0x7FFFFFFF
#/etc/conf/bin/idtune HVMMLIM 0x7FFFFFFF
#/etc/conf/bin/idtune SFNOLIM 2048
#/etc/conf/bin/idtune HFNOLIM 2048
Then rebuild and reboot the kernel by issuing this command:
# /etc/conf/bin/idbuild -B && init 6
To tune the system, the proper parameter values to use depend on the number of users accessing the application or database and size the of the database (that is, the used buffer pool). The following kernel parameters can be set with idtune:
SHMMAX
(recommended setting: 128MB) and
SHMSEG
(recommended setting: 15). These
parameters have an influence on the MySQL database engine
to create user buffer pools.
SFNOLIM
and HFNOLIM
should be at maximum 2048.
NPROC
should be set to at least
3000/4000 (depends on number of users).
The following formulas are recommended to calculate values
for SEMMSL
, SEMMNS
,
and SEMMNU
:
SEMMSL = 13
13 is what has been found to be the best for both Progress and MySQL.
SEMMNS = SEMMSL × number of db servers to be run on the system
Set SEMMNS
to the value of
SEMMSL
multiplied by the number of
database servers (maximum) that you are running on the
system at one time.
SEMMNU = SEMMNS
Set the value of SEMMNU
to equal the
value of SEMMNS
. You could probably set
this to 75% of SEMMNS
, but this is a
conservative estimate.
User Comments
Add your own comment.