# Главная
# О библиотеке

# Выбор дистрибутива
преимущества Linux/UNIX | основные дистрибутивы | серверный Linux | BSD | LiveCDs | прочее

# Установка и удаление программ
общие вопросы | каталоги софта | специальные случаи

# Настройка и работа
установка, загрузчики | настройка Linux | консоль | файловые системы | процессы | шеллы, русификация, коммандеры | виртуальные машины, эмуляторы

# X Window и оконные менеджеры
настройка X Window | GNOME | KDE | IceWM и др.

# Работа с текстами
редакторы | офис | шрифты, кодировки и русификация | преобразования текстовых файлов | LaTeX, SGML и др. | словари

# Графика
GIMP | фото | обработка изображений | форматы графических файлов

# Сети, администрирование
общие вопросы | Dialup & PPP | брандмауэры | маршрутизация | работа в Windows-сетях | веб-серверы | Apache | прокси-серверы | сетевая печать | прочее

# Программирование
GCC & GNU make | программирование в UNIX | графические библиотеки | Tcl | Perl | PHP | Java & C# | СУБД | CVS | прочее

# Ядро
# Мультимедиа
# Интернет
# Почта
# Безопасность
# Железо
# Разное

# Linux HowTo (как сделать)
# Книги и руководства
# Материалы на английском языке
MySQL The World's Most Popular Open Source Database # Online shop | Site map |  
CompanyProductsSupport & ConsultingTraining & CertificationDownloadsDocumentation
  BooksArticlesMailing ListsPresentationsOther Sites  
Search the MySQL manual:
MySQL Manual
  • 2 Установка MySQL
    • 2.3 Установка исходного дистрибутива MySQL
      • 2.3.1 Обзор быстрой установки
      • 2.3.2 Применение патчей
      • 2.3.3 Типичные опции configure
      • 2.3.4 Установка из экспериментального набора исходных кодов
      • 2.3.5 Проблемы с компиляцией?
      • 2.3.6 Замечания по потокам MIT-pthreads
      • 2.3.7 Дистрибутив исходного кода для Windows

Buy this Reference Manual in softcover from Barnes & Noble!

MySQL Reference Manual
Previous / Next / Up / Table of Contents

2.3.4 Установка из экспериментального набора исходных кодов

Предупреждение: этот раздел необходимо читать только в том случае, если вы хотите помочь нам в тестировании нового кода. Пользователи, которые просто хотят установить MySQL и запустить его на своей системе, должны использовать стандартную версию дистрибутива (либо исходный код, либо бинарный дистрибутив).

