Linux CentOS 安装 MySQL 服务教程
Linux CentOS 安装 MySQL 服务教程
1. 查看系统和GNU C库(glibc)版本信息
1.1 查询机器 glibc 版本信息
glibc,全名GNU C Library,是大多数Linux发行版中使用的C库,为系统和应用程序提供核心的API接口。在Linux系统中,特别是在需要编译或运行依赖特定版本glibc的软件时,了解当前安装的glibc版本是非常重要的。
要查看CentOS 7系统中glibc的版本信息,你可以通过执行命令行指令来实现。以下是一些获取glibc版本信息的方法:
- 使用
ldd命令:ldd命令通常用于打印程序或文件所以来的共享库列表,但也可以用来查看 glibc 的版本信息。
执行命令:
这个命令会打印出ldd的版本信息,它通常与glibc的版本相匹配。输出的第一行会显示glibc的版本号,操作后如下所示:ldd --version

- 查询 glibc 包的版本: 在基于RPM的系统(如CentOS)中,glibc作为一个软件包安装。你可以使用
rpm命令查询 glibc 包的版本信息。
执行命令:
这个命令会返回已安装的glibc软件包的版本信息。rpm -a glibc
如下所示:

1.2 查询系统 CPU 架构信息
lscpu 命令在 Linux 系统中用于显示 CPU 架构信息,包括CPU的类型、核心数、每个核心的线程数、CPU的家族、型号等详细信息。这个命令聚合了从系统的多个资源(如/proc/cpuinfo文件)收集的信息,以便为用户提供一个用于系统CPU配置的全面视图。
以下是lscpu能够提供的一些关键信息:
- 架构:显示处理器架构,比如x86_64表示64位处理器。
- CPU运行模式:显示 CPU 支持的运行模式,通常是32位或64位。
- CPU数量:物理CPU数量。
- 每个CPU的核心数:每个物理CPU中核心的数量。
- 每个核心的线程数:每个核心能够同时处理的线程数,有助于了解CPU的超线程技术。
- CPU家族和型号:提供CPU的制造商、家族和具体型号信息。
- 缓存大小:显示CPU缓存的大小,这对于评估处理器性能非常重要。
如下所示:

2. 根据系统版本信息下载合适的 MySQL 服务
从上面的截图中可以看到,我本地的系统是架构是 aarch64,glibc 版本是 glibc-2.17-317.el7.aarch64,访问 MySQL 服务下载的官网:https://dev.mysql.com/downloads/mysql/
下载对应的版本如下所示:

下载好后,可以用 scp 命令将安装包上传至服务器中。
安装 MySQL 服务
-
解压压缩包
使用命令tar -xvf mysql-8.0.36-linux-glibc2.17-aarch64.tar.xz -
移动MySQL文件
将解压后的文件重命名,并移动到你指定的目录下
mv mysql-8.0.36-linux-glibc2.17-aarch64 mysql-8.0.36 -
添加用户和用户组
添加mysql用户和用户组:useradd mysql

-
创建 mysql 数据目录
使用命令mkdir data创建数据目录,如下所示:

并修改权限:chown mysql:mysql -R /opt/mysql/mysql-8.0.36 -
在MySQL目录下创建my.cnf文件
[mysqld] bind-address=0.0.0.0 port=3306 user=mysql basedir=/opt/mysql/mysql-8.0.36 datadir=/opt/mysql/mysql-8.0.36/data socket=/opt/mysql/mysql-8.0.36/mysql.sock # Disabling symbolic-links is recommended to prevent assorted security risks symbolic-links=0 # Settings user and group are ignored when systemd is used. # If you need to run mysqld under a different user or group, # customize your systemd unit file for mariadb according to the # instructions in http://fedoraproject.org/wiki/Systemd character_set_server=utf8 log-error=/opt/mysql/mysql-8.0.36/logs/mysql.log pid-file=/opt/mysql/mysql-8.0.36/logs/mysql.pid# # include all files from the config directory # # !includedir /etc/my.cnf.d
-
初始化 mysql
命令如下:
/opt/mysql/mysql-8.0.36/bin/mysqld --defaults-file=/opt/mysql/mysql-8.0.36/my.cnf --basedir=/opt/mysql/mysql-8.0.36/ --datadir=/opt/mysql/mysql-8.0.36/data/ --user=mysql --initialize -
查看数据库密码

