蛙扑下载站:安全、绿色、放心的专业下载站! 首页|最近更新|专题集合|站内导航

Linux系统安装MySQL8详细教程

时间:2026-10-07 21:24:20 来源:www.vaopo.com 人气:人

一、登录服务器并检查环境

打开终端或者通过SSH客户端连接你的Linux服务器。建议使用CentOS 7以上版本或者Ubuntu 18.04以上版本,系统内核稳定能减少很多兼容问题。连上服务器后,先运行一句uname -a查看当前系统版本,确认是64位架构。MySQL 8对系统依赖有一定要求,老旧的32位系统直接放弃,避免后面报错浪费时间。

二、清理可能存在的旧版数据库

如果这台机器以前装过MySQL或者其他分支版本,必须先清理干净。否则新版的配置文件和旧版冲突会导致服务起不来。执行rpm -qa | grep mysql把已经安装的包列出来,然后用yum remove或者apt-get purge把它们彻底删掉。删完后记得检查一下/var/lib/mysql目录还在不在,如果在就手动rm -rf删除干净,不留残留文件。

三、添加MySQL官方YUM源

现在最稳妥的方式是用官方提供的仓库来装。以CentOS为例,直接在命令行输入wget https://dev.mysql.com/get/mysql80-community-release-el7-9.noarch.rpm,把安装包下载到本地。下载完成后执行rpm -ivh mysql80-community-release-el7-9.noarch.rpm,系统会自动在/etc/yum.repos.d/目录下生成对应的repo文件。这一步完成了以后,你的系统就能识别到MySQL 8的软件包信息了。

四、执行正式安装

源配好之后,运行yum clean all刷新缓存,接着输入yum install mysql-community-server。安装过程中会提示是否导入GPG密钥,直接按y确认即可。系统会自动拉取MySQL服务端、客户端以及相关依赖库,全程不需要人工干预。等待进度条走完,看到Complete!字样就说明核心程序已经到位。整个过程大概需要几分钟,网速快的时候更短。

五、启动服务并设置开机自启

安装完默认不会自动运行,需要手动拉起。执行systemctl start mysqld启动数据库服务,用systemctl status mysqld查看状态,确保显示的是active running。为了服务器重启后数据库能自己跟着起来,记得执行systemctl enable mysqld。这两步做完,基础环境就算搭建完毕了。

六、获取初始密码并完成安全配置

MySQL 8安装好后会随机生成一个临时密码,存在错误日志里。用grep命令搜索日志:grep 'temporary password' /var/log/mysqld.log,复制那串包含大小写字母数字和符号的密码。然后执行mysql_secure_installation进入初始化向导。第一步会让你输入刚才拿到的临时密码,成功后会提示你修改root密码。强烈建议设置强度高的密码,开启validate_password插件验证。后面连续几个选项全部按y确认,分别代表移除匿名用户、禁止root远程登录、删除测试数据库、刷新权限表。

七、开放防火墙与允许远程连接

改完密码后,普通命令行可以操作了。输入mysql -u root -p登录进去。先执行ALTER USER 'root'@'localhost' IDENTIFIED BY '你的新密码';把本地登录密码固定下来。接着创建用于远程连接的账号,或者直接修改root的host。执行CREATE USER 'admin'@'%' IDENTIFIED BY '强密码';GRANT ALL PRIVILEGES ON *.* TO 'admin'@'%';FLUSH PRIVILEGES;。这时候数据库内部权限已经放开,但Linux自带的防火墙还会拦截端口。如果是CentOS运行firewall-cmd --zone=public --add-port=3306/tcp --permanent && firewall-cmd --reload。Ubuntu用户则用ufw allow 3306/tcp放行。最后用Navicat或者DBeaver测试连通性,显示连接成功就彻底搞定了。

八、日常维护与避坑指南

MySQL 8默认的字符集是utf8mb4,排序规则是utf8mb4_0900_ai_ci,这对存emoji表情和多语言非常友好,一般不用特意改。如果遇到客户端连接报错2058或者caching_sha2_password,是因为新版默认认证插件变了。可以在my.cnf配置文件里加一行default_authentication_plugin=mysql_native_password,然后重启服务,老版本的客户端就能正常连上了。定期用mysqldump备份重要数据,磁盘空间占满前及时清理binlog,这些都是保证线上稳定的基本操作。