Estoy usando la máquina virtual Linux llave en mano. La versión de Debian allí aparentemente está en la ruta de actualización "Wheezy" (si así es como la llamas). No me siento completamente cómodo con Linux, como puedes ver.
Necesito algunas características nuevas que ofrece MySQL 5.6, mientras que mi instalación actual es MySQL 5.5.35. Me gustaría obtener la última versión (5.6.17 a partir de esta publicación) o al menos cualquier 5.6.x.
He intentado apt-get update
, apt-get upgrade
, apt-get dist-upgrade
. Estos actualizaron un montón de cosas con éxito, pero ninguno era MySQL. Lo intenté apt-get upgrade mysql-server
, lo que dice que ya tengo la última versión.
Una lista de repositorio de paquetes de Debian Wheezy en la web muestra MySQL 5.5 y nada más, cuando necesito 5.6. Luego leí algo sobre "backports", que parece que podría conseguirme cosas que mi Debian en particular no debería tener todavía, pero parece que no puedo hacer que funcione. Requiere agregar líneas a /etc/apt/sources.list.d/sources.list
. Cuando trato de hacer eso, luego de ejecutar apt-get update
, obtengo errores 404.
También probé varias otras rutas, una compilando la descarga vainilla de MySQL, en la que fallé miserablemente y preferiría no volver a intentarlo.
Estoy positivamente desconcertado de cómo se hace esto. La mayoría de las URL que figuran en los foros / blogs para apt-get
, e incluso para wget
, parecen morir poco después de su publicación, por lo que no puedo entender cómo alguien llega a encontrar la información correcta. He estado tratando de hacer esto durante dos días seguidos y no puedo llegar a ninguna parte.
Entonces, suponiendo que haya leído hasta aquí, me encantaría saber si alguien tiene alguna forma de actualizar MySQL en Debian de una manera automatizada relativamente indolora (una en la que no tendría que usar make
o exportar / importar mis bases de datos y configuraciones actuales manualmente) )
slony
capacidades y no pude encontrar una versión más reciente que la 9.1, que carece de slony.Respuestas:
Reconstruir las fuentes experimentales de MySQL 5.6 a partir de experimental en wheezy es fácil rozar lo trivial. Sin embargo, necesitará mucho espacio en disco; una vez completada la compilación, el directorio de compilación usaba 5.2 GB. Además, lleva un tiempo construirlo y ejecuta una increíble cantidad de pruebas. No me molesté en cronometrarlo, pero dejo pasar un par de horas. Es posible deshabilitar las pruebas, pero sugiero dejarlas correr; es inofensivo siempre que pasen. Lo hicieron en mi máquina. La buena noticia es que pude construirlo e instalarlo sin problemas. Ejecuté la siguiente prueba básica.
Entonces, puedo conectarme al servidor al menos. Así es como se ven los paquetes instalados:
Aquí hay un desglose de los pasos.
Primero, obtenga las fuentes. Debe agregar lo siguiente (o similar, ajustar para su servidor preferido) a
/etc/apt/sources.list
:Agregue también lo siguiente a
/etc/apt/preferences
.Entonces corre
Entonces corre
en algún directorio adecuado. Por lo general, creo un directorio en
/usr/local/src
,en este caso, digamos
/usr/local/src/mysql
.Luego cd en
/usr/local/src/mysql
.correr
En mi máquina, esto instaló un par de paquetes.
Instale algunos paquetes básicos para construir.
Luego cd en el directorio de origen resultante
/usr/local/src/mysql/mysql-5.6- 5.6.16
y ejecuteEsto tomará un tiempo para construir. En algunos casos es una buena idea incrementar
el número de versión, pero no es realmente necesario aquí. ya que es poco probable que cualquier otro paquete de MySQL 5.6 llegue a wheezy.
Si no desea ejecutar las pruebas, puede usar
Ahora debe instalar libdbd-mysql-perl, que es una dependencia en tiempo de ejecución de los paquetes mysql.
Luego, sube un nivel a
/usr/local/src/mysql
. Debería haber algunos paquetes deb allí. Querrás instalar al menosEsto se puede hacer, por ejemplo, ejecutando:
fuente
dpkg-buildpackage: host architecture amd64
fakeroot debian/rules clean
Can't exec "fakeroot": No such file or directory at /usr/bin/dpkg-buildpackage line 510.
dpkg-buildpackage: error: fakeroot debian/rules clean failed with unknown exit code -1
debuild: fatal error at line 1357:
dpkg-buildpackage -rfakeroot -D -us -uc failed
estoy haciendo esto en Turnkey Linux que creo que utiliza LAMP, si eso ayuda.apt-get install fakeroot
.mysqldump
y luego volver a cargar el archivo de volcado. Respalde sus bases de datos también, por supuesto.apt-get remove mysql-server
yapt-get remove mysql-client
, también tenía que hacerloapt-get install libterm-readkey-perl
antes del último paso. Además, lamysql-server-core
instalación en el último paso tuvo que hacerse antesmysql-server
. ¡Ahora estoy ejecutando MySQL 5.6.16 oficialmente y he probado con éxito los índices de búsqueda de InnoDB de texto completo (la razón por la que lo necesitaba)! Gracias Faheem Mitha. Me salvaste la cordura.Actualmente, la mejor opción es utilizar el repositorio oficial de MySQL APT que permite la
apt-get upgrade
instalación.fuente
apt-get upgrade
, luego hagaapt-get upgrade mysql-server
, y actualice fácilmente mysql de 5.5 a 5.7. Después de la actualización, debe configurar nuevamente y ejecutar:mysql_upgrade -u root
Todos probados Diviértete.
fuente
root@lamp local/mysql# update-rc.d mysql-5.7 defaults
:update-rc.d: using dependency based boot sequencing
update-rc.d: error: unable to read /etc/init.d/mysql-5.7
root@lamp local/mysql# service mysql start
:Starting MySQL
[FAIL......[....] The server quit without updating PID file (/opt/mysql/server-5.6/data/lamp.pid). ... failed!