我很惊讶地发现我的一个特权用户在 Linux 机器上安装了 MySQL。服务器 (mysqld) 正在运行,但什么也没做。我的技能全在 Oracle 上,所以我不知道如何关闭和删除 MySQL 安装。
答案1
您没有提到您正在使用什么发行版,但如果他们通过 yum 在基于 RedHat 的发行版上安装了它,您可以使用以下命令删除:
yum remove mysql-server
如果他们将其安装在自己的用户空间中,您只需删除运行服务器的二进制文件即可。如果是在 Debian/Ubuntu 上,您可以使用 sparks 提到的方法。我也可以另外使用:
killall mysqld; killall mysqld_safe
答案2
这完全取决于原始用户如何安装软件包。如果他们使用操作系统的内置软件包管理,那么应该像 Dave 的答案中的 yum 行一样简单,或者在基于 Debian 的系统(包括 Ubuntu)上,您可以使用:
apt-get remove mysql-server
(顺便说一句,如果您还想删除自定义配置文件,请使用 purge 而不是 remove)
如果您不知道在 Ubuntu 上要删除的确切软件包名称:
dpkg -l|grep mysql
如果相关用户没有使用包管理工具,那么唯一真正的解决方案就是确保服务器不会在启动时加载(chkconfig 或 update-rc.d 是两个方便的工具 - 检查它们的手册页)并手动删除所有已安装的文件。
答案3
如果用户碰巧设置了任何数据库,您可能也需要删除它们。在 MySQL 的软件包基础安装中,可以在 中找到表文件/var/lib/mysql
。如果它们在其他地方,您只需搜索表文件即可。它们将具有.frm
扩展名,并且应包含在以它们关联的数据库命名的目录中。
答案4
也许用户自己不知道他安装了 mysql。如果 mysql 是其他程序的依赖项,则可能会发生这种情况。查看包管理器日志文件,例如:对于 redhat,请检查 /var/log/yum.log。您可能会发现同时安装了其他一些包。然后,您可以推断出用户想要做什么,也许您还想删除一些您不知道安装的其他包!
在最近的 redhat 上,您可以运行“yum history list”,然后在 /var/log/yum.log 中找到安装日期后,您可以推断出哪个 yum 操作与 mysql 安装相关,您可以例如运行“yum history info operation_number”来获取安装的详细信息,或者运行“yum history undo operation_number”来撤销操作并卸载相关软件包。