-
安装 MySQL 服务
创建 systemd 服务文件,在 /etc/systemd/system/ 目录下,创建 mysql8.service 文件:[Unit] Description=MySQL 8 Server After=network.target After=syslog.target[Install] WantedBy=multi-user.target[Service] User=mysql Group=mysql ExecStart=/opt/mysql/mysql-8.0.36/bin/mysqld --defaults-file=/opt/mysql/mysql-8.0.36/my.cnf LimitNOFILE = 5000确保 ExecStart 中的路径指向你的 mysqld 可执行文件的位置,并且 --defaults-file 参数指向正确的配置文件。
重新加载 systemd 配置,让 systemd 识别新的服务:
sudo systemctl daemon-reload
启动 MySQL 服务:
sudo systemctl start mysql8
设置开机自启:
sudo systemctl enable mysql8 -
登录数据库
使用命令 /opt/mysql/mysql-8.0.36/bin/mysql -u root -p 如果使用 mysql -u root -p 需自行配置环境变量
输入之前初始化时候的密码,如果日志路径配置正确,密码会打印在日志中,如下所示:

如果之前修改了 socket file,需要执行 /opt/mysql/mysql-8.0.36/bin/mysql -u root -p --socket=/opt/mysql/mysql-8.0.36/mysql.sock 命令连接数据库,连上之后如下所示:

-
修改登录密码,并允许从任意主机连接
执行以下SQL命令修改密码:# 进入mysql库 use mysql; # 重新设置root用户密码为你想要设置的密码, 这里只能本地登录,可以将 localhost 替换成 % alter user 'root'@'localhost' identified with mysql_native_password BY '12345678'; # 刷新用户权限信息 flush privileges;
-
开放 3306 端口允许远程连接
firewall-cmd --permanent --add-port=3306/tcp firewall-cmd --reload登录 mysql,执行如下命令允许 root 账号可以远程登录:
use mysql; update user set host = '%' where host = 'localhost' and user = 'root'; flush privileges;修改后可以看到:

之后通过 sqlyog 或其他连接工具连接即可:

其他问题
通过设置别名来连接特定的 mysql 服务
由于上面的安装方法是在自定义的目录中保存的,如果本地安装了多个 MySQL 服务,通过设置环境变量我们不好决定要连接哪个版本的 MySQL,如果你只是偶尔需要使用这个特定版本的 MySQL 客户端,或者你不想修改 PATH 环境变量,设置一个别名(alias)可能是一个更简单的选择。
- 打开你的 shell 配置文件。同样地,根据你的 shell 和 Linux 发行版,找到对应的配置文件:~/.bashrc, ~/.bash_profile, ~/.zshrc, ~/.profile 等。
- 在文件中添加一个别名。在文件的末尾,添加以下行:
这会创建一个名为 mysql 的别名,当你在命令行中输入 mysql 时,实际上会调用你指定的路径下的 MySQL 客户端。alias mysql8='/opt/mysql/mysql-8.0.36/bin/mysql --socket=/opt/mysql/mysql-8.0.36/mysql.sock' - 保存文件并重新加载配置。保存你的配置文件后,使用下面的命令使改动生效:
source ~/.bashrc
之后我们可以直接使用命令 mysql8 -u root -p 来连接我们的 MySQL 服务了

