Los comandos básicos para instalar una distribución MySQL de código fuente son:
shell> groupadd mysql shell> useradd -g mysql mysql shell> gunzip < mysql-VERSION
.tar.gz | tar -xvf - shell> cd mysql-VERSION
shell> ./configure --prefix=/usr/local/mysql shell> make shell> make install shell> cp support-files/my-medium.cnf /etc/my.cnf shell> cd /usr/local/mysql shell> bin/mysql_install_db --user=mysql shell> chown -R root . shell> chown -R mysql var shell> chgrp -R mysql . shell> bin/mysqld_safe --user=mysql &
Si se comienza desde un RPM fuente, debe procederse así:
shell> rpmbuild --rebuild --clean MySQL-VERSION
.src.rpm
Esto genera un binario RPM instalable. En versiones antiguas de RPM, podría ser necesario reemplazar el comando rpmbuild con rpm.
Nota: Este procedimiento no establece contraseñas para las cuentas de MySQL. Despues de concluirlo, hay que dirigirse a Sección 2.9, “Puesta en marcha y comprobación después de la instalación”, para la configuración y prueba posteriores a la instalación.
Esta es una versión más detallada del procedimiento para instalar una distribución de código fuente:
Crear un usuario y un grupo para mysqld a fin de que pueda ejecutarse:
shell> groupadd mysql shell> useradd -g mysql mysql
Estos comandos agregan el grupo mysql
y
el usuario mysql
. La sintaxis para
useradd y groupadd
puede variar ligeramente entre las distintas versiones de
Unix. También pueden llamarse adduser y
addgroup.
Si se quisiera llamar al usuario y al grupo con otro nombre
en lugar de mysql
, habría que substituir
por el nombre apropiado en los siguientes pasos.
Posicionarse en el directorio en el cual se desea expandir la distribución.
Obtener un fichero de distribución desde uno de los sitios listados en Sección 2.1.3, “Cómo obtener MySQL”.
Expandir la distribución dentro del directorio actual:
shell> gunzip < /path/to/mysql-VERSION
.tar.gz | tar xvf -
Este comando creará un directorio llamado
mysql-
.
VERSION
Con GNU tar no se necesita invocar
separadamente a gunzip
. Se puede usar el
siguiente comando alternativo, para descomprimir y extraer
la distribución:
shell> tar zxvf /path/to/mysql-VERSION-OS
.tar.gz
Posicionarse en el directorio de más alto nivel de la distribución expandida:
shell> cd mysql-VERSION
Actualmente debe configurarse y compilarse MySQL desde este directorio. No se puede compilar en un directorio diferente.
Configurar el release y compilar todo:
shell> ./configure --prefix=/usr/local/mysql shell> make
Al ejecutar configure, es posible que se deseen especificar algunas opciones. Ejecutar ./configure --help para obtener la lista de las opciones disponibles. Sección 2.8.2, “Opciones típicas de configure” trata acerca de alguans de las opciones más útiles.
Si configure fallara y se enviase un mail
a la lista de correo de MySQL para solicitar asistencia,
deben incluirse algunas líneas del fichero
config.log
que en apariencia sirvan
para resolver el problema. También, incluir el último par
de líneas emitidas por configure en la
pantalla. Para enviar el informe de error debe utilizarse el
script mysqlbug. Consulte
Sección 1.6.1.3, “Cómo informar de bugs y problemas”.
Si el compilador falla, consulte Sección 2.8.4, “Problemas en la compilación de MySQL”.
Instalar la distribución:
shell> make install
Si se desea crear un fichero de opciones, debe utilizarse
como plantilla uno de los presentes en el directorio
support-files
. Por ejemplo:
shell> cp support-files/my-medium.cnf /etc/my.cnf
Podría ser necesario iniciar sesión como
root
para ejecutar estos comandos.
Si se configurará el soporte para tablas
InnoDB
, habrá que editar el fichero
/etc/my.cnf
, quitar el carácter
#
al comienzo de las líneas de opciones
que comienzan con innodb_...
, y modificar
los valores según lo deseado. Consulte
Sección 4.3.2, “Usar ficheros de opciones” y
Sección 15.3, “Configuración de InnoDB
”.
Posicionarse en el directorio de instalación:
shell> cd /usr/local/mysql
Si no se ha instalado antes MySQL, se deben crear las tablas de permisos:
shell> bin/mysql_install_db --user=mysql
Si se ejecuta el comando como usuario
root
, se debe emplear la opción
--user
tal como se muestra. El valor de
la opción debe ser el nombre de la cuenta de usuario creada
en el primer paso, para permitir que el servidor se ejecute.
Si se ejecuta el comando habiendo iniciado sesión como este
último usuario, se puede omitir la opción
--user
.
Despues de crear o actualizar la tabla de permisos mediante mysql_install_db, habrá que reiniciar el servidor manualmente.
Se debe cambiar el propietario de los programas binarios a
root
y el propietario del directorio de
datos al que se creó para ejecutar
mysqld. Asumiendo que se está en el
directorio de instalación
(/usr/local/mysql
), el comando sería
similar a este:
shell> chown -R root . shell> chown -R mysql var shell> chgrp -R mysql .
El primer comando cambia el atributo de propietario de los
ficheros y les asigna el usuario root
. El
segundo cambia el atributo de propietario del directorio de
datos y le asigna el usuario mysql
. El
tercero cambia el atributo de grupo, asignándolo al grupo
mysql
.
Si se desea que MySQL se inicie automáticamente durante el
arranque del ordenador, debe copiarse el fichero
support-files/mysql.server
a la
ubicación donde se encuentran los ficheros de inicio del
sistema. Puede hallarse más información dentro del mismo
script support-files/mysql.server
y en
Sección 2.9.2.2, “Arrancar y parar MySQL automáticamente”.
Pueden establecerse nuevas cuentas empleando el script
bin/mysql_setpermission si se instalan
los módulos de Perl DBI
y
DBD::mysql
. Para más instrucciones
consulte Sección 2.13, “Notas sobre la instalación de Perl”.
Luego de que todo se ha instalado, se debería inicializar y probar la distribución por medio del siguiente comando:
shell> /usr/local/mysql/bin/mysqld_safe --user=mysql &
Si este comando fallara inmediatamente y emitiera el mensaje
mysqld ended
, se podrá encontrar más
información en el fichero
,
localizado en el directorio de datos.
host_name
.err
Hay más información acerca de mysqld_safe en Sección 5.1.3, “El script de arranque del servidor mysqld_safe”.
Nota: Las cuentas que se hallan en las tablas de permisos de MySQL, en principio no están protegidas con contraseñas. Después de iniciar el servidor se deben establecer contraseñas para esas cuentas siguiendo las instrucciones en Sección 2.9, “Puesta en marcha y comprobación después de la instalación”.
É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.