Связь и интернет Архив Программирование
   
Сделать стартовойСделать закладку            
   ПОИСК  
   
Главная / MySQL / Установка MySQL /
8  Perl
8  PHP
8  JavaScript
8  HTML
8  DHTML
8  XML
8  CSS
8  C / C++
8  Pascal и Delphi
8  Турбо Ассемблер
8  MySQL
8  CASE-технологии
8  Алгоритмы
8  Python
8  Обратная связь
8  Гостевая книга
Новости о мире


Установка исходного дистрибутива MySQL - Программирование от RIN.RU
Установка исходного дистрибутива MySQL



Замечания по потокам MIT-pthreads


В этом разделе описываются некоторые аспекты использования потоков MIT-pthreads.


Следует иметь в виду, что под Linux использовать потоки MIT-pthreads нельзя, для этого необходимо установить LinuxThreads! See section 2.6.1 Примечания к Linux (Все версии Linux).


Если ваша система сама по себе не обеспечивает поддержку потоков, то необходимо скомпоновать MySQL, используя пакет поддержки MIT-pthreads. К таким системам относятся старые системы FreeBSD, SunOS 4.x, Solaris 2.4 и более ранние, а также некоторые другие (см. раздел Операционные системы, поддерживаемые MySQL).


Заметьте, с версии MySQL 4.0.2 потоки MIT более не присутствуют в поставке исходных текстов. Если вам действительно нужен этот пакет, вы можете его забрать с http://www.mysql.com/Downloads/Contrib/pthreads-1_60_beta6-mysql.tar.gz


После загрузки, распакуйте этот архив в каталог исходных текстов MySQL. Создастся новый каталог mit-pthreads.


  • Для большинства систем можно обеспечить использование потоков MIT-pthreads при помощи запуска configure с опцией --with-mit-threads:


    shell> ./configure --with-mit-threads


    При использовании потоков MIT-pthreads не поддерживается возможность сборки MySQL в каталоге, не содержащем исходный код, поскольку мы хотим
    минимизировать наши изменения в данном коде.

  • Проверки, определяющие, используются ли потоки MIT-pthreads, производятся только во время этапа конфигурационного процесса, относящегося к серверному коду. Если дистрибутив сконфигурирован с использованием --without-server для сборки только клиентского кода, то клиенты не будут знать, применяются ли потоки MIT-pthreads, и будут использовать подключения через сокеты Unix по умолчанию. Поскольку сокеты Unix не работают с потоками MIT-pthreads на некоторых платформах, то при запуске клиентских программ следует использовать -h или --host.

  • При компиляции MySQL с использованием потоков MIT-pthreads блокирование системы отключено по умолчанию из соображений производительности. Можно предписать серверу использовать системную блокировку с помощью опции --use-external-locking. Это только необходимо если вы собираетесь использовать два MySQL-сервера на одних и тех же файлах данных (не рекомендуется!).

  • Иногда потоковой команде bind() не удается подсоединить сокет без какого-либо сообщения об ошибке (по крайней мере, под Solaris). В результате все подключения к серверу обрываются. Например:


    shell> mysqladmin version
    mysqladmin: connect to server at "" failed;
    error: "Can"t connect to mysql server on localhost (146)"


    Для решения этой проблемы следует завершить выполнение сервера mysqld и перезапустить его. У нас это происходило только в тех случаях, когда мы прерывали работу сервера и сразу же снова его запускали.

  • При использовании потоков MIT-pthreads системный вызов функции sleep() не прерывается с помощью SIGINT (break). Это заметно только в том случае, если запускать mysqladmin --sleep. Следует ждать окончания работы sleep(), прежде чем прерывание будет обслужено и процесс завершит работу.

  • При линковании можно получить предупреждающие сообщения, подобные приведенным ниже (по крайней мере под Solaris); их можно игнорировать:


    ld: warning: symbol `_iob" has differing sizes:
    (file /my/local/pthreads/lib/libpthread.a(findfp.o) value=0x4;
    file /usr/lib/libc.so value=0x140);
    /my/local/pthreads/lib/libpthread.a(findfp.o) definition taken
    ld: warning: symbol `__iob" has differing sizes:
    (file /my/local/pthreads/lib/libpthread.a(findfp.o) value=0x4;
    file /usr/lib/libc.so value=0x140);
    /my/local/pthreads/lib/libpthread.a(findfp.o) definition taken


  • Некоторые другие предупреждения также можно игнорировать:


    implicit declaration of function `int strtoll(...)"
    implicit declaration of function `int strtoul(...)"


  • Нам не удалось добиться совместной работы readline с потоками MIT-pthreads (это не является необходимым, но для кого-то может
    представлять интерес).




Дистрибутив исходного кода для Windows


Вам потребуются следующие средства:


  • Компилятор VC++ 6.0 (усовершенствованный с помощью служебных пакетов 4 SP или 5 SP и пакета предварительной обработки) Пакет предварительной
    обработки необходим для макроассемблера. Более подробная информация находится на: http://msdn.microsoft.com/vstudio/sp/vs6sp5/faq.asp.

  • Дистрибутив исходного кода MySQL для Windows, который может быть загружен с http://www.mysql.com/downloads/.




Сборка MySQL


  1. Создайте рабочий каталог (т.е. workdir).

  2. Распакуйте дистрибутив исходного кода в вышеупомянутом каталоге.

  3. Запустите компилятор VC++ 6.0.

  4. В меню File выберите Open Workspace.

  5. Откройте рабочую область mysql.dsw, находящуюся в рабочем каталоге.

  6. В меню Build выберите подменю Set Active Configuration.

  7. Выберите в появившемся окне mysqld - Win32 Debug и нажмите OK.

  8. Нажмите клавишу F7, чтобы начать процесс построения отладочных версий сервера, библиотек и некоторых клиентских приложений.

  9. По окончании компиляции скопируйте библиотеки и исполняемые файлы в отдельный каталог.

  10. Тем же способом скомпилируйте рабочие версии (релизы), которые вам нужны.

  11. Создайте каталог для всего, что нужно MySQL, т.е. "c:\mysql"

  12. Из каталога workdir скопируйте в каталог "c:\mysql" следующие подкаталоги:


    • Data (данные)

    • Docs (документация)

    • Share (совместно используемые ресурсы)


  13. Создайте каталог "c:\mysql\bin" и скопируйте в него все скомпилированные перед этим серверы и клиенты.

  14. При желании можете также создать каталог `lib" и скопировать в него скомпилированные ранее библиотеки.

  15. Произведите очистку, используя Visual Studio.
    Установите и запустите сервер тем же способом, что и для бинарного дистрибутива для Windows (см. раздел Подготовка конфигурации MySQL для Windows).


<<<  Назад
 1  2  3  4  5 


 8  Комментарии к статье  8 8  Обсудить в чате

8  В тему

Быстрая стандартная установка MySQL

Общие вопросы инсталляции

Послеустановочные настройка и тестирование

Апгрейд/даунгрейд MySQL

Заметки по операционным системам

Замечания по установке Perl

 
  
  
    Copyright ©  RIN 2003 - 2004      * Обратная связь