本文将详细介绍如何在Linux系统上安装MySQL8.0.20,并涵盖从下载、安装到基本配置的整个过程
无论您是初学者还是有一定经验的系统管理员,本文都能为您提供详细的指导
一、准备工作 在开始安装之前,请确保您已经具备以下条件: 1.Linux系统:本文将以Ubuntu和CentOS为例进行说明,其他Linux发行版步骤类似
2.管理员权限:您需要具有root权限或使用sudo命令来执行安装和配置任务
3.网络连接:安装过程中需要从MySQL官方网站下载软件包,因此请确保您的系统能够访问互联网
二、在Ubuntu上安装MySQL8.0.20 2.1 更新软件包索引 在安装任何软件包之前,建议先更新系统的软件包索引,以确保安装的是最新版本的依赖包
bash sudo apt update 2.2 添加MySQL官方APT存储库 MySQL官方提供了一个APT存储库,方便用户下载和安装MySQL软件包
首先,您需要下载MySQL官方的APT存储库配置文件
bash wget https://dev.mysql.com/get/mysql-apt-config_0.8.13-1_all.deb 接下来,安装下载的配置文件
bash sudo dpkg -i mysql-apt-config_0.8.13-1_all.deb 安装过程中,会出现一个配置向导,您可以选择MySQL8.0 Server和开发工具等组件
建议选择默认配置,并继续安装
2.3 更新APT存储库并安装MySQL 添加完存储库后,更新APT存储库索引
bash sudo apt update 然后,安装MySQL8.0.20
bash sudo apt install mysql-server=8.0.20 注意:在某些情况下,版本号可能略有不同,您可以使用`apt cache search mysql-server`命令查找具体的版本号
2.4 启动MySQL服务 安装完成后,启动MySQL服务并设置开机自启动
bash sudo systemctl start mysql sudo systemctl enable mysql 2.5 安全配置MySQL MySQL安装完成后,建议运行安全配置脚本来加强数据库的安全性
bash sudo mysql_secure_installation 该脚本会提示您设置root密码、删除匿名用户、禁止root远程登录、删除测试数据库和重新加载权限表等操作
请根据您的实际需求进行配置
三、在CentOS上安装MySQL8.0.20 3.1 添加MySQL官方YUM存储库 MySQL官方提供了一个YUM存储库,方便用户下载和安装MySQL软件包
首先,下载并安装MySQL官方的YUM存储库RPM包
bash wget https://dev.mysql.com/get/mysql80-community-release-el7-3.noarch.rpm sudo rpm -ivh mysql80-community-release-el7-3.noarch.rpm 3.2禁用默认存储库(可选) MySQL官方YUM存储库包含多个版本的MySQL软件包,默认情况下会启用最新的GA(General Availability)版本
为了确保安装特定版本的MySQL(如8.0.20),可以禁用默认的存储库,并启用特定版本的存储库
首先,禁用默认的MySQL社区存储库
bash sudo yum-config-manager --disable mysql80-community 然后,启用MySQL8.0存储库
bash sudo yum-config-manager --enable mysql80-community-8.0 3.3 安装MySQL 更新YUM存储库索引并安装MySQL8.0.20
bash sudo yum update sudo yum install mysql-community-server-8.0.20 注意:在某些情况下,版本号可能略有不同,您可以使用`yum list mysql-community-server --showduplicates`命令查找具体的版本号
3.4 启动MySQL服务 安装完成后,启动MySQL服务并设置开机自启动
bash sudo systemctl start mysqld sudo systemctl enable mysqld 3.5 获取临时root密码 MySQL安装过程中会自动生成一个临时root密码,保存在MySQL日志文件中
您可以使用以下命令查找临时密码
bash sudo grep temporary password /var/log/mysqld.log 记录下临时密码,稍后在首次登录MySQL时会用到
3.6 安全配置MySQL 与Ubuntu类似,CentOS上安装MySQL后也建议运行安全配置脚本来加强数据库的安全性
bash sudo mysql_secure_installation 按照提示设置root密码、删除匿名用户、禁止root远程登录、删除测试数据库和重新加载权限表等操作
四、MySQL基本配置 无论您是在Ubuntu还是CentOS上安装的MySQL,以下基本配置步骤都是适用的
4.1 配置MySQL字符集和排序规则 MySQL默认使用`latin1`字符集和`latin1_swedish_ci`排序规则,这可能会导致在处理非英文字符时出现乱码问题
建议将字符集更改为`utf8mb4`,排序规则更改为`utf8mb4_general_ci`或`utf8mb4_unicode_ci`
编辑MySQL配置文件(通常是`/etc/mysql/my.cnf`或`/etc/my.cnf`)
bash sudo nano /etc/mysql/my.cnf 在`【mysqld】`部分添加或修改以下配置: ini 【mysqld】 character-set-server=utf8mb4 collation-server=utf8mb4_general_ci 保存并退出编辑器,然后重启MySQL服务使配置生效
bash sudo systemctl restart mysql 对于Ubuntu sudo systemctl restart mysqld 对于CentOS 4.2 配置防火墙 为了确保MySQL服务的安全性,建议配置防火墙以限制对MySQL端口的访问
默认情况下,MySQL使用3306端口
在Ubuntu上,您可以使用`ufw`防火墙
bash sudo ufw allow3306/tcp sudo ufw reload 在CentOS上,您可以使用`firewalld`防火墙
bash sudo firewall-cmd --zone=public --add-port=3306/tcp --permanent sudo firewall-cm