Bagaimana saya bisa menurunkan versi mysql 5.7 ke 5.6 di Ubuntu 16.04?

11

Saya menemukan MySQL 5.7 sebagai babi memori yang besar dan ingin kembali ke MySQL 5.6.

Namun setiap kali saya mencoba untuk meng-uninstall 5.7 dan menginstal 5.6 saya berakhir dengan layanan MySQL yang tidak akan mulai. Saya juga perlu memastikan saya menyimpan semua basis data saya.

Adakah yang bisa memberi tahu saya langkah demi langkah sederhana tentang cara mengembalikan mysql dari 5.7 ke 5.6?

**UPDATE**
$ dpkg -l | grep mysql    

rc  akonadi-backend-mysql                                1.13.0-2ubuntu4                                      all          MySQL storage backend for Akonadi  
ii  dbconfig-mysql                                       2.0.4ubuntu1                                         all          dbconfig-common MySQL/MariaDB support  
ii  libdbd-mysql-perl                                    4.033-1build2                                        amd64        Perl5 database interface to the MySQL database  
rc  libmysqlclient18:amd64                               5.6.30-0ubuntu0.15.10.1                              amd64        MySQL database client library  
rc  libmysqlclient18:i386                                5.6.30-0ubuntu0.15.10.1                              i386         MySQL database client library  
ii  libmysqlclient20:amd64                               5.7.12-0ubuntu1.1                                    amd64        MySQL database client library  
ii  mysql-client-5.7                                     5.7.12-0ubuntu1.1                                    amd64        MySQL database client binaries  
ii  mysql-client-core-5.7                                5.7.12-0ubuntu1.1                                    amd64        MySQL database core client binaries  
ii  mysql-common                                         5.7.12-0ubuntu1.1                                    all          MySQL database common files, e.g. /etc/mysql/my.cnf  
iU  mysql-server                                         5.7.12-0ubuntu1.1                                    all          MySQL database server (metapackage depending on the latest version)  
rc  mysql-server-5.5                                     5.5.43-0ubuntu0.14.10.1                              amd64        MySQL database server binaries and system database setup  
rc  mysql-server-5.6                                     5.6.16-1~exp1                                        amd64        MySQL database server binaries and system database setup  
iF  mysql-server-5.7                                     5.7.12-0ubuntu1.1                                    amd64        MySQL database server binaries and system database setup  
ii  mysql-server-core-5.7                                5.7.12-0ubuntu1.1                                    amd64        MySQL database server binaries  
ii  php-mysql                                            1:7.0+42+deb.sury.org~xenial+2                       all          MySQL module for PHP [default]  
ii  php5.6-mysql                                         5.6.23-1+deb.sury.org~xenial+2                       amd64        MySQL module for PHP  
ii  php7.0-mysql                                         7.0.8-2+deb.sury.org~xenial+1                        amd64        MySQL module for PHP  
dibs
sumber
Repositori resmi Ubuntu 16.04 hanya memiliki 5.7, jadi pertama-tama Anda perlu menemukan repositori yang menyediakan 5.6. Mungkin yang resmi MySQL .
fkraiem
Saya sudah menambahkan repo terpercaya untuk mengakses MySQL 5.6
dibs
Anda seharusnya tidak melakukan itu, terutama karena tampaknya ada 5,6 paket untuk Xenial.
fkraiem
Misalnya, sistem untuk mengelola layanan telah berubah (Trusty menggunakan pemula, Xenial menggunakan systemd), sehingga tidak mengherankan bahwa layanan dalam paket yang dibuat untuk Trusty (dengan pemula) tidak dimulai di Xenial (dengan systemd).
fkraiem
Ah wow. Mungkin inilah sebabnya apa pun yang saya coba tampaknya berhasil.
dibs

Jawaban:

7

Pertama-tama buat mysqldumpsemua database Anda (termasuk information_schema). Lalu "hentikan" mysql "dan ini akan menghapus apa pun yang terkait dengan mysql:

sudo apt-get purge mysql-server mysql-client mysql-common mysql-server-core-5.7 mysql-client-core-5.7

# Backup 5.6 config and data without deleting
sudo mv /etc/mysql /etc/mysql-5.6-backup
sudo mv /var/lib/mysql /var/lib/mysql-5.6-backup
sudo apt-get autoremove
sudo apt-get autoclean

lalu

sudo apt-get install mysql-client-5.6
sudo apt-get update

Peringatan:

  • Ubuntu beralih ke systemd dengan 16.04. Anda mungkin perlu memulai 16,04 dengan pemula juga ketika menggunakan mysql 5.6.
Tyler
sumber
1
Saya cukup yakin bahwa $ sudo rm -rf di / var / lib / mysql akan menghapus semua basis data saya.
dibs
Akan tetapi Anda tidak dapat menyimpan / var / lib / mysql / anyways. Anda perlu dump database Anda sehingga Anda bisa memuatnya kembali. Kalau tidak, Anda akan mengambil pengaturan dari 5,7 daripada tidak valid di 5,6
Rinzwind
1
Saya melihat kesalahan lain: mysql perlu dihentikan sebelum Anda menghapusnya. Dan peringatan lain: kami beralih ke systemd antara 5.6 dan 5.7. Bukan dealbreaker tetapi layak disebut
Rinzwind
@Rinzwind apa arti praktis ini kembali: perubahan systemd? Juga baik untuk mengetahui SAYA HARUS membuang dbs. Saya akan memastikan saya melakukannya terlebih dahulu.
dibs
3
mysql-client-5.6 tidak lagi tersedia di apt-get secara default. Lihat askubuntu.com/questions/762384/... untuk cara menginstalnya.
Tony
0

Saya menambahkan repositori Ubuntu 14.04 (di Ubuntu 18.04):

sudo add-apt-repository 'deb http://archive.ubuntu.com/ubuntu trusty universe'

Saya dapat menginstal:

sudo apt install mysql-client-5.6
Rahul Thakur
sumber
2
Ini ide yang sangat buruk . Lihat askubuntu.com/questions/499800/… .
fosslinux
Oke untuk melakukan ini, tetapi jangan perbarui, dan ikuti dengan "-r" hapus sekali installe d "sudo add-apt-repository -r 'deb archive.ubuntu.com/ubuntu trusty universe'" sebanyak itu adalah ide buruk untuk meninggalkan ini di repo Anda, jika Anda menghapusnya setelah 5,6 diinstal, saya tidak berpikir ini adalah ide yang buruk seperti komentar di atas dibuat. Jawaban yang sama di sini memiliki 60 upvote, dan dia melakukan pembaruan apt-get, yang lebih berpotensi menyebabkan masalah askubuntu.com/questions/762384/…
MagicLAMP