# MySQL 5.6 upgrade to MySQL 5.7



## Mwh65 (Apr 27, 2018)

FreeBSD 10.3
PHP 5.6.35

I ran `pkg install mysql57-server` and to my surprise it wants to re-install MySQL 5.6.40-client as part of the upgrade ...


```
Updating FreeBSD repository catalogue...
FreeBSD repository is up to date.
All repositories are up to date.
Checking integrity... done (2 conflicting)
  - mysql57-server-5.7.22 conflicts with mysql56-server-5.6.40 on /usr/local/bin/innochecksum
  - mysql57-client-5.7.22_1 conflicts with mysql56-client-5.6.40 on /usr/local/bin/mysql
Checking integrity... done (0 conflicting)
The following 5 package(s) will be affected (of 0 checked):

Installed packages to be REMOVED:
mysql56-server-5.6.40

New packages to be INSTALLED:
mysql57-server: 5.7.22
protobuf: 3.5.2
mysql57-client: 5.7.22_1

Installed packages to be REINSTALLED:
mysql56-client-5.6.40

Number of packages to be removed: 1
Number of packages to be installed: 3
Number of packages to be reinstalled: 1

The process will require 118 MiB more space.
1 MiB to be downloaded.

Proceed with this action? [y/N]:
```

I've not continued on with installing so I can check if this is correct with you guys.


----------



## obsigna (Apr 27, 2018)

The default MySQL version for the precompiled packages is 5.6. So all packages which depend on MySQL want to have 5.6. You can identify which of your packages depend on MySQL with the following command:
`pkg info -r mysql56-client`

Then you would run `pkg delete -f` on each of the listed packages, and then `pkg install -f mysql57-server`, and then re-install the now missing ports by entering into each of the ports directories and execute `make install clean` from there.

Some well known people will tell you not to mix ports & packages – I disagree.

Anyway, I would simply stay with MySQL 5.6 because this is the last useful version for tiny installations. In MySQL 5.7 you cannot turn off the memory hog InnoDB anymore - at least half a Gig of RAM has gone only for this.


----------

