Справочное руководство по MySQL версии 4.1.1-alpha

       

Примечания к SGI Irix


При использовании Irix 6.5.3 или выше mysqld может создавать потоки только в случае, если он запущен от имени пользователя с привилегиями CAP_SCHED_MGT (подобными тем, что у root) или если такие привилегии даются серверу mysqld следующей командой:

shell> chcap "CAP_SCHED_MGT+epi" /opt/mysql/libexec/mysqld

Возможно, вам придется убрать некоторые определения из `config.h'. Это делается после выполнения configure, но до компиляции.

В некоторых реализациях Irix неправильно реализована функция alloca(). Если сервер mysqld аварийно завершает работу при выполнении некоторых выражений SELECT, удалите из `config.h' строки, в которых определяются HAVE_ALLOC и HAVE_ALLOCA_H. Если не работает mysqladmin create, удалите из `config.h' строку, определяющую HAVE_READDIR_R. Можно также удалить строку, содержащую HAVE_TERM_H.

SGI рекомендует установить все патчи, как указано на странице

http://support.sgi.com/surfzone/patches/patchset/6.2_indigo.rps.html.

Вам следует, как минимум, установить последние обновления (rollup) ядра, последние обновления rld и последние обновления libc.

Для поддержки pthreads обязательно следует установить все патчи POSIX со страницы:

http://support.sgi.com/surfzone/patches/patchset/6.2_posix.rps.html

Если при компиляции `mysql.cc' вы получили сообщение об ошибке наподобие:

"/usr/include/curses.h", line 82: error(1084): invalid combination of type

то необходимо выполнить следующие команды в каталоге верхнего уровня дерева каталогов исходных текстов MySQL:

shell> extra/replace bool curses_bool < /usr/include/curses.h \ > include/curses.h shell> make

Мы получали также сообщения о проблемах управления. Если выполняется только один поток, то работа идет очень медленно. Однако если запустить еще одну программу-клиент, то можно получить ускорение в несколько раз (от двукратного до десятикратного соответственно) и для других потоков. Причины описанной проблемы с потоками в Irix пока неясны; возможно, вам удастся найти временное решение, пока она не будет решена.

При компиляции с помощью gcc можно использовать следующую команду configure:

CC=gcc CXX=gcc CXXFLAGS=-O3 \ ./configure --prefix=/usr/local/mysql --enable-thread-safe-client \ --with-named-thread-libs=-lpthread

Сообщают, что для Irix 6.5.11 с собственными Irix C и C++ компиляторами версии 7.3.1.2, должно работать:

CC=cc CXX=CC CFLAGS='-O3 -n32 -TARG:platform=IP22 -I/usr/local/include \ -L/usr/local/lib' CXXFLAGS='-O3 -n32 -TARG:platform=IP22 \ -I/usr/local/include -L/usr/local/lib' ./configure \ --prefix=/usr/local/mysql --with-innodb --with-berkeley-db \ --with-libwrap=/usr/local \ --with-named-curses-libs=/usr/local/lib/libncurses.a



Содержание раздела