【Linux】Mysql部署步骤

一、JDK安装配置
在home目录下执行命令:mkdir Jdk
1.将JDK 上传至该文件夹,有些终端工具可以直接上传文件,比如:MobaXterm
可以看到安装包已经上传上来了
在这里插入图片描述
2.直接安装
命令:rpm -ivh jdk-8u311-linux-x64.rpm
在这里插入图片描述
3.安装成功之后可以去 /usr 目录下查看是否有 java 的文件夹
在这里插入图片描述

如果有就证明安装成功了。
4、环境变量的配置
需要修改 /etc/profile 文件,编辑 /etc/profile
命令:vim /etc/profile
将以下内容复制上去

JAVA_HOME=/usr/java/jdk1.8.0_311-amd64
PATH=$JAVA_HOME/bin:$PATH
CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export JAVA_HOME
export PATH
export CLASSPATH

拖到文本最后,按 i 编辑文本,复制上述配置
按 Esc 退出编辑状态,:wq保存并且退出
在这里插入图片描述
保存并且关闭 profile 文件,再执行 source /etc/profile 命令让修改的生效
5.检测是否配置成功
可以查看 JDK 版本检测是否安装配置 java 环境成功
命令:java -version
在这里插入图片描述

如果能够查看到 JDK 的版本信息就表示成功了
二、Mysql安装
MySQL下载地址:https://downloads.mysql.com/archives/community/
在这里插入图片描述

rpm依赖包下载地址:https://www.rpmfind.net/linux/rpm2html/search.php?query=&submit=Search+…&system=&arch=
1.利用远程传输工具,将文件导入Almalinux系统的/usr/local/src目录中,进入src目录
命令:cd /usr/local/src
在这里插入图片描述
2.解压mysql安装包
命令:tar -xvf mysql-8.0.23-linux-glibc2.12-x86_64.tar.xz
在这里插入图片描述
3.修改mysql文件夹名称
命令:mv mysql-8.0.23-linux-glibc2.12-x86_64 mysql
在这里插入图片描述
4.安装libaio依赖包
命令:rpm -ivh libaio-0.3.111-13.el9.x86_64.rpm
在这里插入图片描述
5.创建用户组

创建用户组mysql
groupadd mysql
创建用户mysql并将其添加到用户组mysql
useradd -r -g mysql mysql
dir1、创建data目录,存放初始化后的数据
mkdir /usr/local/src/mysql/data
赋予读写权限
chown -R mysql mysql/
修改文件用户组
chgrp -R mysql mysql/

在这里插入图片描述

# file1、mysql配置文件(具体内容在下方截图之下)
vi /etc/my.cnf
# file2、创建mysqld.log日志文件
cd /var/log/
# wq!保存(无需内容保存即可)
vim mysqld.log
# 赋予文件读写权限
chmod 777 mysqld.log
# 更改文件用户及用户组
chown mysql:mysql mysqld.log
# dir2、创建mysqld.pid文件路径
cd /var/run/
mkdir mysqld
# 更改文件夹权限
chmod 777 mysqld
cd mysqld
# file3、新建mysqld.log文件(无需内容保存即可)
vim mysqld.pid
# 赋予mysql权限
chmod 777 mysqld.pid
chown mysql:mysql mysqld.pid
配置文件my.cnf内容如下:
[mysqld]
port=3306
user=mysql
basedir=/usr/local/src/mysql
datadir=/usr/local/src/mysql/data
socket=/usr/local/src/mysql/data/mysql.sock
log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid
bind-address=0.0.0.0
# Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0
character_set_server=utf8
init_connect='SET collation_connection = utf8_unicode_ci'
init_connect='SET NAMES utf8'
collation-server=utf8_unicode_ci[client]
port = 3306
socket=/usr/local/src/mysql/data/mysql.sock
default-character-set = utf8[mysql]
default-character-set = utf8

7.初始化数据库

