如何升级到 MySQL 8.0?

如何升级到 MySQL 8.0?

我在 Ubuntu 服务器 18.04 上有一个 Drupal 站点 8.6.10,带有 MySQL 5.7.25

我想将 MySQL 更新到 8.0 版本

以下是我遵循的步骤:

  1. 我备份了我的数据库。

  2. 我使用以下命令从我的服务器上卸载了 MySQL:

    $ sudo systemctl stop mysql
    $ sudo apt remove mysql-*
    $ sudo apt purge mysql-*
    $ sudo apt autoremove
    $ sudo dpkg -l | grep mysql | grep ii
    
  3. 我使用以下命令添加了存储库:

    $ wget https://repo.mysql.com//mysql-apt-config_0.8.12-1_all.deb
    
  4. 我使用以下命令安装了该包:

    $ sudo dpkg -i mysql-apt-config_0.8.12-1_all.deb
    

在此处输入图片描述

在此处输入图片描述

在此处输入图片描述

在此处输入图片描述

我的问题 :

  1. 我使用以下命令安装 MySQL:

    $ sudo apt update
    $ sudo apt install mysql-server
    

当我执行步骤 5 时,它会安装 MySQL 5.7,为什么不安装版本 8?

在此处输入图片描述

答案1

基本上mysql-apt-config_0.8.12-1_all.deb是一个添加 MySQL 存储库和密钥的包。似乎在安装此包时您在某个地方做出了错误的选择。您可以手动执行该 deb 包所做的事情。

  • 首先创建一个具有 sudo 权限的新文本文件:

    sudo nano /etc/apt/sources.list.d/mysql.list
    
  • 添加以下行:

    deb http://repo.mysql.com/apt/ubuntu/ bionic mysql-apt-config
    deb http://repo.mysql.com/apt/ubuntu/ bionic mysql-8.0
    deb http://repo.mysql.com/apt/ubuntu/ bionic mysql-tools
    #deb http://repo.mysql.com/apt/ubuntu/ bionic mysql-tools-preview
    deb-src http://repo.mysql.com/apt/ubuntu/ bionic mysql-8.0
    

    您可以根据所需的软件包注释/取消注释存储库。使用Ctrl+X后跟保存并退出Y

  • 如果你使用的是其他版本的 Ubuntu,你应该替换bionic其替换为代码名称使用 当前安装的 Ubuntu 系统sed

    sudo sed -i 's/bionic/'$(lsb_release -sc)'/' /etc/apt/sources.list.d/mysql.list
    

    然后运行

    sudo apt update
    
  • 你会得到一个错误,例如

    Err:1 http://repo.mysql.com/apt/ubuntu bionic InRelease                        
      The following signatures couldn't be verified because the public key is not available: NO_PUBKEY <some key value>
    
  • 使用添加此密钥

    sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys <key value>
    
  • 更新并安装 MySQL

    sudo apt update
    sudo apt install mysql-server
    

笔记:

  1. Ubuntu 19.10 在其官方存储库中有 MySQL 8.0,因此,除非需要最新更新,否则无需添加上述源。
  2. 如果按照上述方法操作,APT 仍然会安装 MySQL v5.7,则可能是 MySQL 在该版本停止公开支持之前就删除了该版本的存储库信息。请参阅我的其他答案无法在 Ubuntu 19.04 上安装 MySQL 8了解详情。

答案2

$ sudo systemctl stop mysql
$ sudo apt remove mysql-*
$ sudo apt purge mysql-*
$ sudo apt autoremove
$ sudo dpkg -l | grep mysql | grep ii
$ wget https://repo.mysql.com//mysql-apt-config_0.8.12-1_all.deb
$ sudo dpkg -i mysql-apt-config_0.8.12-1_all.deb
$ sudo sed -i 's/bionic/'$(lsb_release -sc)'/' /etc/apt/sources.list.d/mysql.list
$ sudo apt update

这一系列命令对我有用。安装前检查版本

sudo apt-cache policy mysql-server

但我仍然不知道如何从缓存中删除其他包。

完成安装输入

sudo apt install mysql-server

相关内容