Предупреждение: этот раздел необходимо читать только в том случае, если вы хотите помочь нам в тестировании нового кода. Пользователи, которые просто хотят установить MySQL и запустить его на своей системе, должны использовать стандартную версию дистрибутива (либо исходный код, либо бинарный дистрибутив).
Чтобы получить самый последний из разработанных наборов исходных кодов, используйте следующие инструкции:
Загрузите программу
BitKeeper
с https://www.bitmover.com/cgi-bin/download.cgi. Для доступа к нашему хранилищу вам понадобится версияBitkeeper
3.0 или более новая.Выполните инструкции по установке этой программы.
-
После установки
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="https://your.proxy.server:8080/"
И теперь просто замените
bk://
наhttps://
когда будете делать клонирование. Например:shell> bk clone https://mysql.bkbits.net/mysql-4.1 mysql-4.1
Первоначальная загрузка набора исходных кодов может потребовать времени в зависимости от скорости вашего соединения; будьте терпеливы.
-
Чтобы запустить следующий набор команд, вам понадобятся программы 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. После выполнения компиляции запустите
make install
. Следует проявлять осторожность при работе на машине, находящейся в эксплуатации; данная команда может выполнить установку поверх вашей существующей установленной версии. Если у вас уже установлена иная версия MySQL, мы рекомендуем запускать./configure
со значениями для опцийprefix
,with-tcp-port
иunix-socket-path
, отличными от тех, что были использованы для сервера, находящегося в эксплуатации.Усиленно нагружая свою новую инсталляцию, попытайтесь добиться отказа новых возможностей. Начинайте с запуска
make test
(see Раздел 9.1.2, «Пакет тестирования MySQL»).Если вам удастся дойти до этапа
make
и дистрибутив не будет компилироваться, просьба сообщить нам об этом по адресу<[email protected]>
. Просьба информировать нас и в том случае, если вы установили последнюю версию требуемых инструментальных средств GNU и они терпят крах при попытке обработать наш конфигурационный файл. Однако если при выполненииaclocal
вы получите ошибкуcommand not found
или возникнет аналогичная проблема, об этом сообщать не надо. В таком случае следует убедиться, что у вас установлены все необходимые инструментальные программы и что ваша переменнаяPATH
указана правильно, чтобы оболочка могла найти их.Для того чтобы получить набор исходных кодов после начальной операции
bk clone
, необходимо периодически запускатьbk pull
для получения обновлений.Вы можете изучить историю изменений дерева исходных кодов, чтобы увидеть все отличия в них - для этого следует использовать
bk sccstool
. При обнаружении каких-либо отличий, которые покажутся вам странными, или кода, по которому возникают вопросы, не раздумывайте - посылайте письмо на<[email protected]>
. Кроме того, если вы считаете, что у вас есть лучшие идеи по разработке, отправьте по тому же адресу сообщение со своим патчем.bk diffs
создает патч после внесения изменений в исходный код. Если у вас нет времени написать код, реализующий вашу идею, просто пришлите ее описание.BitKeeper имеет хорошую вспомогательную программу, которая доступна посредством
bk helptool
.Внимание: любой commit (
bk ci
илиbk citool
) инициирует постинг сообщения с изменениями в наш внутренний список рассылки (internals). В общем случае, вам не нужно использовать commit (поскольку публично-доступное дерево не допуститbk push
), но скорее, методbk diffs
, описанный ранее.
Вы также можете просматривать изменения, комментарии и исходный код в онлайн, например, по адресу https://mysql.bkbits.net:8080/mysql-4.1 для MySQL 4.1.
Руководство находится в отдельном дереве, которое можно клонировать так:
shell> bk clone bk://mysql.bkbits.net/mysqldoc mysqldoc