当前位置: 首页 > news >正文

【Linux系统安装、配置mysql数据库详细过程,亲自部署成功后分享mysql安装过程,ARM架构安装、配置 mysql,包细节,各种系统架构和版本都适用!】

核心问题

我尝试网上各种办法在 Linux 系统上安装mysql,最后一运行总是报错,服务跑不起来,经过数次实验和尝试,最终发现了问题,并解决,希望大家以此为戒,以此为例。
导致mysql安装失败,或运行失败最核心的问题就是文件夹权限问题,大部分文件夹可能权限都对,但我总是有一个存放 mysql.sock 文件的文件夹权限无法 用 mysql用户访问,导致启动失败。
电脑配置:ARM64 架构,统信UOS 系统,安装 mysql9 版本。
如果你的架构和系统和我不一样,也能安装,只是可能个别命令不同,例如我是使用 systemctl 启动的mysql服务,你可能需要其它命令。

安装mysql

下载 mysql

去mysql官网下载即可,需要能访问外网的网络。mysql官网 https://dev.mysql.com/downloads/mysql/ ,百度一搜索就能搜到。注意要下载与Linux架构对应版本的压缩包:

例如 我下载的是mysql-9.5.0-linux-glibc2.28-aarch64.tar.xz

安装

解压

首先将压缩包解压到自定义的位置,此为mysql的安装位置,并在安装目录的文件夹内创建一个data文件夹,用于存放 mysql 的数据。例如,我的文件夹结构为 :
/mnt/dream/softs/mysql9 (安装目录)与 /mnt/dream/softs/mysql9/data (数据目录)

创建用户

1 我们创建出 mysql 用户组与用户:

sudogroupaddmysqlsudouseradd-gmysql-s/bin/false mysql

创建 一个名为 mysql 的用户组,在该用户组中创建一个名为 mysql 的用户。

初始化

2 然后对mysql进行初始化:

cd/mnt/dream/softs/mysql9 ./bin/mysqld--initialize--user=mysql--basedir=/mnt/dream/softs/mysql9--datadir=/mnt/dream/softs/mysql9/data

初始化时会产生一个随机生成的初始密码,记住这个密码,后面用于第一次登录mysql 使用。
初始化完成后,mysql 的安装目录中就会多出一些文件夹和文件,这是正常的。

编写配置

3 创建配置文件,在 /etc / my.cnf 位置,mysql能够自动识别该位置,内容如下:

[mysqld] basedir=/mnt/dream/softs/mysql9 datadir=/mnt/dream/softs/mysql9/data socket=/mnt/dream/softs/mysql9/mysql.sock port=3306 explicit_defaults_for_timestamp=true sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES [client] socket=/mnt/dream/softs/mysql9/mysql.sock

上面提到的文件夹和文件,注意修改为你自己的目录。

环境变量

4 配置环境变量:对 /etc / profile 修改:

# mysqlexportPATH=$PATH:/mnt/dream/softs/mysql9/bin:/mnt/dream/softs/mysql9/libexportPATH

注意修改为你自己的文件夹位置。
然后使用 source /etc/profile 命令刷新 环境变量。

创建服务

5 创建 mysql 服务:

sudocp-a/mnt/dream/softs/mysql9/support-files/mysql.server /etc/init.d/mysqldsudochmod+x /etc/init.d/mysqld# 这样就能 以 service mysql start 的方式启动和关闭mysql服务,刚配置上可使用 systemctl daemon-reload 刷新一下

注意权限

6 最关键的,把 和mysql沾边的所有位置都设置为mysql用户组和mysql用户,包括如下位置:

① /mnt/dream/softs/mysql9/mysql.sock# 前面对 mysql9 整个文件夹配置好以后,应该没问题,但如果没有使用这个位置,就要注意修改。② /etc/my.cnf ③ /etc/mysql/ ④ /var/log/mysqld.log# mysql 日志相关文件,默认在该位置⑤ /var/log/mysql/# mysql 日志相关文件,默认在该位置

使用sudo chown -R mysql:mysql 文件夹或文件修改为 mysql 用户可以操作的权限。

问题

以下问题,mysql 无法启动,应该都是权限不足导致的:

test@test-PC:/usr/local/mysql$servicemysql start# 想启动,报错如下Jobformysqld.service failed because the control process exited with error code. See"systemctl status mysqld.service"and"journalctl -xe"fordetails.

如果直接使用命令:mysql 然后就报错如下:

# ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/usr/local/mysql/mysql.sock' (2)# 这样的错误,大概率是mysql没有启动,启动后它会创建出对应的 sock文件,还要考虑这个文件所在的位置是否是 mysql 的权限。

再报错,就仔细想想有什么文件夹引用了,或者间接的用到了,但是没有修改权限。

启动服务

servicemysql start

可使用以下命令查看mysql是否正常启动:

ps-ef|grepmysql

修改初始密码

在 mysql 初始化时产了随机密码,使用该随机密码登录mysql :

mysql-uroot-p&cx_zsa%x23*

然后修改初始密码:

ALTERUSER'root'@'localhost'IDENTIFIED BY'123456';
http://www.jsqmd.com/news/468680/

相关文章:

  • 计算机系统基础知识(补充):硬件篇之指令系统详解
  • 导师又让重写?千笔AI,一键生成论文神器
  • OpenClaw踩坑记录
  • C++起始之路——list
  • 小迪安全|sql盲注一些知识点
  • MadLongTom
  • ✅ AI「记忆稳定层」Memory Stabilization Layer(MSL)这一层解决的是很多人遇到却解释不了的问题:❗为什么有的网站 曾经被 AI 推荐,但过一段时间又消失?
  • 进制转化类问题
  • 建筑幕墙玻璃加工案例:新启航激光打孔替代水刀,单项目降本超 50 万元
  • Windows下WSL(Ubuntu24.04)安装Nodejs
  • AI提供商配置里面,提供商类型 OpenAI 和 OpenAI-Response 有什么区别?
  • 老板问我OpenClaw、Agent、Coze、MCP、Skill有啥区别:一文看懂这些技术的差异化
  • 基于STM32的罐装水泥成分实时检测系统设计与实现(含有matlab仿真)
  • HTML5+CSS3从0到1学前端 第一节 HTML 标签语法
  • 俞敏洪入局、央企下场!双巨头押注银发康养旅游,市场按下加速键
  • Java全栈开发工程师的实战面试经历
  • 天梯赛练习(3月11日)
  • 二级圆锥圆柱齿轮减速器三维图纸及运动仿真(Proe三维+通用格式stp+仿真录像)
  • 智能风暴:2026年网络安全进入“AI对攻”时代
  • 许多水务管理者或许曾面临这样的困境:进水水质突发异常,经验丰富的老师傅凭借直觉迅速化解危机,但当老师傅退休后,这份“手感”还能留下几分?海量的实时数据涌入中控室,却难以转化为及时的调控指令——是数据不
  • 考虑综合负荷的主动配电网最优潮流计算:MATLAB实现与探索
  • 2025.03 GESP 7级 题解
  • NanoBanana2 接口接入实战:从 0 到 1 跑通调用,附完整代码示例
  • GC如何排查
  • ESP32-C6(支持 Wi-Fi 6)或 ESP32-H2 这两款和ESP32-S3的主要区别
  • 手持小型气象站:生活中的得力小助手!
  • 技术挑战盲盒
  • 腾讯版小龙虾安装体验
  • OPENCLAW连接飞书
  • STM32定时器- 核心区别:Prescaler vs. ClockDivision