Ubuntu 16.04에서 mysql 5.7을 5.6으로 다운 그레이드하려면 어떻게해야합니까?


11

MySQL 5.7이 대규모 메모리 돼지이며 MySQL 5.6으로 롤백하려고합니다.

그러나 5.7을 제거하고 5.6을 설치하려고 할 때마다 MySQL 서비스가 시작되지 않습니다. 또한 모든 데이터베이스를 유지해야합니다.

누구든지 mysql을 5.7에서 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  

공식 Ubuntu 16.04 리포지토리에는 5.7 개만 있으므로 5.6을 제공하는 리포지토리를 찾아야합니다. 아마도 공식적인 MySQL 일 것 입니다.
fkraiem 2016 년

이미 액세스 MySQL의 5.6에 믿을 수있는 REPO을 추가 한
DIB의

특히 Xenial 용 5.6 패키지가있는 것처럼 보이기 때문에 그렇게하지 않아야합니다.
fkraiem

예를 들어 서비스 관리 시스템이 변경되었으므로 (Trusty는 upstart를 사용하고 Xenial은 systemd를 사용) Trusty 용 패키지 (upstart 포함)의 서비스가 Xenial (systemd 사용)에서 시작되지 않는 것은 놀라운 일이 아닙니다.
fkraiem

아와! 어쩌면 이것이 내가 시도한 것이 효과가있는 것처럼 보이는 이유 일 것입니다.

답변:


7

먼저를 mysqldump포함하여 모든 데이터베이스를 만드 십시오 information_schema. 그런 다음 "mysql"을 중지하면 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

그리고

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

경고 :

  • 우분투는 16.04로 시스템으로 전환했습니다. mysql 5.6을 사용할 때 upstart로 16.04를 시작해야 할 수도 있습니다.

1
/ var / lib / mysql의 $ sudo rm -rf가 모든 데이터베이스를 날려 버릴 것이라고 확신합니다.

그래도 / var / lib / mysql /을 유지할 수는 없습니다. 다시로드 할 수 있도록 데이터베이스 덤프가 필요합니다. 그렇지 않으면 5.6에서 유효하지 않은 것보다 5.7에서 설정을 선택할 것입니다.
Rinzwind

1
또 다른 실수가 있습니다. 제거하기 전에 mysql을 중지해야합니다. 그리고 또 다른 경고 : 우리는 5.6에서 5.7 사이의 시스템으로 전환했습니다.
거래가

@Rinzwind 이것이 실제적으로 무엇을 의미 하는가 : 체계적인 변화? 또한 DB를 덤프해야한다는 것을 아는 것도 좋습니다. 내가 먼저 해야겠다.

3
기본적으로 mysql-client-5.6은 더 이상 apt-get에서 사용할 수 없습니다. 설치 방법 은 askubuntu.com/questions/762384/… 를 참조하십시오 .
Tony

0

Ubuntu 14.04 리포지토리를 추가했습니다 (Ubuntu 18.04).

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

설치할 수 있습니다 :

sudo apt install mysql-client-5.6

2
이것은 정말 나쁜 생각 입니다. askubuntu.com/questions/499800/…을 참조하십시오 .
fosslinux

이 작업을 수행해도 괜찮지 만 업데이트하지 말고 "-r"을 따르십시오. 한 번 설치 제거 "sudo add-apt-repository -r 'deb archive.ubuntu.com/ubuntu trusty universe'"만큼 5.6이 설치되면 제거하면 리포지토리에 남겨 두는 것이 좋지 않습니다. 위의 의견만큼 나쁜 생각은 아닙니다. 여기에 같은 대답이 60 개의 찬성 투표를했으며
MagicLAMP
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.