Atención: Se debe leer esta sección únicamente si se está interesado en colaborar con MySQL AB en la prueba de código nuevo. Si solamente se desea obtener MySQL para ejecutarlo en un sistema, se debe emplear una distribución estándar (ya sea binaria o de código fuente).
Para obtener el directorio de desarrollo más reciente, se deben seguir estas instrucciones:
Descargar el cliente gratuito BitKeeper desde http://www.bitmover.com/bk-client.shar.
En Unix, instalar el cliente gratuito de esta manera:
shell> sh bk-client.shar shell> cd bk_client-1.1 shell> make all shell> PATH=$PWD:$PATH
En Windows, instalarlo de esta manera:
Descargar e instalar Cygwin desde http://cygwin.com.
                Asegurarse de que gcc fue instalado
                bajo Cygwin. Esto se comprueba emitiendo which
                gcc. Si no está instalado, ejecutar el gestor
                de paquetes (package manager) de Cygwin, seleccionar
                gcc, e instalarlo.
              
Bajo Cygwin, llevar a cabo estos pasos:
shell> sh bk-client.shar shell> cd bk_client-1.1
                Luego, editar el fichero Makefile y
                modificar la línea que lee $(CC) $(CFLAGS) -o
                sfio -lz sfio.c para que quede así:
              
$(CC) $(CFLAGS) -o sfio sfio.c -lz
Ejecutar el comando make y establecer la ruta:
shell> make all shell> PATH=$PWD:$PATH
Después que el cliente gratuito BitKeeper se haya instalado, dirigirse en primer lugar al directorio desde donde se desea trabajar y utilizar el siguiente comando para hacer una copia local de la rama de MySQL 5.0:
shell> sfioball -r+ bk://mysql.bkbits.net/mysql-5.0 mysql-5.0
            Normalmente, no es necesario generar la documentación, dado
            que ya es suministrada en una variedad de formatos en
            http://dev.mysql.com/doc/. Los formatos que
            pueden descargarse allí (HTML, PDF, etc.) están generados
            diariamente, de modo que no se gana gran cosa generándola
            en base a los documentos en formato XML DocBook que hay en
            el directorio mysqldoc. Si de todos modos
            se deseara copiar el repositorio de documentación, debe
            emplearse el siguiente comando:
          
shell> sfioball -r+ bk://mysql.bkbits.net/mysqldoc mysqldoc
            En el ejemplo anterior, el árbol de código fuente se
            establece dentro del subdirectorio
            mysql-5.0/ dentro del
          
Si se está detrás de un firewall y solamente pueden iniciarse conexiones HTTP, BitKeeper también puede usarse sobre HTTP.
            Si se necesita usar un servidor proxy, establecer la
            variable de entorno http_proxy para
            apuntar al mismo:
          
shell> export http_proxy="http://your.proxy.server:8080/"
            Reemplazar bk:// con
            http:// cuando se copie un repositorio.
            Ejemplo:
          
shell> sfioball -r+ http://mysql.bkbits.net/mysql-5.0 mysql-5.0
La descarga inicial del árbol de código fuente puede llevar un tiempo, dependiendo de la velocidad de la conexión. Si es así, habrá que tener paciencia hasta completar la descarga.
Para actualizar la copia local del repositorio MySQL 5.0, debe emplearse este comando:
shell> update bk://mysql.bkbits.net/mysql-5.0
Son necesarios: GNU make, autoconf 2.58 (o posterior), automake 1.8, libtool 1.5, y m4 para ejecutar la siguiente serie de comandos. Aún cuando muchos sistemas operativos vienen con su propia implementación de make, hay muchas posibilidades de que la compilación falle con extraños mensajes de error. Por consiguiente, es muy recomendable utilizar GNU make (a veces llamado gmake) en lugar de otros.
Afortunadamente, un gran número de sistemas operativos se distribuyen con las herramientas GNU preinstaladas o proveen paquetes instalables de las mismas. En cualquier caso, pueden descargarse de las siguientes direcciones:
Para configurar MySQL 5.0, también se necesitará GNU bison 1.75 o posterior. Las versiones antiguas de bison pueden producir este error:
sql_yacc.yy:#####: fatal error: maximum table size (32767) exceeded
Nota: El mensaje es: "Error fatal: se ha excedido el tamaño máximo para la tabla (32767)". El tamaño máximo de la tabla no está realmente excedido, el mensaje es consecuencia de errores en versiones antiguas de bison.
            El siguiente ejemplo muestra los comandos típicamente
            requeridos para configurar un árbol de código fuente. El
            primer comando cd es para posicionarse en
            el directorio de más alto nivel en el árbol, debe
            reemplazarse mysql-5.0 con el nombre de
            directorio apropiado.
          
