Ubuntu 16.04'te mysql 5.7'yi 5.6'ya nasıl düşürebilirim?


11

MySQL 5.7'yi büyük bir bellek domuzu olarak görüyorum ve MySQL 5.6'ya geri dönmek istiyorum.

Ancak 5.7'yi kaldırmaya ve 5.6'yı yüklemeye çalıştığımda, başlamamış bir MySQL servisiyle karşılaşıyorum. Ayrıca tüm veritabanlarımı sakladığımdan emin olmalıyım.

Mysql'i 5.7'den 5.6'ya nasıl geri alabileceğimi herkes adım adım anlatabilir mi?

**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  

Resmi Ubuntu 16.04 depolarında sadece 5.7 vardır, bu yüzden ilk önce 5.6 sağlayan bir depo bulmanız gerekecektir. Belki resmi MySQL olanı .
fkraiem

MySQL 5.6'ya erişmek için güvenilir repo'yu zaten ekledim
dibs

Bunu yapmamalısınız, özellikle de Xenial için 5.6 paket var gibi görünüyor.
fkraiem

Örneğin, hizmetleri yönetmek için sistem değişti (Trusty uptart kullanıyor, Xenial systemd kullanıyor), bu nedenle Trusty (uptart ile) için yapılan bir paketteki bir hizmetin Xenial'da (systemd ile) başlatılması şaşırtıcı değildir.
fkraiem

Ah vay. Belki de bu yüzden denediğim ne olursa olsun işe yarıyor gibi görünüyor.
dibs

Yanıtlar:


7

Öncelikle mysqldumptüm veritabanlarınızı (dahil information_schema) yapın. Sonra "stop" mysql "ve bu mysql ile ilgili her şeyi kaldıracak:

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

ve sonra

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

Uyarılar:

  • Ubuntu 16.04 ile sistemd'e geçti. Mysql 5.6 kullanırken 16.04'ü başlatma ile de başlatmanız gerekebilir.

1
/ Var / lib / mysql üzerinde $ sudo rm -rf tüm veritabanlarım uçurmak eminim.
dibs

Ama olacak / var / lib / mysql / neyse. Yeniden yükleyebilmek için veritabanınızın bir dökümüne ihtiyacınız var. Aksi takdirde 5,6
Rinzwind

1
Başka bir hata görüyorum: mysql kaldırmadan önce durdurulması gerekiyor. Ve başka bir uyarı: 5.6 ve 5.7 arasında sistemd'e geçtik. Bir
anlaşma

@Rinzwind Bu pratikte ne anlama geliyor? Ayrıca bilmek iyi dbs dökmek zorunda. Önce bunu yaptığımdan emin olacağım.
dibs

3
mysql-client-5.6 artık varsayılan olarak apt-get dosyasında mevcut değildir. Nasıl kuracağınız için askubuntu.com/questions/762384/… adresine bakın .
Tony

0

Ubuntu 14.04 deposunu (Ubuntu 18.04'te) ekledim:

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

Yükleyebiliyorum:

sudo apt install mysql-client-5.6

2
Bu gerçekten kötü bir fikir . Bkz. Askubuntu.com/questions/499800/… .
fosslinux

Bunu yapmak için Tamam, ancak güncelleme yapmayın ve "-r" ile bir kez kur d "sudo add-apt-repository -r 'deb archive.ubuntu.com/ubuntu trustyu universe'" 5. 5'i yükledikten sonra bunu deponuzda bırakmak kötü bir fikir, bunun yukarıdaki yorum kadar kötü bir fikir olduğunu düşünmüyorum. Burada aynı cevabın 60 upvotes var ve sorunlara neden olma potansiyeli daha yüksek olan uygun bir güncelleme yaptı askubuntu.com/questions/762384/…
MagicLAMP 13:18
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.