MySQL 5.5 Update to MySQL 5.7
I searched a tutorial for dummies, about how to Update my MySQL 5.5 Server to MySQL 5.7 I'm Using ubuntu 14.04. I've already tried the tutorials on the MySQL Website. How can I upgrade my server?
Solution 1:
This worked for me:
wget https://dev.mysql.com/get/mysql-apt-config_0.8.10-1_all.deb
sudo gdebi mysql-apt-config_0.8.10-1_all.deb
sudo apt-get update
sudo apt-get install mysql-server
The 2nd command will ask for input:
After picking 5.7 choose "apply"
$ mysql --version
mysql Ver 14.14 Distrib 5.7.8-rc, for Linux (x86_64) using EditLine wrapper
Don' forget to run mysql_upgrade after installation to upgrade system tables and restart server, following MySQL Upgrading guide.
$ mysql_upgrade
or
$ sudo mysql_upgrade -u root -p
And restart mysql
sudo service mysql restart
Solution 2:
You can see my comment that the solution by @Rinzwind did not worked in my case (Ubuntu 14.04 , Mysql 5.5). So i have googled the solution and found the answer which worked for me at Digital Ocean Tutorial.
First of all , Backup All your Database.
mysqldump --all-databases > all_databases.sql
If above command did not work for you try below one.
mysqldump -u root -p --all-databases > all_databases.sql
I am pasting the particular portion of tutorial that worked for me .
If you want to install MySQL 5.7, you'll need to add the newer APT package repository from the MySQL APT repository page. Click Download on the bottom right, then copy the link on the next page from No thanks, just start my download. Download the .deb package to your server.
wget https://dev.mysql.com/get/mysql-apt-config_0.8.1-1_all.deb
Next, install it using dpkg.
sudo dpkg -i mysql-apt-config_0.8.1-1_all.deb
You'll see a prompt that asks you which MySQL product you want to configure. The MySQL Server option, which is highlighted, should say mysql-5.7. If it doesn't, press ENTER, then scroll down to mysql-5.7 using the arrow keys, and press ENTER again.
Once the option says mysql-5.7, scroll down on the main menu to Apply and press ENTER again. Now, update your package index.
sudo apt-get update
Finally, install the MySQL-server package, which now contains MySQL 5.7.
sudo apt-get install mysql-server
Now upgrade all mysql databases .
sudo mysql_upgrade -u root -p
Now restart mysql server .
sudo service mysql restart
Always find the latest version of mysql-at-config file at https://dev.mysql.com/downloads/repo/apt/
Solution 3:
this can also happen when upgrading from 14.04 to 16.04, which causes an unsupported mysql upgrade (5.5 -> 5.7), which is not a supported upgrade path as documented by mysql. The easiest way around this is to upgrade mysql to 5.6 whilst still under 14.04. You achieve this by first (of course!) dumping all your databases;
hostname # mysqldump --lock-all-tables -u root -p --all-databases > backup.sql
then upgrading to mysql 5.6;
hostname # apt-get install mysql-server-5.6 mysql-client-5.6 mysql-server-core-5.6 mysql-client-core-5.6
This way, all your databases are upgraded in place and (on my machines so far) entirely safely and transparently to 5.6. The only issue after the upgrade may be TIMESTAMP entries. Now, even after an do-release-upgrade to 16.04, mysql is still left at 5.6 and the issues surrounding the non-supported upgrade from 5.5 directly to 5.7 during the release upgrade never even surface.
Hope this helps,
Kailee.