Zainstaluj mysql 5.6 na Ubuntu 18.04 LTS

11

Nie mogę zainstalować programu mySql 5.6 na nowo zainstalowanym systemie Ubuntu 18.04. Próbowałem rozwiązania z wielu linków ( link1 link2 ...), ale w ogóle nie powiodło się.

Mam zainstalowaną 5.7 , ale ze względu na wymagania klienta muszę to zrobić mimo wszystko. Istnieje kilka zmian, które sprawiają, że jest on niezgodny z 5.6 bez wprowadzania zmian w kodzie w około 5 uruchomionych projektach (zaangażowanych 7 programistów), które rozpoczęły się, gdy korzystałem z Ubuntu 17.10 z mysql 5.6 .

AKTUALIZACJA: Ahmed zasugerował ręczne podejście, które jest dobrym rozwiązaniem, ale chciałbym, aby ktoś wiedział, aby to zrobić w trafny sposób Ubuntu, aby zyskać więcej ludzi.

Purushotam Sangroula
źródło
Czy masz obecnie zainstalowaną inną wersję mysql? Czy potrzebujesz 5.6? 5.7 jest dostępny w domyślnych repozytoriach.
valiano
@valiano, mam zainstalowaną 5.7, ale ze względu na wymagania klienta muszę to zrobić mimo wszystko. Istnieje kilka zmian, które powodują, że jest on niezgodny bez konieczności wprowadzania zmian w kodzie u ponad 5 programistów zaangażowanych w projekt.
Purushotam Sangroula
Próbowałeś tego? askubuntu.com/questions/792571/…
valiano
@valiano ta odpowiedź nie ma obecnie zastosowania. Próbowałem.
Purushotam Sangroula
Czy potrzebujesz MySQL, czy możesz żyć z MariaDB, który jest w 100% kompatybilny ze wszystkimi istniejącymi bazami danych MySQL?
NerdOfLinux

Odpowiedzi:

19

Próbowałem wielu podejść, dopóki nie odniosłem sukcesu.

Podejście, które zadziałało

Jedynym działającym podejściem było pobranie deb-bundble.tar ze strony MySQL i instalowanie pakietów jeden po drugim. Wykonałem następujące kroki:

  • Przejdź do strony pobierania MySQL 5.6: https://dev.mysql.com/downloads/mysql/5.6.html#downloads
  • W opcjach systemu operacyjnego wybierz „Ubuntu 14.04 64-bit”
  • Pobierz pakiet deb, plik o nazwie: mysql-server_5.6.40-1ubuntu14.04_amd64.deb-bundle.tarzwykle jest to pierwsza opcja
  • Rozpakuj gdzieś pakiet, używając: tar -xf mysql-server_5.6.40-1ubuntu14.04_amd64.deb-bundle.tar
    • Smoła zawiera wiele debpakietów, w tym mysql-server, mysql-community-server... etc
    • Następnie próbowałem zainstalować je za pomocą: sudo dpkg -i <package-name>jeden po drugim, ale postępowałem zgodnie z ich kolejnością zgodnie z komunikatami o błędach, które się uruchomiły , np .: najpierw spróbowałem: sudo dpkg -i mysql-server_5.6.40-1ubuntu14.04_amd64.debnie powiodło się, ponieważ mysql-community-server_5.6.40-1ubuntu14.04_amd64.debnajpierw musi zostać zainstalowany i tak dalej. Odpowiedniej kolejności dla nielicznych jest: mysql-common, mysql-community-client, mysql-clienta następnie mysql-community-server.
    • Część pakietu została zainstalowana pomyślnie, niektóre spowodowały błędy, po tym, jak spróbowałem sudo dpkg -i mysql-server_5.6.40-1ubuntu14.04_amd64.debpo raz ostatni, co dało pewne błędy, desperacko próbowałem: sudo apt-get install -fktóry uchwycił brakujące zależności i voila, MySQL Server 5.6 został pomyślnie zainstalowany, uruchomiony

Podejścia, które nie działały

Korzystanie z Trusty Universal Repo

