linux环境mysql安装配置踩坑
背景:
最近公司项目希望改造工作流ACTIVITI5.x的源码框架支持大数据量(历史表单表数据达到10亿),
方案暂定为
1.使用动态数据源
2.将工作流归档历史数据数据保存到一个库中这里定义为读库,
3.在办办件的数据单独一个库可读可写,
4.查询历史数据的时候单独从归档库中查询(归档库中数据采用年月分区
哈哈我感觉很悬!!!!,我本来想使用大数据clickhouse后面被否定了,那我就按照领导的来吧,后面会记录使用clickhouse方案),
这里动态数据源我本地的,一个windows环境配置的mysql ,另外一个是在虚拟机上配置的mysql,没想到在虚拟机上配置mysql花费了我大量的时间特意记录一下。
linux环境安装mysql
官网:MySQL :: Download MySQL Community Server (Archived Versions)
第一步:下载并上传到服务器上 mysql-5.7.37-linux-glibc2.12-i686.tar.gz

第二步:将安装包统一解压并放到/usr/local/下的mysql文件
tar -zxvf mysql-5.7.37-linux-glibc2.12-i686.tar.gz
mv 【mysql-5.7.37-linux-glibc2.12-i686.tar.gz解压后文件】 /usr/local/mysql/
注:没有mysql文件目录会移动时会自动创建(也可以手动创建)
第三步:在cd /etc/下创建mysql的配置my.cnf
touch my.cnf
添加如下配置
[mysqld]
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
user=mysql
symbolic-links=0
[mysql-safe]
log-error=/var/log/mysqld.log
pid-file=/var/local/mysql/mysql.pid
tmpdir=/tmp
[mysqld]
port=3307
basedir=/usr/local/mysql
datadir=/usr/local/mysql/data
[client]
default-character-set=utf8
[mysql]
default-character-set=utf8
第四步:添加用户及用户组
设置用户组
groupadd mysql
新增用户
useradd -r -g mysql mysql
备注:
-r选项表示创建一个系统用户(system user),而不是一个普通用户。系统用户通常用于运行系统服务或应用程序,它们通常没有登录权限
-g选项用于指定用户所属的初始主要组
第五步:设置mysql数据存储目录
这里设置在/usr/local/mysql/data下没有data手动创建data目录
mkdir data
第六步:设置/usr/local/mysql目录及子目录的用户权限
chown -R mysql:mysql ./
注:这个命令是在usr/local/mysql目录下执行

第七步:初始化mysql
./mysqld --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --initialize
注:
--basedir指定mysql的安装目录
--datadir 指明mysql的数据存储目录

正常情况下生成这样的图,圈起来的是初始密码,牢记注,可以复制出来备份!!!
这里说说遇到的特殊情况:
第一种情况:密码没记住
直接/usr/local/mysql/data/下的数据删除了重新执行一遍mysql初始化语句
第二种情况:初始化报错
mysqld: error while loading shared libraries: libnuma.so.1: cannot open shared object file: No such file or directory
这里可能与centos的版本有关,有问题的执行如下命令,没问题的跳过
yum install libnuma.so.1
yum -y install numactl
yum install libnuma
yum install ld-linux.so.2
yum install libaio.so.1
yum install libnuma.so.1
yum install libstdc++.so.6
yum install libtinfo.so.5yum clean all
yum makecache
第八步:启动mysql
直接启动
/usr/local/mysql/support-files/mysql.server restart
/usr/local/mysql/support-files/mysql.server stop
/usr/local/mysql/support-files/mysql.server start
也可以这样简化设置
cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysql
service mysql star
第九步:登录mysql设置默认密码
mysql -uroot -p
输入初始化备份的密码
登录后重新设置密码
SET PASSWORD = PASSWORD('wxy123456');
ALTER USER 'root'@'localhost' PASSWORD EXPIRE NEVER;
FLUSH PRIVILEGES;
第十步:开放远程连接
use mysql #访问mysql库
update user set host = '%' where user = 'root'; #使root能再任何host访问
FLUSH PRIVILEGES;
否则navicat连接不到
第十一步:检查防火墙端口是否开放
firewall-cmd --list-port ##检查开放端口
firewall-cmd --zone=public --add-port=3307/tcp --permanent ##新增开放端口
firewall-cmd --reload ##重新加载
第十二步:使用Navicat测试连接