# 初始化数据库(重点)
/usr/local/src/mysql/bin/mysqld --initialize --user=mysql --basedir=/usr/local/src/mysql --datadir=/usr/local/src/mysql/data --lc_messages_dir=/usr/local/src/mysql/share --lc_messages=en_US
# 部分设备用以上初始化命令会报错,可直接简单初始化(初始化命令二选一,上一条报错就选择简化初始化命令)
/usr/local/src/mysql/bin/mysqld --initialize --user=mysql

8.查看初始化之后的密码(密码处在最后一行,关注此处:root@localhost: 初始密码)

cat /var/log/mysqld.log | grep "temporary password"

在这里插入图片描述
9.配置快捷启动

1)建立mysql.sock文件
# 初始化之后创建,否则会导致初始化失败(wq!无需内容保存即可)
cd /usr/local/src/mysql/data/
vim mysql.sock
# 赋予文件读写权限
chmod 777 mysql.sock
chown  mysql:mysql mysql.sock
# 建立之后重启服务
/usr/local/src/mysql/support-files/mysql.server restart
2)此时能够使用以下命令启动mysql,但无法使用service和systemctl两命令快捷启动,需要建立软链接
# 启动服务
/usr/local/src/mysql/support-files/mysql.server start
3)建立软连接
# 添加软链接,方便快捷启动
ln -s /usr/local/src/mysql/support-files/mysql.server /etc/init.d/mysql
ln -s /usr/local/src/mysql/bin/mysql /usr/bin/mysql
如果报错如下:(无法创建符号链接,如下图,安装好包之后在执行一遍建立软连接命令)
解决办法:安装文件夹中的chkconfig依赖包
命令:rpm -ivh chkconfig-1.24-1.el9_5.1.x86_64.rpm
4)遇到查看软链接是否成功
命令:ll /etc/init.d/mysql;ll /usr/bin/mysql

在这里插入图片描述
10.启动服务
(进入mysql,修改初始密码,运行远程连接(这里执行完后,密码将变成:你设置的新密码))

# 启动服务
service mysql start
# 查看服务状态
service mysql status
# 停止服务
service mysql stop
# 重启服务
service mysql restart

在这里插入图片描述
11.登录mysql

# 登录mysql,执行之后输入初始密码
mysql -u root -p

报错信息:
在这里插入图片描述

解决办法:
1)查看缺少的依赖:ldd /usr/local/src/mysql/bin/mysql
2)查看当前系统存在的依赖版本
命令:find / -name libtinfo.so\* 2>/dev/null
3)建立软链接,利用软连接将5指向6
命令:ln -s /usr/lib64/libtinfo.so.6.2 /usr/lib64/libtinfo.so.5
4)重新登录

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
12.修改默认密码

mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY 'root' PASSWORD EXPIRE NEVER;
mysql>flush privileges;

在这里插入图片描述
13.开放远程连接

# 切换至mysql数据库
use mysql;
# 远程用户建立,更新登录的用户所允许的IP地址为任意
update user set user.Host='%' where user.User='root';
# 刷新权限
flush privileges;

14.查看是否生效

mysql> select host,user from user;

在这里插入图片描述
15.添加系统环境变量

1.先执行:vim /etc/profile
2.在底部按i插入:export PATH=/usr/local/src/mysql/bin:$PATH
输入完成后保存退出
3.最后使环境变量生效:source /etc/profile

在这里插入图片描述
16.设置开机自启

# 将服务文件拷贝到init.d下,并重命名为mysql
cp /usr/local/src/mysql/support-files/mysql.server /etc/init.d/mysqld
# 赋予可执行权限
chmod 777 /etc/init.d/mysqld
# 添加服务
chkconfig --add mysqld

17.用工具连接测试即可

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/67453.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【0391】Postgres内核 checkpointer process ① 启动初始化

相关文章: 【0108】checkpointer运行原理(概念篇)(1) 【0278】checkpointer 共享内存(CheckpointerShmem)初始化(3) 文章目录 1. 启动 checkpointer process1.1 初始化 checkpointer PID1.2 注册 signal1.3 初始化 last checkpoint time2. 确认 config 的 shared memo…