Warto wspomnieć, że najpierw wypróbowałem to samo podejście, które działało w Ubuntu 16.04, to znaczy, aby dodać repozytorium „zaufanego wszechświata” i spróbować zainstalować mysql-server-5.6, tzn. Postępowałem zgodnie z tym:

sudo add-apt-repository 'deb http://archive.ubuntu.com/ubuntu trusty universe'
sudo apt-get update
apt-get install mysql-server-5.6

To podejście NIE zadziałało. Nie powiodło się, ponieważ istnieje zależność initscripts, której nie można zainstalować. Wygląda na to, że został zastąpiony po Ubuntu 16.04. Instalowanie zamienników: util-util-linux sysvinit-utilsteż nie pomogło.

Korzystanie z pakietu konfiguracji MySQL apt

Próbowałem też za pomocą pakietu MySQL config ( mysql-apt-config_0.7.3-1_all.deb) Pobrałem z tego repo: https://repo.mysql.com/ i zainstalowane przez: sudo dpkg -i mysql-apt-config_0.7.3-1_all.deb. Oczywiście nie rozpoznał Ubuntu 18.04 (bionic), więc zachowałem się tak, jakby to był Xenial i skonfigurowałem wersję MySQL Server do 5.6, a następnie próbowałem sprawdzić, która wersja MySQL jest teraz dostępna do instalacji przy użyciu: apt-cache policy mysql-serverale to również nie praca, wciąż mam wersje późniejsze niż 5.6.

Ostatnia uwaga

Chociaż ostatnie dwa podejścia nie zadziałały, mogły przyczynić się do sukcesu pierwszego podejścia poprzez udostępnienie niektórych pakietów lub konfiguracji, szczerze mówiąc nie wiem.

Kiedy stałem się beznadziejny, że jakiekolwiek podejście zadziałałoby, zastanowiłem się nad skompilowaniem i zainstalowaniem go ze źródła, rozpocząłem to przedsięwzięcie (zainstalowałem podstawowe elementy kompilacji i utworzyłem grupę użytkowników oraz użytkownika) i miałem zamiar pobrać kod źródłowy, gdy natknąłem się na pakiet deb, który okazał się owocny i był udanym podejściem, które opisałem powyżej.

Ahmed Moawad
źródło
Cześć Ahmed, cieszę się, że piszesz swoją ciężką pracę. Wiem, że te rozwiązania powinny działać (jak w końcu zrobiłem w ten sposób), ale chciałbym to zrobić w bardziej odpowiedni sposób Ubuntu . Musiał być jakiś sposób, aby to zrobić. Dziękuję za to rozwiązanie.
Purushotam Sangroula
1
Dziękuję @ anime. Biorąc pod uwagę, że Ubuntu 18.04 zostało wydane około tygodnia temu, oczekuje się, że nikt jeszcze nie zrobił poprawki ani repozytorium innej firmy, aby zainstalować go za pośrednictwem apt.
Ahmed Moawad
Mysql zaktualizował apt-repo do mysql-apt-config_0.8.10-1_all.deb. Który będzie wspierał Bionic JEDNAK, ale w tym repozytorium uwzględnili tylko 5,7 i 8 ... więc nie ma 5.6 z mysql na tym etapie dla
bioniki
2
Kolejność, która mi działała: sudo dpkg -i mysql-client_ * mysql-community-server_ * mysql-server_ * mysql-community-source_ * libmysqlclient18_ * libmysqlclient-dev_ * libmysqld-dev_ * mysql-community-client_ * mysql-community -bench_ * mysql-common_ * mysql-community-test_ * mysql-testsuite_ *
brandones
Miło z twojej strony. Dodałeś rzeczy, które działały i rzeczy, które nie działały.
Soundararajan
5

Być może trochę nie na temat, ale moim preferowanym sposobem rozwiązywania takich rzeczy jest użycie okna dokowanego.

możesz zainstalować dokera i dokować-komponować. Utwórz plik docker-compose.yml, na przykład /home/whthing/mysql-5.6, który wygląda tak.

services:

  db:
    image: mysql:5.6
    restart: always
    environment:
      MYSQL_ROOT_PASSWORD: example

