2.12.5.9. SCO OpenServer 6.0.x Notes
OpenServer 6 includes these key improvements:
Larger file support up to 1 TB
Multiprocessor support increased from 4 to 32 processors
Increased memory support up to 64GB
Extending the power of UnixWare into OpenServer 6
Dramatic performance improvement
OpenServer 6.0.0 commands are organized as follows:
/bin
is for commands that behave
exactly the same as on OpenServer 5.0.x.
/u95/bin
is for commands that have
better standards conformance, for example Large File
System (LFS) support.
/udk/bin
is for commands that behave
the same as on UnixWare 7.1.4. The default is for the LFS
support.
The following is a guide to setting PATH on OpenServer 6. If
the user wants the traditional OpenServer 5.0.x then
PATH
should be /bin
first. If the user wants LFS support then the path should be
/u95/bin:/bin
. If the user want UnixWare
7 support first then the path would be
/udk/bin:/u95/bin:/bin:
.
We recommend using the latest production release of MySQL.
We have been able to compile MySQL with the following
configure command on OpenServer 6.0.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 \
--enable-readline
If you want to use gcc, you must use
gcc 2.95.3 or newer.
CC=gcc CXX=g++ ./configure --prefix=/usr/local/mysql
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
src_directory
/bdb/build_unix/
,
but it does not with MySQL's own BDB
version. The workaround is as follows.
Configure as normal for MySQL.
cd bdb/build_unix/
cp -p Makefile to 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. OpenServer 6.0.0 also needs patches to the MySQL
source tree and the patch for
config.guess
applied to
bdb/dist/config.guess
. You can download
the patches from
ftp://ftp.zenez.com/pub/zenez/prgms/mysql-4.1.12-osr6-patches.tar.gz
and from
ftp://ftp.zenez.com/pub/zenez/prgms/mysql-4.x.x-osr6-patches.
There is a README
file there to assist.
SCO provides OpenServer 6 operating system patches at
ftp://ftp.sco.com/pub/openserver6.
SCO provides information about security fixes at
ftp://ftp.sco.com/pub/security/OpenServer.
By default, the maximum file size on a OpenServer 6.0.0 system
is 1TB. Some operating system utilities have a limitation of
2GB. The maximum possible file size on UnixWare 7 is 1TB with
VXFS or HTFS.
By default, the entries in
/etc/conf/cf.d/mtune
are set to:
Value Default Min Max
----- ------- --- ---
SVMMLIM 0x9000000 0x1000000 0x7FFFFFFF
HVMMLIM 0x9000000 0x1000000 0x7FFFFFFF
SSTKLIM 0x1000000 0x2000 0x7FFFFFFF
HSTKLIM 0x1000000 0x2000 0x7FFFFFFF
We recommend setting these values as follows:
SDATLIM 0x7FFFFFFF
HDATLIM 0x7FFFFFFF
SSTKLIM 0x7FFFFFFF
HSTKLIM 0x7FFFFFFF
SVMMLIM 0x7FFFFFFF
HVMMLIM 0x7FFFFFFF
SFNOLIM 2048
HFNOLIM 2048
We recommend tuning the system, but 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 affects the kernel
parameters defined in
/etc/conf/cf.d/stune
:
SHMMAX
(recommended setting: 128MB) and
SHMSEG
(recommended setting: 15). These
parameters have 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).
Also is recommended to use following formula to count value
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 db
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.