归子莫的科技周刊#2:白天搬砖,夜里读诗

归子莫的科技周刊#2:白天搬砖,夜里读诗 本周刊开源,欢迎投稿。 刊期:2025.1.5 - 2025.1.11。原文地址。 封面图 下班在深圳看到的夕阳,能遇到是一种偶然的机会,能拍下更是一种幸运。 白天搬砖,…

你需要什么样的资源隔离?丨TiDB 资源隔离最佳实践

导读 资源隔离是数据库性能优化的重要环节, TiDB 在当前版本已经实现了从数据级隔离到流控隔离的全面升级 ,无论是多系统共享集群、复杂负载隔离,还是小型系统整合和 SQL 精细化控制,TiDB 都提供了灵活且高效的解决方案。 本文以…

w162体育馆管理系统

🙊作者简介:多年一线开发工作经验,原创团队,分享技术代码帮助学生学习,独立完成自己的网站项目。 代码可以查看文章末尾⬇️联系方式获取,记得注明来意哦~🌹赠送计算机毕业设计600个选题excel文…

Java中对list数据进行手动分页(可直接复用版)

1.获取list列表数据 // 这边用的mybatisplus查询的sql。条件自己组装 List<实体类> result baseMapper.getPageData(lambdaQuery); 2.计算总记录数 // 计算总记录数 int totalRecords result.size(); 3.创建分页对象&#xff0c;并塞入结果值 // 创建分页对象 IPa…

cursor重构谷粒商城02——30分钟构建图书管理系统【cursor使用教程番外篇】

前言&#xff1a;这个系列将使用最前沿的cursor作为辅助编程工具&#xff0c;来快速开发一些基础的编程项目。目的是为了在真实项目中&#xff0c;帮助初级程序员快速进阶&#xff0c;以最快的速度&#xff0c;效率&#xff0c;快速进阶到中高阶程序员。 本项目将基于谷粒商城…

C# 并发和并行的区别--16

目录 并发和并行 一.并发 定义 特点 代码示例 代码解释 二.并行 定义 特点 在C#中的体现 代码示例 代码解释 三.并发和并行的区别 四 .如何在C#中选择并发还是并行 1.考虑任务类型 2.代码示例 3.注意事项 五.总结 并发和并行 在编程领域,并发和并行是两个密切…

Android SystemUI——车载CarSystemUI加载(八)

Android 系统早期的状态栏和导航栏对于手机设备来说那是相当重要的,但是随着手机版本的不断更新,状态栏和导航栏对于手机的重要性在逐渐降低,特别是在快捷手势出现之后,导航栏几乎变得可有可无。但是对于当前如火如荼的车载系统来说,状态栏和导航栏却几乎是必备的,谷歌自…

《零基础Go语言算法实战》【题目 4-3】请用 Go 语言编写一个验证栈序列是否为空的算法

《零基础Go语言算法实战》 【题目 4-3】请用 Go 语言编写一个验证栈序列是否为空的算法 给定两个具有不同值的 push 和 pop 数组序列&#xff0c;当且仅当这可能是对最初为空的栈的一系 列 push 和 pop 操作的结果时才返回 true。 【解答】 ① 思路。 这是考查栈操作的题…

网络学习记录5

二、学习网络知识&#xff1a; 1、透传&#xff1a; ①“透传”指的是数据在传输过程中不被交换机或其他网络设备解析、修改或处理&#xff0c;而是直接从一个端口传输到另一个端口。这种传输方式保持了数据的原始性和完整性&#xff0c;常用于需要高速、低延迟的数据传输场景…

浅谈云计算14 | 云存储技术

云存储技术 一、云计算网络存储技术基础1.1 网络存储的基本概念1.2云存储系统结构模型1.1.1 存储层1.1.2 基础管理层1.1.3 应用接口层1.1.4 访问层 1.2 网络存储技术分类 二、云计算网络存储技术特点2.1 超大规模与高可扩展性2.1.1 存储规模优势2.1.2 动态扩展机制 2.2 高可用性…