第十三步:相关问题及总结
网上资料很多,踩了很多坑,尤其是这个问题按照提示的安装了还是错误 yum install libnuma.so.1花费了很多时间
问题一:mysqld: error while loading shared libraries: libnuma.so.1: cannot open shared object file: No such file or directory
把下面的都执行一遍
yum install libnuma.so.1
yum -y install numactl
yum install libnuma
yum install ld-linux.so.2
yum install libaio.so.1
yum install libnuma.so.1
yum install libstdc++.so.6
yum install libtinfo.so.5yum clean all
yum makecache
问题二:登录提示Can't connect to local MySQL server through socket '/tmp/mysql.sock'
[root@localhost /]# mysql -u root -p
Enter password:
ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2)
解决方式需要做一个软连接
[root@localhost /]# find / -name mysql.sock
/var/lib/mysql/mysql.sock
[root@localhost /]# ln -s /var/lib/mysql/mysql.sock /tmp/mysql.sock
拓展:
在Linux系统中
MySQL数据库通常使用一个名为mysql.sock的Unix套接字(Unix socket)来与客户端通信。
这个套接字文件通常位于/var/lib/mysql/mysql.sock目录下。
但是,有些应用程序可能会默认使用/tmp/mysql.sock路径来连接MySQL,这时候就需要创建一个符号链接(symbolic link)将/tmp/mysql.sock链接到/var/lib/mysql/mysql.sock,以便让应用程序能够连接到MySQL。
因此,ln -s /var/lib/mysql/mysql.sock /tmp/mysql.sock命令的作用就是创建一个名为mysql.sock的符号链接,将/tmp/mysql.sock链接到/var/lib/mysql/mysql.sock。这样当应用程序连接到/tmp/mysql.sock时,实际上是连接到了/var/lib/mysql/mysql.sock。
相关文章:
linux环境mysql安装配置踩坑
背景: 最近公司项目希望改造工作流ACTIVITI5.x的源码框架支持大数据量(历史表单表数据达到10亿), 方案暂定为 1.使用动态数据源 2.将工作流归档历史数据数据保存到一个库中这里定义为读库, 3.在办办件的数据单独一个库…...
相关性网络图 | 热图中添加显著性
一边学习,一边总结,一边分享! 本期教程 写在前面 此图是一位同学看到后,想出的一期教程。 最近,自己的事情比较多,会无暇顾及社群和公众号教程。 1 安装和加载相关的R包 library(ggraph) library(tidy…...
cocosCreator 之 微信小游戏授权设置和调用wxAPI获取用户信息
版本: 3.8.0 语言: TypeScript 环境: Mac 官方文档: 微信官方文档 - 开放能力 微信 API 小游戏环境 在cocosCreator的3.x版本项目开发中,TypeScript最终会被转换为JavaScript语言。 JavaScript的运行时调用的API…...
element ui el-table表格纵向横向滚动条去除并隐藏空白占位列
需求 当table内容列过多时,可通过height属性设置table高度以固定table高度、固定表头,使table内容可以滚动 现在需求是右侧滚动条不好看,需要去除滚动条,并隐藏滚动条所占列的位置 // ----------修改elementui表格的默认样式-…...
防止python进程重复执行
前言 通过保存的进程pid查询上次执行的进程是否退出,决定是否启动新的python进程 代码 pidOption.py import os import psutil pidPath = "saveFile.pid"#写入进程号 def writePid():pid = str(os.getpid())f = open(pidPath, w)f.write(pid...
LV.12 D13 C工程与寄存器封装 学习笔记
一、C语言工程简介 把模板在linux解压出来 代码写在interface.c就可以了。 map.lds是链接脚本文件(负责代码的排布) include中是头文件,src中是写好的源代码 start.s是启动代码,在interface.c之前运行,把cpu和栈做一…...
Java SE 学习笔记(十九)—— XML、设计模式
目录 1 XML1.1 XML 概述1.2 XML 语法规则1.3 XML 文档约束(了解)1.3.1 DTD 约束1.3.2 schema 约束 2 XML 解析2.1 XML 解析概述2.2 Dom4J 解析 XML 文件2.3 XML 解析案例 3 XML 检索4 设计模式4.1 工厂模式4.2 装饰模式 1 XML 在有些业务场景下ÿ…...
grafana InfluxDB returned error: error reading influxDB 400错误解决
问题: 如图提示错误解决 确认自己的docker容器是否配置了以下3个字段 DOCKER_INFLUXDB_INIT_USERNAMExxx DOCKER_INFLUXDB_INIT_PASSWORDyyy DOCKER_INFLUXDB_INIT_ADMIN_TOKENzzz 如果有,在grafana中需要添加header配置Header: Authorization , Value…...
【LeetCode:150. 逆波兰表达式求值 | 栈】
🚀 算法题 🚀 🌲 算法刷题专栏 | 面试必备算法 | 面试高频算法 🍀 🌲 越难的东西,越要努力坚持,因为它具有很高的价值,算法就是这样✨ 🌲 作者简介:硕风和炜,…...
什么是神经网络,它的原理是啥?(2)
参考:https://www.youtube.com/watch?vmlk0rddP3L4&listPLuhqtP7jdD8CftMk831qdE8BlIteSaNzD 视频3:什么是激活函数?为什么我们需要激活函数?它的类型有哪些? 为什么需要激活函数?如果没有激活函数&…...
leetcode做题笔记206. 反转链表
给你单链表的头节点 head ,请你反转链表,并返回反转后的链表。 示例 1: 输入:head [1,2,3,4,5] 输出:[5,4,3,2,1]示例 2: 输入:head [1,2] 输出:[2,1]示例 3: 输入&am…...
2023/10/31 JAVA学习
idea一般会自动帮我们导包 new string创建出的字符串是空的,可以对其进行新赋值 s[i]在Java字符串中是没有这个东西的,想要遍历字符串只能用下面这种方式 但是可以把字符串,转换为字符数组然后那样输出 java中是无法s1 s2这样比较字符串的,因为这样比较的是地址,如果是new创建…...
SurfaceFliger绘制流程
前景提要: 当HWComposer接收到Vsync信号时,唤醒DisSync线程,在其中唤醒EventThread线程,调用DisplayEventReceiver的sendObjects像BitTub发送消息,由于在SurfaceFlinger的init过程中创建了EventThread线程,…...
系统架构设计师-第14章-云原生架构设计理论与实践-
云原生架构产生背景 云原生与商业场景的深度融合 ( 1 )从为企业带来的价值来看,云原生架构有着以下优势通过对多元算力的支持,满足不同应用场景的个性化算力需求,井基于软硬协同架构,为应用提供极致性能的云原生算力 (2) 通过最…...
conda 实践
1. 环境部署 1.1. 下载 anaconda 安装包 下面这个网址查找自己需要的版本 https://repo.anaconda.com/archive/ 或者手动下载。 wget https://repo.anaconda.com/archive/Anaconda3-5.3.0-Linux-x86_64.sh 1.2. 执行安装程序 #安装依赖: sudo yum install bzip2…...
行业追踪,2023-10-31
自动复盘 2023-10-31 凡所有相,皆是虚妄。若见诸相非相,即见如来。 k 线图是最好的老师,每天持续发布板块的rps排名,追踪板块,板块来开仓,板块去清仓,丢弃自以为是的想法,板块去留让…...
springboot 配置多个Redis数据源详解
实现原理 需要配置好两个数据源,创建两个RedisTemplate在配置类中注入两个RedisConnectionFactory,分别创建对应的RedisTemplate进行操作 详解 配置数据源 我这里是在之前已有一个配置下面另外加了一个 spring:redis:# 地址host: localh…...
【数据结构】排序算法总结
⭐ 作者:小胡_不糊涂 🌱 作者主页:小胡_不糊涂的个人主页 📀 收录专栏:浅谈数据结构 💖 持续更文,关注博主少走弯路,谢谢大家支持 💖 总结 1. 归并排序2. 计数排序3. 排序…...
作为20年老程序员,我如何使用GPT4来帮我写代码
如果你还在用google寻找解决代码bug的方案,那你真的out了,试试gpt4, save my life. 不是小编危言耸听,最近用gpt4来写代码极大地提高了代码生产力和运行效率,今天特地跟大家分享一下。 https://www.promptspower.comhttps://www.…...
【机器学习合集】模型设计之残差网络 ->(个人学习记录笔记)
文章目录 模型设计之残差网络1. 什么是残差结构1.1 网络加深遇到的优化问题1.2 short connect技术 2. 残差网络及有效性理解2.1 残差网络 3. 残差网络的发展3.1 密集残差网络3.2 更宽的残差网络(wide resnet)3.3 分组残差网络3.4 Dual Path Network3.5 加权残差网络3.6 预激活残…...
HPM6750 RISC-V高性能MCU开发实战:从双核应用到图形加速
1. 项目概述与核心价值最近几年,RISC-V架构在嵌入式领域的声量越来越大,从最初的学术研究到如今在工业控制、边缘计算等场景的落地,生态的成熟度肉眼可见。作为一名长期混迹在嵌入式开发一线的工程师,我对于新架构、新平台总是抱有…...
手把手拆解FD-SOI工艺流程:从SOI衬底到应变硅外延的保姆级图解
从SOI衬底到应变硅外延:FD-SOI工艺全流程拆解指南 想象一下建造一座微型城市,每一栋建筑只有头发丝直径的万分之一大小。这就是FD-SOI工艺工程师的日常工作——在硅片上用原子级精度"建造"晶体管。与传统的体硅工艺不同,FD-SOI&…...
Windows Cleaner终极指南:5大核心技术解析与实战优化方案
Windows Cleaner终极指南:5大核心技术解析与实战优化方案 【免费下载链接】WindowsCleaner Windows Cleaner——专治C盘爆红及各种不服! 项目地址: https://gitcode.com/gh_mirrors/wi/WindowsCleaner Windows Cleaner是一款专为Windows系统设计的…...
冥想第一千八百八十二天(1882)
1.周六,醒的很早,然后去锦和公园转了一圈,一直在等待大雨,结果到了傍晚才下,浪费了一天,不过天气很不好,就不适合外出了。敬畏大自然。 2.感谢父母,感谢朋友,感谢家人&am…...
如何选择适合的贴片机:关键因素与选择指南
引言在现代电子制造业中,贴片机(Surface Mount Technology,简称SMT)作为核心设备之一,扮演着至关重要的角色。随着电子元器件的不断小型化和生产工艺的不断进步,选择一款合适的贴片机已经成为确保生产效率、…...
Kali Linux 保姆级教程|从入门到渗透测试,一篇封神!
前言 Kali Linux 作为网络安全领域的「瑞士军刀」,集成 600 专业渗透工具,覆盖信息收集、漏洞利用、权限维持等全流程。本文结合最新实战场景,整理系统学习路径、核心工具解析及资源获取方式,助你快速掌握这门渗透测试必备技能。…...
一款强大的PHP视频播放器:轻松嵌入,高效播放
一款强大的PHP视频播放器:轻松嵌入,高效播放 【下载地址】PHP视频播放器源码 本仓库提供了一个PHP视频播放器的源码,支持播放m3u8和mp4格式的资源。该播放器可以直接嵌入到网站中,方便用户在线观看视频内容 项目地址: https://g…...
【NotebookLM要点提取黄金法则】:20年AI工具实战总结的5大避坑指南与3步精准萃取法
更多请点击: https://intelliparadigm.com 第一章:NotebookLM要点提取方法论全景概览 NotebookLM 是 Google 推出的面向研究者与知识工作者的 AI 原生笔记工具,其核心能力在于对用户上传文档(PDF、TXT、Google Docs)进…...
AnyLogic新手避坑指南:搞懂‘空间逻辑’和‘层’,你的第一个行人仿真模型就成功了一半
AnyLogic行人仿真空间逻辑完全解析:从概念混淆到精准建模 第一次打开AnyLogic的行人仿真模块时,那个充满蓝色网格的3D空间和密密麻麻的参数面板,很容易让人产生一种错觉——这不过是个"高级版流程图工具"。直到亲眼目睹自己精心设计…...
OpenClaw Zero Token 实测:不用 API Key,也能免费聚合多家 AI 模型
OpenClaw Zero Token 实测:不用 API Key,也能免费聚合多家 AI 模型 如果你经常在 Claude、ChatGPT、Gemini、DeepSeek、豆包、Kimi、Grok、通义千问之间来回切换,大概率会遇到一个问题: 每个平台都有自己的网页入口,…...
