升级到 MySQL 5.7.15 在 Ubuntu 16.04 上崩溃

Omi*_*mid 13 upgrade mysql 16.04

昨晚我尝试升级我的 Ubuntu 操作系统,而 MySQL 5.7.15 是其中之一。似乎升级成功,因为 mysql 正在正常工作,但安装过程已停止使用此消息:

This installation of MySQL is already upgraded to 5.7.15, 
use --force if you still need to run mysql_upgrade
Run Code Online (Sandbox Code Playgroud)

我无法以常规方式取消安装过程,只能将其杀死。因此,它可能会导致一些问题,并且对于每个其他安装(将来),它会尝试再次执行此操作。

如何防止或解决此升级?

Omi*_*mid 13

这个解决方案解决了我的问题:

  1. 使用权限备份您的数据库文件:

    sudo cp -avt /your/backup/directory /var/lib/mysql /etc/mysql/my.cnf
    
    Run Code Online (Sandbox Code Playgroud)
  2. 删除mysql文件:

    sudo rm -rv /etc/mysql 
    
    Run Code Online (Sandbox Code Playgroud)
  3. 通过运行完全删除 MySQL:

    sudo apt purge mysql-server mysql-server-5.7 mysql-server-core-5.7 mysql-client-5.7 mysql-client-core-5.7
    
    Run Code Online (Sandbox Code Playgroud)

    建议使用Synaptic

  4. 创建这些文件夹:

    sudo mkdir -p /etc/mysql/conf.d
    
    Run Code Online (Sandbox Code Playgroud)

    mysql 设置没有自动完成,我不知道为什么。

  5. 再次安装 MySQL

    sudo apt install mysql-server
    
    Run Code Online (Sandbox Code Playgroud)

    我曾经sudo apt install lamp-server^为 PHP 开发安装其他依赖项。

  6. 停止 MySQL:

    sudo service mysql stop 
    
    Run Code Online (Sandbox Code Playgroud)
  7. 恢复数据库和文件:

    sudo cp -a /your/backup/directory/mysql /var/lib   
    sudo cp /your/backup/directory/my.cnf /etc/mysql 
    
    Run Code Online (Sandbox Code Playgroud)
  8. 重启 MySQL:

    sudo service mysql start 
    
    Run Code Online (Sandbox Code Playgroud)


小智 10

一个简单的解决方案是sudo killall mysqld在 apt-get 操作运行时。

apt 操作在此之后继续运行而没有任何错误(!)