a następnie wykonaj polecenie dokowania-komponuj w górę -d

Alternatywnie możesz po prostu zainstalować docker-ce i wykonać „dryrun” obrazu za pomocą następującego polecenia, aby to sprawdzić.

docker run -it mysql:5.6 /bin/bash

Pełne wyjaśnienie mysql Dockerfiles tutaj. https://hub.docker.com/_/mysql/

BD Bear
źródło
Jest to prawdopodobnie właściwy sposób na zrobienie tego w dzisiejszych czasach.
marcogmonteiro,
2

Możesz pobrać i zainstalować pakiety Debian Mysql 5.6 ręcznie z repozytorium Mysql apt .

Ketan Patel
źródło
Dziękuje ale nie. W Ubuntu 18.04 oficjalne repozytorium MySQL (pakiet APT) daje tylko opcję MySQL 5.7 lub 8.0. Właśnie tego spróbowałem.
Paul
Edytowana odpowiedź z adresem URL, z którego można pobrać pakiety debian mysql 5.6.
Ketan Patel
1

MariaDB jest w pełni kompatybilnym zamiennym zamiennikiem MySQL i jest dostępny w domyślnych repozytoriach Ubuntu. Można go zainstalować z:

sudo apt update
sudo apt install mariadb-server-10.0 mariadb-client-10.0

Instalator powinien wykryć wszystkie istniejące bazy danych MySQL i zaimportować je, ale na wszelki wypadek przeczytaj tę odpowiedź i przygotuj kopię zapasową.

Uwagi na temat MariaDB

Podczas gdy chodzi o pytanie MySQL, MariaDB

jest ulepszonym, drop-inowym zamiennikiem MySQL

i jest kompatybilny ze wszystkimi * aplikacjami używającymi MySQL. Nasłuchuje na tych samych portów i wszystkie polecenia są takie same (to znaczy mysql, mysqldumpitp).

* Ok, prawdopodobnie możesz znaleźć naprawdę stare aplikacje, które nie będą działać z MariaDB, ale szanse na to są naprawdę bardzo małe.

NerdOfLinux
źródło
Jak konfigurujemy w nim wersję mySql?
Purushotam Sangroula,
Nie wierzę, że możesz. Zalecam wypróbowanie go na VPS, aby upewnić się, że wszystko działa przed uruchomieniem. Link da ci do 2 miesięcy za darmo (i pomoże mi trochę :-)), ale zrobi to każdy dostawca VPS
NerdOfLinux
Z tego, co widzę w 18.04. gdzie jest tylko mariadb-server-10.1...
wittich
0

Wiem, że ta odpowiedź jest trochę spóźniona. ale musiałem wspomnieć, że bieżąca wersja MySQL APT Repository (mysql-apt-config_0.8.12-1_all.deb) działała dobrze ze mną na Ubuntu 18.04.

oto jak go użyć.

KhogaEslam
źródło
Czy pozwoli to na instalację mysql 5.6 na Ubuntu 18.04?
iii
Po odpakowaniu daje mi tylko opcję 8,0
iii
Działa ze mną dobrze, używając wspomnianej wersji w dniu tej odpowiedzi
KhogaEslam,
0

Tak! możesz zainstalować MySQL 5.5.56 postępując zgodnie z tymi instrukcjami instalacji .

jobima
źródło
Dziękujemy bardzo za udział w AskUbuntu! To powiedziawszy, chciałem zwrócić uwagę na dwie konstruktywne uwagi z nadzieją na twoją odpowiedź. Po pierwsze, OP szuka rozwiązania wykorzystującego tradycyjne narzędzia do zarządzania pakietami. Skomentowali, że głosowana odpowiedź, choć całkowicie dobra, nie była tym, czego szukali. Dzięki surowym archiwom twoje jest jeszcze bardziej usuwane. Drugim problemem jest surowy link. Opisując dobrą odpowiedź, zaleca się kontekst askubuntu.com/help/how-to-answer oraz pełniejsze wyjaśnienia. Mam nadzieję, że to pomoże w dalszym wkładzie na stronę!
wxl