步骤10:设置启动脚本
复制 MySQL 启动脚本到 /etc/init.d 目录下,并且将脚本设置为开机启动,这样一来 MySQL 就能在系统启动的时候自动启动了。
$ sudo cp /opt/mysql/server-5.6/support-files/mysql.server /etc/init.d/mysql $ sudo update-rc.d mysql defaults
步骤11:(仅限 Ubuntu) 编辑AppArmor配置
MySQL 的上个版本安装时会为 AppArmor 服务创建一个配置文件,这个文件在 MySQL 卸载后会保留在系统中,但是它与现在安装好的 MySQL 版本不兼容。你需要重新编辑下这个配置文件,然后 MySQL 服务才能正常启动。
首先,建一个软链接。
$ sudo ln -s /opt/mysql/server-5.6/bin/mysqld /usr/sbin/mysqld
然后编辑 MySQL AppArmor 配置文件。
$ sudo vi /etc/apparmor.d/usr.sbin.mysqld
/opt/mysql/server-5.6/lib/plugin/ r,
/opt/mysql/server-5.6/lib/plugin/.so mr,
/opt/mysql/server-5.6/share/** r,
最后重启 AppArmor 服务。
$ sudo service apparmor restart
步骤12:(还是仅限 Ubuntu)删除上个 MySQL 版本留下的自启动配置文件。
这个版本的 MySQL 使用 SysVinit (就是 /etc/init.d/mysql)来代替。
$ sudo rm /etc/init/mysql.conf
步骤13:启动 MySQL 服务。
$ sudo service mysql start
步骤14:恢复 MySQL 数据库。
$ sudo mysql -u root -p < /backup/backup_db.sql
步骤15:最后,升级 MySQL 系统表。
$ sudo /opt/mysql/server-5.6/bin/mysql_upgrade -v -u root -p
解决 MySQL 升级过程中产生的问题
如果 Ubuntu 下的 MySQL 服务启动时出现如下错误,就是由于旧版 MySQL AppArmor 配置文件禁止其运行而引起。你需要参考步骤11来更新 AppArmor 的配置文件。
Dec 20 19:57:48 ubuntu kernel: [ 5856.960592] type=1400 audit(1387598268.807:39): apparmor="STATUS" operation="profile_replace" name="/usr/sbin/mysqld" pid=25216 comm="apparmor_parser"