昨晚我尝试升级我的 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
我无法以常规方式取消安装过程,只能将其杀死。因此,它可能会导致一些问题,并且对于每个其他安装(将来)它都会尝试再次执行此操作。
如何防止或解决此升级?
这个解决方案解决了我的问题:
使用权限备份您的数据库文件:
删除mysql文件:
通过运行完全删除 MySQL:
建议使用Synaptic。
创建这些文件夹:
mysql setup 没有自动完成,我不知道为什么。
再次安装 MySQL
我曾经
sudo apt install lamp-server^
为 PHP 开发安装其他依赖项。停止 MySQL:
恢复数据库和文件:
重启 MySQL:
一个简单的解决方案是
sudo killall mysqld
在 apt-get 操作运行时进行。之后 apt 操作继续运行,没有任何错误(!)
我设法解决了这个问题,而不必清除所有东西。似乎问题在于从未创建过 sys 模式数据库,所以这是解决方案:
享受 mysql_upgrade 再次工作。我想这可能是升级脚本搞砸了。
如果您的 root@
localhost
帐户没有密码,则安装后过程中存在错误,如此处所述( 特别参见线程的最后一条评论)TMP*
文件/var/lib/mysql-files
编辑文件
/var/lib/dpkg/info/mysql-server-5.7.postinst
并注释(使用#)第 370 行:echo "ALTER USER 'root'@'localhost' IDENTIFIED WITH 'auth_socket';" >> "$initfile"
再次运行
sudo dpkg --configure -a
我也有这个问题。每次我开始 apt get 并安装时,该过程都会在数据库更新之后或期间挂起。这里没有其他解决方案有效。
最后我清除了
并按照此处mysql 的说明进行手动安装
然后我用我的旧数据覆盖了数据目录
最后添加了这样的systemd服务
/lib/systemd/system/mysql.service
然后跑了
然后一切似乎都像以前一样工作并且mysql没有破坏系统更新
当然,缺点是我将来需要手动更新。