本文将详细介绍在Linux环境下安装MySQL的几种主流方法,包括使用二进制包安装、通过YUM仓库安装、以及利用Docker容器化部署
这些方法各有优劣,适用于不同的使用场景和需求
一、二进制包安装MySQL 二进制包安装是一种相对灵活的方式,允许用户从MySQL官方网站下载最新或特定版本的安装包,并根据需要进行配置
以下是详细的安装步骤: 1.下载安装包: 首先,访问MySQL官方网站(如【downloads.mysql.com】(https://downloads.mysql.com/)),选择合适的Linux发行版和MySQL版本,下载对应的二进制安装包
例如,对于CentOS7,可以选择`mysql-8.0.xx-el7-x86_64.tar.gz`格式的压缩包
2.解压安装包: 使用`tar`命令解压下载的安装包
例如: bash tar -xf mysql-8.0.12-el7-x86_64.tar.gz mv mysql-8.0.12-el7-x86_64 /usr/local/mysql 3.创建必要的目录: 创建数据目录、日志目录等
例如: bash mkdir /usr/local/mysql/etc mkdir /usr/local/mysql/data mkdir /usr/local/mysql/logs 4.添加MySQL用户: 出于安全考虑,建议为MySQL服务创建一个专门的用户
例如: bash useradd mysql 5.配置MySQL: 编辑MySQL的配置文件`my.cnf`,设置数据目录、日志文件路径等关键参数
例如: ini 【mysqld】 datadir=/usr/local/mysql/data socket=/tmp/mysql.sock log-error=/usr/local/mysql/logs/mysqld.log pid-file=/usr/local/mysql/logs/mysqld.pid 6.初始化数据库: 使用`mysqld --initialize`命令初始化数据库
注意记录初始密码,稍后需要修改
7.设置权限: 确保MySQL目录和文件归MySQL用户所有
例如: bash chown -R mysql:mysql /usr/local/mysql 8.启动MySQL服务: 可以手动启动MySQL服务,或者将其添加到系统服务中以便开机自启动
手动启动的示例如下: bash cd /usr/local/mysql bin/mysqld_safe --defaults-file=/usr/local/mysql/etc/my.cnf & 9.修改root密码: 使用初始密码登录MySQL,然后修改root密码
二进制包安装的优点是灵活性和可控性高,适用于需要特定版本或自定义配置的场景
但缺点是安装过程相对复杂,需要手动处理依赖关系和配置
二、通过YUM仓库安装MySQL YUM仓库安装是一种简便快捷的方式,尤其适用于Red Hat系列发行版(如CentOS、Fedora等)
以下是详细的安装步骤: 1.下载并安装YUM Repository: 首先,从MySQL官方网站下载对应版本的YUM Repository安装包
例如: bash wget https://dev.mysql.com/get/mysql57-community-release-el7-10.noarch.rpm yum -y install mysql57-community-release-el7-10.noarch.rpm 2.安装MySQL Server: 使用YUM命令安装MySQL Server
例如: bash yum -y --nogpgcheck install mysql-community-server 3.启动MySQL服务并设置开机自启动: 使用`systemctl`命令启动MySQL服务,并设置开机自启动
例如: bash systemctl start mysqld.service systemctl enable mysqld.service 4.获取临时密码并修改: 在MySQL日志文件中找到初始临时密码,然后使用该密码登录MySQL并修改root密码
例如: bash grep password /var/log/mysqld.log mysql -u root -p临时密码 登录后,使用`ALTER USER`命令修改密码
同时,可以关闭密码复杂验证策略以简化密码设置过程
5.配置远程访问权限: 根据需要配置MySQL的远程访问权限
例如,授予root用户从任何主机访问的权限: sql GRANT ALL PRIVILEGES ON- . TO root@% IDENTIFIED BY 新密码 WITH GRANT OPTION; FLUSH PRIVILEGES; YUM仓库安装的优点是简便快捷,适用于大多数标准使用场景
但缺点是灵活性相对较低,安装的MySQL版本和配置可能受到YUM Repository的限制
三、利用Docker容器化部署MySQL Docker容器化部署是一种现代化的方式,适用于需要快速部署、弹性扩展和隔离环境的场景
以下是详细的安装步骤: 1.安装Docker引擎: 首先,在Linux系统上安装Docker引擎
这通常包括添加Docker YUM源、安装Docker软件包、启动Docker服务等步骤
例如: bash yum install -y yum-utils device-mapper-persistent-data lvm2 yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo yum makecache fast yum install docker-ce systemctl enable docker.service systemctl start docker.service 2.拉取MySQL镜像: 从Docker Hub或其他镜像仓库拉取MySQL镜像
例如: bash docker pull mysql:8.0 3.运行MySQL容器: 使用`docker run`命令运行MySQL容器,并指定必要的参数和环境变量
例如: bash docker run -itd -p3306:3306 --name mysql8 -e MYSQL_ROOT_PASSWORD=root123 mysql:8.0 这里,`-p3306:3306`将容器的3306端口映射到宿主机的3306端口,`--name mysql8`为容器指定名称,`-e MYSQL_ROOT_PASSWORD=root123`设置root用户的密码
4.管理MySQL容器: 使用`docker`命令管理MySQL容器,如查看容器日志、进入容器内部、停止和启动容器等
例如: bash docker logs mysql8 查看容器日志 docker exec -it mysql8 bash 进入容器内部 docker stop mysql8停止容器 docker start mysql8 启动容器 Docker容器化部署的优点是快速部署、弹性扩展和隔离环境,适用于微服务架构、DevOps等场景
但缺点是可能需要额外的Docker知识和配置,以及处理容器与宿主机之间的网络通信和数据持久化问题
总结 在Linux环境下安装MySQL有多种方法可选,每种方法都有其独特的优势和适用场景
二进制包安装