相关文章:
Linux CentOS 安装 MySQL 服务教程
Linux CentOS 安装 MySQL 服务教程 1. 查看系统和GNU C库(glibc)版本信息 1.1 查询机器 glibc 版本信息 glibc,全名GNU C Library,是大多数Linux发行版中使用的C库,为系统和应用程序提供核心的API接口。在Linux系统中,特别是在…...
MSSQL 命令行操作说明 sql server 2022 命令行下进行配置管理
说明:本文的内容是因为我在导入Access2019的 *.accdb 格式的数据时,总是出错的背景下,不得已搜索和整理了一下,如何用命令行进行sql server 数据库和用户管理的方法,作为从Access2019 直接导出数据到sql server 数据库…...
【系统分析师】系统安全分析与设计
文章目录 1、安全基础技术1.1 密码相关1.1.1对称加密1.1.2非对称加密1.1.3信息摘要1.1.4数字签名1.1.5数字信封 1.2 PKI公钥体系 2、信息系统安全2.1 保障层次2.2 网络安全2.2.1WIFI2.2.2 网络威胁与攻击2.2.3 安全保护等级 2.3计算机病毒与木马2.4安全防范体系 1、安全基础技术…...
ActiveMQ 07 集群配置
Active MQ 07 集群配置 官方文档 http://activemq.apache.org/clustering 主备集群 http://activemq.apache.org/masterslave.html Master Slave TypeRequirementsProsConsShared File System Master SlaveA shared file system such as a SANRun as many slaves as requ…...
Redis(哨兵模式)
什么是哨兵机制 问题: redis 主从复制模式下, 一旦主节点由于故障不能提供服务, 需要人工进行主从切换, 同时大量客户端需要被通知切换到新的主节点上, 对于有一定规模的应用来说, 对于人力的资源消耗会很大.解决: 通过哨兵对主从结构进行监控, 一旦出现主节点挂了的情况, 自动…...
一种基于镜像指示位办法的RingBuffer实现,解决Mirror和2的幂个数限制
简介 在嵌入式开发中,经常有需要用到RingBuffer的概念,在RingBuffer中经常遇到一个Buffer满和Buffer空的判断的问题,一般的做法是留一个单位的buffer不用,这样做最省事,但是当RingBuffer单位是一个结构体时࿰…...
【Java开发指南 | 第十一篇】Java运算符
读者可订阅专栏:Java开发指南 |【CSDN秋说】 文章目录 算术运算符关系运算符位运算符逻辑运算符赋值运算符条件运算符(?:)instanceof 运算符Java运算符优先级 Java运算符包括:算术运算符、关系运算符、位运算符、逻辑运算符、赋值…...
【IC前端虚拟项目】验证环境方案思路和文档组织
【IC前端虚拟项目】数据搬运指令处理模块前端实现虚拟项目说明-CSDN博客 对于mvu的验证环境,从功能角度就可以分析出需要搭建哪些部分,再看一下mvu的周围环境哈: 很明显验证环境必然要包括几个部分: 1.模拟idu发送指令; 2.模拟ram/ddr读写数据; 3.rm模拟mvu的行为; …...
程序设计|C语言教学——C语言基础1:C语言的引入和入门
一、程序的执行 1.定义 解释:借助一个程序,那个程序能够试图理解你的程序,然后按照你的要求执行。下次执行的时候还需要从零开始解释。 编译:借助一个程序,能够像翻译官一样,把你的程序翻译成机器语言&a…...
初学python记录:力扣928. 尽量减少恶意软件的传播 II
题目: 给定一个由 n 个节点组成的网络,用 n x n 个邻接矩阵 graph 表示。在节点网络中,只有当 graph[i][j] 1 时,节点 i 能够直接连接到另一个节点 j。 一些节点 initial 最初被恶意软件感染。只要两个节点直接连接,…...
LlamaIndex 组件 - Storing
文章目录 一、储存概览1、概念2、使用模式3、模块 二、Vector Stores1、简单向量存储2、矢量存储选项和功能支持3、Example Notebooks 三、文件存储1、简单文档存储2、MongoDB 文档存储3、Redis 文档存储4、Firestore 文档存储 四、索引存储1、简单索引存储2、MongoDB 索引存储…...
在Linux系统中设定延迟任务
一、在系统中设定延迟任务要求如下: 要求: 在系统中建立easylee用户,设定其密码为easylee 延迟任务由root用户建立 要求在5小时后备份系统中的用户信息文件到/backup中 确保延迟任务是使用非交互模式建立 确保系统中只有root用户和easylee用户…...
JVM之方法区的详细解析
方法区 方法区:是各个线程共享的内存区域,用于存储已被虚拟机加载的类信息、常量、即时编译器编译后的代码等数据,虽然 Java 虚拟机规范把方法区描述为堆的一个逻辑部分,但是也叫 Non-Heap(非堆) 设置方法…...
Go 使用ObjectID
ObjectID介绍 MongoDB中的ObjectId是一种特殊的12字节 BSON 类型数据,用于为主文档提供唯一的标识符,默认情况下作为 _id 字段的默认值出现在每一个MongoDB集合中的文档中。以下是ObjectId的具体组成: 1. 时间戳(Timestamp&…...
基于SpringBoot+Vue的疾病防控系统设计与实现(源码+文档+包运行)
一.系统概述 在如今社会上,关于信息上面的处理,没有任何一个企业或者个人会忽视,如何让信息急速传递,并且归档储存查询,采用之前的纸张记录模式已经不符合当前使用要求了。所以,对疾病防控信息管理的提升&a…...
2024年阿里云4核8G配置云服务器价格低性能高!
阿里云4核8G服务器租用优惠价格700元1年,配置为ECS通用算力型u1实例(ecs.u1-c1m2.xlarge)4核8G配置、1M到3M带宽可选、ESSD Entry系统盘20G到40G可选,CPU采用Intel(R) Xeon(R) Platinum处理器,阿里云优惠 aliyunfuwuqi…...
关于ContentProvider这一遍就够了
ContentProvider是什么? ContentProvider是Android四大组件之一,主要用于不同应用程序之间或者同一个应用程序的不同部分之间共享数据。它是Android系统中用于存储和检索数据的抽象层,允许不同的应用程序通过统一的接口访问数据,…...
《1w实盘and大盘基金预测 day23》
这几天预测错麻了,哈哈哈,完全和技术没关系,全是消息面。 昨日预测: 2958-2984-3010 证券继续下跌,昨天诱多把我诱惑进去了(看2-3天的反弹也没了),今天直接出掉昨天买的。 整体操作…...
向量数据库与图数据库:理解它们的区别
作者:Elastic Platform Team 大数据管理不仅仅是尽可能存储更多的数据。它关乎能够识别有意义的见解、发现隐藏的模式,并做出明智的决策。这种对高级分析的追求一直是数据建模和存储解决方案创新的驱动力,远远超出了传统关系数据库。 这些创…...
WIN7用上最新版Chrome
1.下载WIN10最新版Chrome的离线安装包 谷歌浏览器 Chrome 最新版离线安装包下载地址 v123.0.6312.123 - 每日自动更新 | 异次元软件 文件名称:123.0.6312.123_chrome_installer.exe。 123.0.6312.123_chrome_installer.exe 文件右键解压缩得到 chrome.7z&#x…...
Flask RESTful 示例
目录 1. 环境准备2. 安装依赖3. 修改main.py4. 运行应用5. API使用示例获取所有任务获取单个任务创建新任务更新任务删除任务 中文乱码问题: 下面创建一个简单的Flask RESTful API示例。首先,我们需要创建环境,安装必要的依赖,然后…...
工业安全零事故的智能守护者:一体化AI智能安防平台
前言: 通过AI视觉技术,为船厂提供全面的安全监控解决方案,涵盖交通违规检测、起重机轨道安全、非法入侵检测、盗窃防范、安全规范执行监控等多个方面,能够实现对应负责人反馈机制,并最终实现数据的统计报表。提升船厂…...
R语言AI模型部署方案:精准离线运行详解
R语言AI模型部署方案:精准离线运行详解 一、项目概述 本文将构建一个完整的R语言AI部署解决方案,实现鸢尾花分类模型的训练、保存、离线部署和预测功能。核心特点: 100%离线运行能力自包含环境依赖生产级错误处理跨平台兼容性模型版本管理# 文件结构说明 Iris_AI_Deployme…...
相机Camera日志实例分析之二:相机Camx【专业模式开启直方图拍照】单帧流程日志详解
【关注我,后续持续新增专题博文,谢谢!!!】 上一篇我们讲了: 这一篇我们开始讲: 目录 一、场景操作步骤 二、日志基础关键字分级如下 三、场景日志如下: 一、场景操作步骤 操作步…...
STM32+rt-thread判断是否联网
一、根据NETDEV_FLAG_INTERNET_UP位判断 static bool is_conncected(void) {struct netdev *dev RT_NULL;dev netdev_get_first_by_flags(NETDEV_FLAG_INTERNET_UP);if (dev RT_NULL){printf("wait netdev internet up...");return false;}else{printf("loc…...
Android15默认授权浮窗权限
我们经常有那种需求,客户需要定制的apk集成在ROM中,并且默认授予其【显示在其他应用的上层】权限,也就是我们常说的浮窗权限,那么我们就可以通过以下方法在wms、ams等系统服务的systemReady()方法中调用即可实现预置应用默认授权浮…...
mysql已经安装,但是通过rpm -q 没有找mysql相关的已安装包
文章目录 现象:mysql已经安装,但是通过rpm -q 没有找mysql相关的已安装包遇到 rpm 命令找不到已经安装的 MySQL 包时,可能是因为以下几个原因:1.MySQL 不是通过 RPM 包安装的2.RPM 数据库损坏3.使用了不同的包名或路径4.使用其他包…...
ABAP设计模式之---“简单设计原则(Simple Design)”
“Simple Design”(简单设计)是软件开发中的一个重要理念,倡导以最简单的方式实现软件功能,以确保代码清晰易懂、易维护,并在项目需求变化时能够快速适应。 其核心目标是避免复杂和过度设计,遵循“让事情保…...
保姆级教程:在无网络无显卡的Windows电脑的vscode本地部署deepseek
文章目录 1 前言2 部署流程2.1 准备工作2.2 Ollama2.2.1 使用有网络的电脑下载Ollama2.2.2 安装Ollama(有网络的电脑)2.2.3 安装Ollama(无网络的电脑)2.2.4 安装验证2.2.5 修改大模型安装位置2.2.6 下载Deepseek模型 2.3 将deepse…...
CSS | transition 和 transform的用处和区别
省流总结: transform用于变换/变形,transition是动画控制器 transform 用来对元素进行变形,常见的操作如下,它是立即生效的样式变形属性。 旋转 rotate(角度deg)、平移 translateX(像素px)、缩放 scale(倍数)、倾斜 skewX(角度…...