vscode项目依赖问题

必读 一定要将前端下拉的项目备份一下&#xff0c;很容易运行导致依赖报错&#xff0c;重新下载 命令 使用幽灵分解器安装 pnpm install 替代 npm install 设置淘宝NPM镜像源 yarn config set registry https://registry.npmmirror.com 查看目前依赖包的版本 npm list ant-d…

服务器数据恢复—EMC存储POOL中数据卷被删除的数据恢复案例

服务器数据恢复环境&故障&#xff1a; EMC Unity 400存储连接了2台硬盘柜。2台硬盘柜上一共有21块硬盘&#xff08;520字节&#xff09;。21块盘组建了2组RAID6&#xff1a;一组有11块硬盘&#xff0c;一组有10块硬盘。 在存储运行过程中&#xff0c;管理员误操作删除了 2组…

【LLM】25.1.15 arxiv更新37篇

—第1篇---- Consistency of Responses and Continuations Generated by Large Language Models on Social Media &#x1f50d; 关键词: Large Language Models, emotional consistency, semantic coherence, social media, Gemma, Llama 链接1 摘要: 本文研究了大型语言模…

【Flink系列】10. Flink SQL

10. Flink SQL Table API和SQL是最上层的API&#xff0c;在Flink中这两种API被集成在一起&#xff0c;SQL执行的对象也是Flink中的表&#xff08;Table&#xff09;&#xff0c;所以我们一般会认为它们是一体的。Flink是批流统一的处理框架&#xff0c;无论是批处理&#xff08…

【FAQ】HarmonyOS SDK 闭源开放能力 —Map Kit(4)

1.问题描述&#xff1a; 添加了很多的marker点&#xff0c;每个marker点都设置了customInfoWindow&#xff0c;但是每次只能显示一个customInfoWindow吗&#xff1f; 解决方案&#xff1a; Marker的InfoWindow每次只能显示一个。 2.问题描述&#xff1a; 在地图选型中&…

OpenCV相机标定与3D重建(59)用于立体相机标定的函数stereoCalibrate()的使用

操作系统&#xff1a;ubuntu22.04 OpenCV版本&#xff1a;OpenCV4.9 IDE:Visual Studio Code 编程语言&#xff1a;C11 算法描述 标定立体相机设置。此函数找到两个相机各自的内参以及两个相机之间的外参。 cv::stereoCalibrate 是 OpenCV 中用于立体相机标定的函数。它通过一…

《Keras 3 神经网络紧凑型卷积转换器(Transformers)》

Keras 3 神经网络紧凑型卷积转换器&#xff08;Transformers&#xff09; 作者&#xff1a;Sayak Paul创建日期&#xff1a;2021/06/30最后修改时间&#xff1a;2023/08/07描述&#xff1a;用于高效图像分类的紧凑型卷积变压器。 &#xff08;i&#xff09; 此示例使用 Keras …

本地部署Web-Check网站检测与分析利器并实现远程访问实时监测

文章目录 前言1.关于Web-Check2.功能特点3.安装Docker4.创建并启动Web-Check容器5.本地访问测试6.公网远程访问本地Web-Check7.内网穿透工具安装8.创建远程连接公网地址9.使用固定公网地址远程访问 前言 本文我们将详细介绍如何在Ubuntu系统上使用Docker部署Web-Check&#xf…

从零搭建一个Vue3 + Typescript的脚手架——day1

1.开发环境搭建 (1).配置vite vite简介 Vite 是一个由尤雨溪开发的现代化前端构建工具&#xff0c;它利用了浏览器对 ES 模块的原生支持&#xff0c;极大地提升了开发服务器的启动速度和热更新效率。Vite 不仅适用于 Vue.js&#xff0c;还支持 React、Svelte 等多种框架&…