shell> cd mysql-5.0 shell> bk -r edit shell> aclocal; autoheader shell> libtoolize --automake --force shell> automake --force --add-missing; autoconf shell> (cd innobase; aclocal; autoheader; autoconf; automake) shell> (cd bdb/dist; sh s_all) shell> ./configure # Add your favorite options here shell> make
O bien puede usarse BUILD/autorun.sh como un atajo para la siguiente secuencia de comandos:
shell> aclocal; autoheader shell> libtoolize --automake --force shell> automake --force --add-missing; autoconf shell> (cd innobase; aclocal; autoheader; autoconf; automake) shell> (cd bdb/dist; sh s_all)
            La línea de comandos que cambia el directorio dentro de
            innobase y
            bdb/dist se usa para configurar los
            motores de almacenamiento InnoDB y
            Berkeley DB (BDB). Pueden omitirse si no
            se necesita soporte para InnoDB o
            BDB.
          
Si se obtienen algunos mensajes de error extraños durante este paso, debe verificarse si verdaderamente se encuentra instalado libtool.
            En el subdirectorio BUILD/ se encuentra
            una colección de scripts de configuración estándar
            utilizados por MySQL AB. Es posible que resulte más
            conveniente utilizar el script
            BUILD/compile-pentium-debug que el
            conjunto de comandos antes mencionado. Para compilar en una
            arquitectura diferente, debe modificarse el script
            eliminando los flags que son específicos de Pentium.
          
            Cuando la generación esté concluida, debe ejcutarse
            make install. Debe tenerse cuidado con
            esto al aplicarlo en un ordenador en producción; los
            comandos pueden sobreeescribir la instalación en uso. Si
            hay otra instalación de MySQL, se recomienda ejecutar
            ./configure con valores diferentes para
            las opciones --prefix,
            --with-tcp-port, y
            --unix-socket-path que aquellos empleados
            en el servidor en producción.
          
Ahora se debe "jugar" con la nueva instalación e intentar que las nuevas características colapsen con algún error. Debe comenzarse por ejecutar make test. Consulte Sección 27.1.2, “El paquete de pruebas MySQL Test”.
            Si se ha llegado a la etapa de make y la
            distribución no se compila, debe informarse en la base de
            datos de errores en http://bugs.mysql.com/.
            Si se han instalado las últimas versiones de las
            herramientas GNU necesarias, y estas caen al intentar
            procesar los ficheros de configuración provistos, también
            debe informarse. Sin embargo, si se ejecuta
            aclocal y se obtiene un error
            command not found o similar, no debe
            informarse. En su lugar, hay que asegurarse de que todas las
            herramientas necesarias estén instaladas y que la variable
            PATH está correctamente establecida para
            que el shell las pueda localizar.
          
            Luego de la copia inicial del repositorio
            (sfioball) para obtener el árbol de
            código fuente, se debe actualizar el repositorio
            (update) periódicamente para obtener
            novedades.
          
            Para examinar la historia de cambios del árbol, con todas
            las diferencias, puede verse el fichero
            BK/ChangeLog localizado en el árbol de
            código fuente y observar las descripciones
            ChangeSet listadas. Para examinar una
            descripción changeset en particular, se utiliza el comando
            sfioball para extraer dos revisiones del
            árbol de código fuente, y luego se utiliza un comando
            externo diff para compararlas. En caso de
            hallar diferencias poco claras o tener preguntas acerca del
            código, no debe dudarse en enviar un correo electrónico a
            la lista de correo internals de MySQL.
            Consulte Sección 1.6.1.1, “Las listas de correo de MySQL”. Asimismo, si se
            considera que se tiene una mejor idea sobre cómo realizar
            algo, debe enviarse un mensaje de correo a la misma lista
            con la corrección.
          
El cliente gratuito BitKeeper es ditribuido con su código fuente. La única documentación disponible para el cliente gratuito es el propio código fuente.
También pueden verse cambios, comentarios y código fuente a través de la Web. Para ver esta información en el caso de MySQL 5.0, dirigirse a http://mysql.bkbits.net:8080/mysql-5.0.
Ésta es una traducción del manual de referencia de MySQL, que puede encontrarse en dev.mysql.com. El manual de referencia original de MySQL está escrito en inglés, y esta traducción no necesariamente está tan actualizada como la versión original. Para cualquier sugerencia sobre la traducción y para señalar errores de cualquier tipo, no dude en dirigirse a mysql-es@vespito.com.

