mysql8下载链接
链接:https://pan.baidu.com/s/1yBCDbDYUmQWjcM1SdS7Xng
提取码:t37m
上传到服务器上并解压
| tar -xvf mysql-8.0.21-linux-glibc2.12-x86_64.tar.xz |
解压包重命名为mysql
| mv mysql-8.0.21-linux-glibc2.12-x86_64 /usr/local/mysql |
创建数据文件夹以及用户组并赋予权限
| mkdir /usr/local/mysql/data |
| chown -R mysql.mysql /usr/local/mysql/ |
创建mysql_install_db安装文件初始化数据库
| chmod 777 ./mysql_install_db |
注意:以上操作也是在/usr/local路径下
切换到/usr/local/mysql路径下
初始化数据库
| bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data |
看到初始密码,记下来

修改my.cnf配置文件
将下面的内容添加到该文件中:
| [mysqld] |
| basedir = /usr/local/mysql |
| datadir = /usr/local/mysql/data |
| socket = /usr/local/mysql/mysql.sock |
| character-set-server=utf8 |
| port = 3306 |
| sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES |
| [client] |
| socket = /usr/local/mysql/mysql.sock |
| default-character-set=utf8 |
配置全局的环境变量
在最下面添加这两行代码:
| export PATH=$PATH:/usr/local/mysql/bin:/usr/local/mysql/lib |
| export PATH |
重新加载配置文件
启动mysql服务并修改密码,两种启动方式分别报两个错误
第一种,在安装目录中用 mysql文件启动
下图所示 报错 ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/usr/local/mysql/mysql.sock' (2)

第二种,在安装目录中用 mysqld文件启动

正确启动方式
| sudo /usr/local/mysql/support-files/mysql.server start |

用之前生成的密码登录
成功登录

修改密码
| ALTER user 'root'@'%' IDENTIFIED BY '这里写你的新密码'; |
设置能够远程登录
| update user set host='%' where user='root' limit 1; |
开启服务器的3306端口,退出mysql后,执行以下代码
| firewall-cmd --zone=public --add-port=3306/tcp --permanent; |
| firewall-cmd --list-ports; |
重新登录mysql,设置Navicat可以登录,并全局刷新
| ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '你的之前设置的新密码'; |
大工告成

设置shell命令启动
| cp /usr/local/mysql/support-files/mysql.server /usr/local/bin |
使用方式:
启动

停止

设置开机启动
在mysql的bin目录下面创建启动脚本
mysql_start.sh中写入以下内容,并保存
| sudo /usr/local/mysql/support-files/mysql.server start |
对mysql_start.sh授权
| chmod +x ./mysql_start.sh |
修改 /etc/rc.d/rc.local 文件,保证开机就执行mysql启动脚本
在rc.local文件内容的最下面一行写入启动脚本,然后保存
| |
| /usr/local/mysql/bin/mysql_start.sh |
对rc.local授权
| chmod +x /etc/rc.d/rc.local |
重启系统,完成开机自动启动mysql
关注我的公众号SpaceObj 领取idea系列激活码

【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)