我已经在我们的一台 Linux 机器上安装了 mysql 集群,我们进行了试验并决定改用复制。现在我想删除它并安装 mysql-server。
我已经尽可能地删除了所有旧文件,现在每次我
apt-get install mysql-server
似乎已安装,但没有将文件放入 /etc
我尝试清除安装并重试几次,但没有成功。
有人知道如何彻底删除 mysql 并启动一个新系统吗?
** 更新 **
尝试过建议的清除删除
apt-get --purge remove mysql-server && apt-get clean && apt-get install mysql-server
Reading package lists... Done
Building dependency tree
Reading state information... Done
Package mysql-server is not installed, so not removed
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
1 not fully installed or removed.
After this operation, 0B of additional disk space will be used.
Setting up mysql-server-5.0 (5.0.67-0ubuntu6) ...
* Stopping MySQL database server mysqld [ OK ]
/var/lib/dpkg/info/mysql-server-5.0.postinst: line 143: /etc/mysql/conf.d/old_passwords.cnf: No such file or directory
dpkg: error processing mysql-server-5.0 (--configure):
subprocess post-installation script returned error exit status 1
Errors were encountered while processing:
mysql-server-5.0
E: Sub-process /usr/bin/dpkg returned an error code (1)
答案1
你尝试过这个吗?
apt-get --purge remove mysql-server && apt-get clean && apt-get install mysql-server
更新:
清除失败,因为删除脚本在查找文件时出错。您需要让包管理器恢复到一致状态;乍一看,我很想重新安装 mysql-server,touch
对丢失的文件执行操作,然后重新执行清除,但我怀疑脚本可能试图提取存储在其中的密码,所以这可能也行不通。
答案2
您没有说明是通过软件包安装还是从源代码安装。如果您通过软件包安装,则需要先清除软件包。Debian 软件包有两种删除状态:已删除和已清除。删除软件包时,它会删除软件包中的文件,但会保留配置文件和任何非空目录。清除软件包会运行一个额外的脚本来清理目录和附加文件。您可以通过运行以下命令来清除软件包:
# dpkg --purge package
或者
# apt-get remove --purge package
这可能无法完全解决您的问题。dpkg 对配置文件有特殊支持。如果升级时配置文件不存在,它不会替换它们。这样您就不会删除文件,而只会发现升级会将其恢复。您可以通过使用 --force-confmiss 告诉 dpkg 忽略此行为来解决这个问题
# dpkg --force-confmiss -i /tmp/foo_2.0.0-14_all.deb
您现在应该发现配置文件已安装。
答案3
apt-get --purge 删除 mysql 服务器
apt-get 清理
apt-get 安装 mysql 服务器
另外是使用 GUI 进行安装,然后重新安装,有时会效果更好。
答案4
以下最终对我有用:
apt-get --purge remove mysql-server mysql-server-5.1 mysql-common mysql-server*