然而,无论是出于版本升级、系统清理还是故障排查的需要,我们有时可能需要对MySQL进行卸载和重新安装
本文将详细介绍在Linux系统中如何高效地卸载和安装MySQL,确保每一步操作都准确无误
一、MySQL卸载步骤 卸载MySQL是一个需要谨慎操作的过程,因为不彻底的卸载可能会导致残留文件影响新版本的安装或占用不必要的系统资源
以下提供了基于不同安装方式的MySQL卸载步骤: 1. 通过包管理器卸载(适用于YUM或APT) 对于通过YUM(如CentOS、RHEL等)或APT(如Ubuntu、Debian等)包管理器安装的MySQL,可以使用相应的命令进行卸载
对于基于Red Hat的系统(如CentOS): sudo yum remove mysql-server mysql-client mysql-common sudo yum autoremove sudo yum clean all 对于基于Debian的系统(如Ubuntu): sudo apt-get remove --purge mysql-server mysql-client mysql-common sudo apt-get autoremove sudo apt-get autoclean 这些命令不仅会卸载MySQL的主程序包,还会清理相关的依赖包和缓存
2. 手动卸载(适用于源码编译安装或包管理器卸载不彻底的情况) 如果MySQL是通过源码编译安装的,或者包管理器卸载后仍有残留文件,那么需要手动进行卸载
步骤一:停止MySQL服务 在卸载之前,首先需要停止MySQL服务,以避免在卸载过程中造成数据损坏或系统不稳定
sudo systemctl stop mysqld 或者,在某些系统中可能需要使用以下命令: sudo service mysqld stop 步骤二:删除MySQL目录和文件 接下来,需要删除MySQL安装目录、数据目录、配置文件、日志文件以及用户组和用户
sudo rm -rf /var/lib/mysql sudo rm -rf /etc/mysql sudo rm -rf /var/log/mysql sudo userdel -r mysql sudo groupdel mysql 注意,这些命令会永久删除指定的目录和文件,因此在执行之前请确保已经备份了所有重要的数据
步骤三:检查并删除残留文件 使用`find`命令检查系统中是否还有残留的MySQL文件或目录,并将其删除
sudo find / -name mysql 根据`find`命令的输出结果,手动删除残留的MySQL文件或目录
3. 使用MySQL自带的卸载脚本(如果可用) 某些版本的MySQL提供了自带的卸载脚本,可以尝试使用这些脚本来进行卸载
通常,这些脚本位于MySQL的安装目录下
sudo /usr/local/mysql/bin/mysql_install_db --remove 请注意,并非所有版本的MySQL都提供自带的卸载脚本,因此在使用之前请查阅相关的官方文档或帮助信息
二、MySQL安装步骤 在成功卸载MySQL之后,接下来我们将详细介绍如何在Linux系统中重新安装MySQL
以下提供了两种常见的安装方法:YUM安装和手动安装
1. YUM安装方法 YUM是一种用于基于RPM的Linux发行版的包管理器,它简化了软件的安装、更新和删除过程
以下是使用YUM安装MySQL的步骤: 步骤一:下载并安装MySQL YUM Repository 首先,需要下载并安装MySQL的YUM Repository,以便从MySQL官方仓库中获取MySQL软件包
wget -c http://dev.mysql.com/get/mysql57-community-release-el7-10.noarch.rpm sudo yum -y install mysql57-community-release-el7-10.noarch.rpm 请注意,上述命令中的URL和版本号可能会随着MySQL的更新而发生变化,请确保使用最新的URL和版本号
步骤二:安装MySQL服务器 接下来,使用YUM命令安装MySQL服务器软件包
sudo yum -y --nogpgcheck install mysql-community-server 步骤三:启动MySQL服务并设置开机自启动 安装完成后,需要启动MySQL服务并设置其在系统启动时自动启动
sudo systemctl start mysqld.service sudo systemctl enable mysqld.service 步骤四:获取并修改root用户密码 MySQL安装完成后,会在`/var/log/mysqld.log`文件中生成一个临时密码
使用`grep`命令查找该密码
sudo grep password /var/log/mysqld.log 找到临时密码后,使用`mysql`命令登录MySQL数据库,并使用`ALTER USER`语句修改root用户的密码
mysql -u root -p临时密码 -- 在MySQL提示符下执行以下命令: ALTER USER root@localhost IDENTIFIED BY 新密码; 为了提高安全性,建议设置强密码,并遵循密码策略的最佳实践
步骤五:授予root用户远程管理权限(可选) 如果需要从远程主机管理MySQL数据库,可以授予root用户远程访问权限
GRANT ALL PRIVILEGES ON- . TO root@% IDENTIFIED BY 新密码 WITH GRANT OPTION; FLUSH PRIVILEGES; 步骤六:卸载YUM Repository(可选) 由于安装了YUM Repository后,每次执行YUM操作都会检查MySQL仓库的更新,这可能会增加不必要的网络开销
因此,可以选择卸载YUM Repository
sudo yum -y remove mysql57-community-release-el7-10.noarch 2. 手动安装方法 对于需要自定义安装路径或版本的用户,可以选择手动安装MySQL
以下是手动安装MySQL的步骤: 步骤一:下载MySQL安装包 从MySQL官方网站下载所需版本的安装包,并将其上传到Linux系统的指定目录
通常,安装包为压缩包格式(如tar.gz)
步骤二:解压缩安装包 使用`tar`命令解压缩安装包,并将其重命名为方便识别的名称
tar -zxvf mysql-5.7.20-linux-glibc2.12-x86_64.tar.gz mv mysql-5.7.20-linux-glibc2.12-x86_64 mysql 步骤三:创建数据目录和日志文件目录 进入MySQL安装目录,并创建数据目录和日志文件目录
cd /usr/local/mysql mkdir data logs 步骤四:配置MySQL 编辑或创建MySQL配置文件(如my.cnf),并设置相关参数
以下是一个示例配置文件的内容: 【mysql】 设置mysql客户端默认字符集 default-character-set=utf8 socket=/var/lib/mysql/mysql.sock 【mysqld】 设置3306端口 port=3306 socket=/var/lib/mysql/mysql.sock 设置mysql的安装目录 basedir=/usr/local/mysql 设置mysql数据库的数据的存放目录 datadir=/usr/local/mysql/data 允许最大连接数 max_connections=200 服务端使用的字符集默认为8比特编码的latin1字符集 character-set-server=utf8 创建新表时将使用的默认存储引擎 default-storage-engine=INNODB lower_case_table_names=1 max_allowed_packet=