Чтобы получить самый последний из разработанных наборов исходных кодов, используйте следующие инструкции:

  1. Загрузите программу BitKeeper с http://www.bitmover.com/cgi-bin/download.cgi. Для доступа к нашему хранилищу вам понадобится версия Bitkeeper 3.0 или более новая.
  2. Выполните инструкции по установке этой программы.
  3. После установки BitKeeper сначала перейдите в каталог, из которого собираетесь работать, затем используйте одну из приведенных ниже команд, для получения желаемой копии ветви MySQL. Чтобы клонировать ветку 3.23:
    shell> bk clone bk://mysql.bkbits.net/mysql-3.23 mysql-3.23
    
    Чтобы клонировать ветку 4.0:
    shell> bk clone bk://mysql.bkbits.net/mysql-4.0 mysql-4.0
    
    Чтобы клонировать ветку 4.1:
    shell> bk clone bk://mysql.bkbits.net/mysql-4.1 mysql-4.1
    
    В предыдущих примерах набор исходных кодов будет установлен в подкаталогах `mysql-3-23/', `mysql-4.0/' или `mysql-4.1/' вашего текущего каталога. Если вы находитесь за брендмауером, и можете только делать HTTP-запросы, вы можете также использовать BitKeeper по HTTP. Если вы используете прокси-сервер, просто установите переменную окружения http_proxy:
    shell> export http_proxy="http://your.proxy.server:8080/"
    
    И теперь просто замените bk:// на http:// когда будете делать клонирование. Например:
    shell> bk clone http://mysql.bkbits.net/mysql-4.1 mysql-4.1
    
    Первоначальная загрузка набора исходных кодов может потребовать времени в зависимости от скорости вашего соединения; будьте терпеливы.
  4. Чтобы запустить следующий набор команд, вам понадобятся программы GNU make, autoconf 2.53 (или новее), automake 1.5, libtool 1.4 и m4. Программа automake 1.7 (или новее) еще не работает. Если вы хотите настроить MySQL 4.1, вам также потребуется bison 1.75. Более старые версии bison могут давать такую ошибку: sql_yacc.yy:#####: fatal error: maximum table size (32767) exceeded. На самом деле максимальный размер таблиц не превышается, как утверждает это сообщение, но просто-напросто такое сообщение есть следствие ошибки в более ранних версиях bison. Типичные команды к выполнению в оболочке:
    cd mysql-4.0
    bk -r get -Sq
    aclocal; autoheader; autoconf; automake
    (cd innobase ; aclocal; autoheader; autoconf; automake) # для InnoDB
    (cd bdb/dist ; sh s_all ) # для Berkeley DB
    ./configure  # Ваши любимые опции здесь
    make
    
    Если вы получаете некие странные сообщения на этом этапе - удостоверьтесь, что у вас действительно стоит libtool! Собрание наших стандартных конфигурационных скриптов находится в подкаталоге `BUILD/'. Если вы предпочитаете наиболее легкий путь, можно использовать скрипт `BUILD/compile-pentium-debug'. При компилировании с использованием другой архитектуры модифицируйте этот скрипт путем удаления флагов, относящихся к Pentium.
  5. После выполнения компиляции запустите make install. Следует проявлять осторожность при работе на машине, находящейся в эксплуатации; данная команда может выполнить установку поверх вашей существующей установленной версии. Если у вас уже установлена иная версия MySQL, мы рекомендуем запускать ./configure со значениями для опций prefix, with-tcp-port и unix-socket-path, отличными от тех, что были использованы для сервера, находящегося в эксплуатации.
  6. Усиленно нагружая свою новую инсталляцию, попытайтесь добиться отказа новых возможностей. Начинайте с запуска make test (see section 9.1.2 Пакет тестирования MySQL).
  7. Если вам удастся дойти до этапа make и дистрибутив не будет компилироваться, просьба сообщить нам об этом по адресу [email protected]. Просьба информировать нас и в том случае, если вы установили последнюю версию требуемых инструментальных средств GNU и они терпят крах при попытке обработать наш конфигурационный файл. Однако если при выполнении aclocal вы получите ошибку command not found или возникнет аналогичная проблема, об этом сообщать не надо. В таком случае следует убедиться, что у вас установлены все необходимые инструментальные программы и что ваша переменная PATH указана правильно, чтобы оболочка могла найти их.
  8. Для того чтобы получить набор исходных кодов после начальной операции bk clone, необходимо периодически запускать bk pull для получения обновлений.
  9. Вы можете изучить историю изменений дерева исходных кодов, чтобы увидеть все отличия в них - для этого следует использовать bk sccstool. При обнаружении каких-либо отличий, которые покажутся вам странными, или кода, по которому возникают вопросы, не раздумывайте - посылайте письмо на [email protected]. Кроме того, если вы считаете, что у вас есть лучшие идеи по разработке, отправьте по тому же адресу сообщение со своим патчем. bk diffs создает патч после внесения изменений в исходный код. Если у вас нет времени написать код, реализующий вашу идею, просто пришлите ее описание.
  10. BitKeeper имеет хорошую вспомогательную программу, которая доступна посредством bk helptool.
  11. Внимание: любой commit (bk ci или bk citool) инициирует постинг сообщения с изменениями в наш внутренний список рассылки (internals). В общем случае, вам не нужно использовать commit (поскольку публично-доступное дерево не допустит bk push), но скорее, метод bk diffs, описанный ранее.

Вы также можете просматривать изменения, комментарии и исходный код в онлайн, например, по адресу http://mysql.bkbits.net:8080/mysql-4.1 для MySQL 4.1.

Руководство находится в отдельном дереве, которое можно клонировать так:

shell> bk clone bk://mysql.bkbits.net/mysqldoc mysqldoc

User Comments

Posted by Martin Mokrejs on Thursday December 5 2002, @4:44pm[Delete] [Edit]

When you see line like:

aclocal: configure.in: 164: macro
`AC_PROG_LIBTOOL' not found in library

as a result from aclocal, make sure you have
installed libtool and that it is really in your
path.

Posted by Martin Mokrejs on Thursday January 30 2003, @3:34am[Delete] [Edit]

In the step 4. should be noted:

bk -r edit

so that the files are writable.

Posted by [email protected] on Tuesday February 4 2003, @1:48am[Delete] [Edit]

The GNU build tools can be found at
http://www.gnu.org/software/autoconf/
http://www.gnu.org/software/automake/
http://www.gnu.org/software/libtool/

Posted by [email protected] on Tuesday February 4 2003, @10:11am[Delete] [Edit]

the sql/share/Makefile makes use of the $^ special variable which is not available in BSD's (at least FreeBSD) implementation of make. Thus, when building on FreeBSD use gmake instead of make.

Posted by Bjoern Kriews on Sunday February 16 2003, @3:29pm[Delete] [Edit]

On Mac OS X (10.2.4) mysql_install_db crashes the server with the message "Got error 22" in time.cc - caused by a pthread_mutex_lock.

I know nothing about pthreads, but

/opt/soft/darwin-ppc-63-prod-200302132305/src/mysql-4.1/sql # bk diffs
===== time.cc 1.27 vs edited =====
37a38,43
> int err;
>
> if( ( err = pthread_mutex_init( &LOCK_timezone, NULL ) ) != 0 ) {
> fprintf(stderr, "could not initialize LOCK_timezone (%d)\n", err);
> exit(1);
> }

in init_time() fixes the problem.

Add your own comment.

Top / Previous / Next / Up / Table of Contents
# MySQL.com home | Site map | Contact us | Press | Jobs | Privacy policy | Trademark info | © 1995-2003 MySQL AB. All rights reserved.