Я использую виртуальную машину Linux под ключ. Версия Debian там, по-видимому, находится на пути обновления «Wheezy» (если вы так его называете). Как вы можете видеть, я не совсем доволен Linux.
Мне нужны некоторые новые функции, которые предлагает MySQL 5.6, в то время как моя текущая установка - MySQL 5.5.35. Я хотел бы получить последнюю версию (5.6.17 на момент публикации) или хотя бы 5.6.x.
Я пытался apt-get update
, apt-get upgrade
, apt-get dist-upgrade
. Они успешно обновили кучу вещей, но ни одна из них не была MySQL. Я пытался apt-get upgrade mysql-server
, который говорит, что у меня уже есть последняя версия.
Список репозитория пакетов Debian Wheezy в Интернете показывает MySQL 5.5 и ничего больше, когда мне нужно 5.6. Затем я читаю кое-что о «бэкпортах», что звучит так, как будто бы я мог получить то, чего не должен был иметь мой конкретный Debian, - но я не могу заставить его работать. Требуется добавить строки в /etc/apt/sources.list.d/sources.list
. Когда я пытаюсь сделать это, затем запустить apt-get update
, я получаю 404 ошибки.
Я также попробовал несколько других маршрутов, один из которых компилировал загрузку MySQL ванили, которую я с треском провалил и не хотел бы повторять попытку.
Я положительно озадачен тем, как это делается. Кажется, что большинство URL-адресов, перечисленных на форумах / блогах apt-get
и даже для wget
, умирают вскоре после их публикации, поэтому я не могу понять, как кто-то вообще пытается найти нужную информацию. Я пытался сделать это два дня подряд и не могу никуда добраться.
Итак, предположив, что вы читали это далеко, я хотел бы знать, есть ли у кого-нибудь способ обновления MySQL в Debian относительно безболезненным автоматическим способом (тот, где мне не пришлось бы использовать make
или экспортировать / импортировать мои текущие базы данных и конфигурации вручную ).
slony
возможности, и я не смог найти более новую, чем 9.1, в которой отсутствует слон.Ответы:
Перестройка экспериментальных исходников MySQL 5.6 из экспериментальных программ на wheezy легко граничит с тривиальным. Однако вам потребуется много места на диске; после завершения сборки каталог для сборки использовал 5,2 ГБ. Кроме того, для сборки требуется некоторое время, и выполняется невероятное количество тестов. Я не удосужился рассчитать это, но позволил пару часов. Можно отключить тесты, но я предлагаю дать им возможность работать - это безопасно, пока они проходят. Они сделали на моей машине. Хорошей новостью является то, что я смог собрать и установить его без суеты. Я провел следующий базовый тест.
Итак, я могу подключиться к серверу как минимум. Вот как выглядят установленные пакеты:
Вот разбивка шагов.
Во-первых, получить источники. Вам необходимо добавить следующее (или аналогичное, настроить для предпочитаемого сервера)
/etc/apt/sources.list
:Также добавьте следующее к
/etc/apt/preferences
.Тогда беги
Тогда беги
в каком-то подходящем каталоге. Я обычно создаю каталог
/usr/local/src
,в данном случае, скажем
/usr/local/src/mysql
.Затем перейдите на
/usr/local/src/mysql
.Бегать
На моей машине установлено несколько пакетов.
Установите несколько базовых пакетов для сборки.
Затем перейдите в каталог с исходным кодом
/usr/local/src/mysql/mysql-5.6- 5.6.16
и запуститеЭто займет время, чтобы построить. В некоторых случаях рекомендуется увеличить
номер версии, но в этом нет необходимости. поскольку маловероятно, что любой другой пакет MySQL 5.6 попадет в wheezy.
Если вы не хотите запускать тесты, вы можете вместо этого использовать
Теперь вы должны установить libdbd-mysql-perl, которая является зависимой от времени выполнения пакетов mysql.
Затем перейдите на один уровень выше
/usr/local/src/mysql
. Там должно быть несколько пакетов deb. Вы хотите установить по крайней мереЭто можно сделать, например, запустив:
источник
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
я делаю это в Linux под ключ, который, я думаю, использует LAMP, если это помогает.apt-get install fakeroot
,mysqldump
а затем перезагрузить файл дампа. Поддержите ваши базы данных, конечно же.apt-get remove mysql-server
аapt-get remove mysql-client
также должен был сделатьapt-get install libterm-readkey-perl
до последнего шага. Кроме того,mysql-server-core
установка на последнем шаге должна была быть сделана раньшеmysql-server
. Сейчас я официально запускаю MySQL 5.6.16 и успешно проверил полнотекстовые поисковые индексы InnoDB (причина, по которой мне это нужно)! Спасибо, Фахим Митха. Вы сохранили мое здравомыслие.В настоящее время лучшим вариантом является использование официального репозитория MySQL APT, который позволяет
apt-get upgrade
установку.источник
apt-get upgrade
, затем выберите « i» и выполнитеapt-get upgrade mysql-server
простое обновление mysql с 5.5 до 5.7. После обновления вам нужно снова настроить и выполнить:mysql_upgrade -u root
Все проверено Веселитесь.
источник
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!