DOC HOME SITE MAP MAN PAGES GNU INFO SEARCH PRINT BOOK
 

(mysql.info.gz) SCO

Info Catalog (mysql.info.gz) SGI-Irix (mysql.info.gz) Other Unix Notes (mysql.info.gz) SCO UnixWare
 
 2.12.5.8 SCO Notes
 ..................
 
 The current port is tested only on "sco3.2v5.0.5," "sco3.2v5.0.6," and
 "sco3.2v5.0.7" systems. There has also been a lot of progress on a port
 to "sco 3.2v4.2."  Open Server 5.0.8(Legend) will have native threads
 and allow files greater than 2GB.  The current maximum file size is 2GB.
 
 We have been able to compile MySQL with the following `configure'
 command on OpenServer with `gcc' 2.95.3.
 
      CC=gcc CXX=gcc ./configure --prefix=/usr/local/mysql \
          --enable-thread-safe-client --with-innodb \
          --with-openssl --with-vio --with-extra-charsets=complex
 
 `gcc' is available at
 `ftp://ftp.sco.com/pub/openserver5/opensrc/gnutools-5.0.7Kj'.
 
 This development system requires the OpenServer Execution Environment
 Supplement oss646B on OpenServer 5.0.6 and oss656B and The OpenSource
 libraries found in gwxlibs.  All OpenSource tools are in the `opensrc'
 directory.  They are available at
 `ftp://ftp.sco.com/pub/openserver5/opensrc/'.
 
 We recommend using the latest production release of MySQL.
 
 SCO provides operating system patches at
 `ftp://ftp.sco.com/pub/openserver5' for OpenServer 5.0.[0-6] and
 `ftp://ftp.sco.com/pub/openserverv5/507' for OpenServer 5.0.7.
 
 SCO provides information about security fixes at
 `ftp://ftp.sco.com/pub/security/OpenServer' for OpenServer 5.0.x.
 
 The maximum file size on an OpenSever 5.0.x system is 2GB.
 
 The total memory which could be allocated for streams buffers, clists
 and lock records cannot exceed 60MB on OpenServer 5.0.x.
 
 Streams buffers are allocated in units of 4096 byte pages, clists are 70
 bytes each, and lock records are 64 bytes each, so:
 
      (NSTRPAGES * 4096) + (NCLIST * 70) + (MAX_FLCKREC * 64) <= 62914560
 
 Follow this procedure to configure the Database Services option. If you
 are unsure whether an application requires this, see the documentation
 provided with the application.
 
   1. Log in as `root'.
 
   2. Enable the SUDS driver by editing the `/etc/conf/sdevice.d/suds'
      file.  Change the `N' in the second field to a `Y'.
 
   3. Use `mkdev aio' or the Hardware/Kernel Manager to enable support
      for asynchronous I/O and relink the kernel. To allow users to lock
      down memory for use with this type of I/O, update the
      aiomemlock(F) file. This file should be updated to include the
      names of users that can use AIO and the maximum amounts of memory
      they can lock down.
 
   4. Many applications use setuid binaries so that you need to specify
      only a single user. See the documentation provided with the
      application to see if this is the case for your application.
 
 After you complete this process, reboot the system to create a new
 kernel incorporating these changes.
 
 By default, the entries in `/etc/conf/cf.d/mtune' are set as follows:
 
      Value           Default         Min             Max
      -----           -------         ---             ---
      NBUF            0               24              450000
      NHBUF           0               32              524288
      NMPBUF          0               12              512
      MAX_INODE       0               100             64000
      MAX_FILE        0               100             64000
      CTBUFSIZE       128             0               256
      MAX_PROC        0               50              16000
      MAX_REGION      0               500             160000
      NCLIST          170             120             16640
      MAXUP           100             15              16000
      NOFILES         110             60              11000
      NHINODE         128             64              8192
      NAUTOUP         10              0               60
      NGROUPS         8               0               128
      BDFLUSHR        30              1               300
      MAX_FLCKREC     0               50              16000
      PUTBUFSZ        8000            2000            20000
      MAXSLICE        100             25              100
      ULIMIT          4194303         2048            4194303
      * Streams Parameters
      NSTREAM         64              1               32768
      NSTRPUSH        9               9               9
      NMUXLINK        192             1               4096
      STRMSGSZ        16384           4096            524288
      STRCTLSZ        1024            1024            1024
      STRMAXBLK       524288          4096            524288
      NSTRPAGES       500             0               8000
      STRSPLITFRAC    80              50              100
      NLOG            3               3               3
      NUMSP           64              1               256
      NUMTIM          16              1               8192
      NUMTRW          16              1               8192
      * Semaphore Parameters
      SEMMAP          10              10              8192
      SEMMNI          10              10              8192
      SEMMNS          60              60              8192
      SEMMNU          30              10              8192
      SEMMSL          25              25              150
      SEMOPM          10              10              1024
      SEMUME          10              10              25
      SEMVMX          32767           32767           32767
      SEMAEM          16384           16384           16384
      * Shared Memory Parameters
      SHMMAX          524288          131072          2147483647
      SHMMIN          1               1               1
      SHMMNI          100             100             2000
      FILE            0               100             64000
      NMOUNT          0               4               256
      NPROC           0               50              16000
      NREGION         0               500             160000
 
 We recommend setting these values as follows:
 
 `NOFILES' should be 4096 or 2048.
 
 `MAXUP' should be 2048.
 
 To make changes to the kernel, `cd' to `/etc/conf/bin' and use
 `./idtune' NAME PARAMETER to make the changes. For example, to change
 `SEMMS' to `200', execute these commands as `root':
 
      # cd /etc/conf/bin
      # ./idtune SEMMNS 200
 
 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
 will affect the following 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.
 
 `NOFILES' and `MAXUP' should be at to at least 2048.
 
 `MAXPROC' should be set to at least 3000/4000 (depends on number of
 users) or more.
 
 Also is recommended to use following formula to count value for
 `SEMMSL', `SEMMNS' and `SEMMNU':
 
      SEMMSL = 13
 
 The 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 will be 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.
 
 You need to at least install the "SCO OpenServer Linker and Application
 Development Libraries" or the OpenServer Development System to use
 `gcc'.  You cannot just use the GCC Dev system without installing one
 of these.
 
 You should get the FSU Pthreads package and install it first. This can
 be found at
 `http://moss.csc.ncsu.edu/~mueller/ftp/pub/PART/pthreads.tar.gz'.  You
 can also get a precompiled package from
 `ftp://ftp.zenez.com/pub/zenez/prgms/FSU-threads-3.14.tar.gz'.
 
 FSU Pthreads can be compiled with SCO Unix 4.2 with tcpip, or using
 OpenServer 3.0 or Open Desktop 3.0 (OS 3.0 ODT 3.0) with the SCO
 Development System installed using a good port of GCC 2.5.x. For ODT or
 OS 3.0, you will need a good port of GCC 2.5.x. There are a lot of
 problems without a good port. The port for this product requires the
 SCO Unix Development system. Without it, you are missing the libraries
 and the linker that is needed.  You will also need
 `SCO-3.2v4.2-includes.tar.gz'. This file contains the changes to the
 SCO Development include files that are needed to get MySQL to build.
 You need to replace the existing system include files with these
 modified header files.  They can be obtained from
 `ftp://ftp.zenez.com/pub/zenez/prgms/SCO-3.2v4.2-includes.tar.gz'.
 
 To build FSU Pthreads on your system, all you should need to do is run
 GNU `make'.  The `Makefile' in FSU-threads-3.14.tar.gz is set up to
 make FSU-threads.
 
 You can run `./configure' in the `threads/src' directory and select the
 SCO OpenServer option. This command copies `Makefile.SCO5' to
 `Makefile'.  Then run `make'.
 
 To install in the default `/usr/include' directory, log in as `root',
 then `cd' to the `thread/src' directory and run `make install'.
 
 Remember that you must use GNU `make' when making MySQL.
 
 * If you don't start `mysqld_safe' as `root', you probably will
 get only the default 110 open files per process. `mysqld' will write a
 note about this in the log file.
 
 With SCO 3.2V4.2, you should use FSU Pthreads version 3.14 or newer.
 The following `configure' command should work:
 
      CFLAGS="-D_XOPEN_XPG4" CXX=gcc CXXFLAGS="-D_XOPEN_XPG4" \
      ./configure \
          --prefix=/usr/local/mysql \
          --with-named-thread-libs="-lgthreads -lsocket -lgen -lgthreads" \
          --with-named-curses-libs="-lcurses"
 
 You may get some problems with some include files. In this case, you can
 find new SCO-specific include files at
 `ftp://ftp.zenez.com/pub/zenez/prgms/SCO-3.2v4.2-includes.tar.gz'.
 
 You should unpack this file in the `include' directory of your MySQL
 source tree.
 
 SCO development notes:
 
    bullet MySQL should automatically detect FSU Pthreads and link
      `mysqld' with `-lgthreads -lsocket -lgthreads'.
 
    bullet The SCO development libraries are re-entrant in FSU Pthreads.
      SCO claims that its library functions are re-entrant, so they must
      be re-entrant with FSU Pthreads. FSU Pthreads on OpenServer tries
      to use the SCO scheme to make re-entrant libraries.
 
    bullet FSU Pthreads (at least the version at `ftp::/ftp.zenez.com')
      comes linked with GNU `malloc'. If you encounter problems with
      memory usage, make sure that `gmalloc.o' is included in
      `libgthreads.a' and `libgthreads.so'.
 
    bullet In FSU Pthreads, the following system calls are
      pthreads-aware: `read()', `write()', `getmsg()', `connect()',
      `accept(),' `select()', and `wait()'.
 
    bullet The CSSA-2001-SCO.35.2 (the patch is listed in custom as
      erg711905-dscr_remap security patch (version 2.0.0)) breaks FSU
      threads and makes `mysqld' unstable. You have to remove this one
      if you want to run `mysqld' on an OpenServer 5.0.6 machine.
 
    bullet SCO provides operating system patches at
      `ftp://ftp.sco.com/pub/openserver5' for OpenServer 5.0.x.
 
    bullet SCO provides security fixes and `libsocket.so.2' at
      `ftp://ftp.sco.com/pub/security/OpenServer' and
      `ftp://ftp.sco.com/pub/security/sse' for OpenServer 5.0.x.
 
    bullet Pre-OSR506 security fixes. Also, the `telnetd' fix at
      `ftp://stage.caldera.com/pub/security/openserver/' or
      `ftp://stage.caldera.com/pub/security/openserver/CSSA-2001-SCO.10/'
      as both `libsocket.so.2' and `libresolv.so.1' with instructions for
      installing on pre-OSR506 systems.
 
      It's probably a good idea to install these patches before trying
      to compile/use MySQL.
 
 
 Beginning with Legend, OpenServer will have native threads and no 2GB
 file size limit.
 
Info Catalog (mysql.info.gz) SGI-Irix (mysql.info.gz) Other Unix Notes (mysql.info.gz) SCO UnixWare
automatically generated byinfo2html