Hadoop生态圈框架部署(七)- MySQL安装与配置教程
文章目录
- 前言
- 一、MySQL安装与配置(手动部署)
- 1. 下载MySQL
- 2. 上传安装包
- 3. 解压HBase安装包
- 4. 配置
- 4.1 配置 MySQL 的主配置文件 my.cnf
- 4.2 配置 MySQL 服务的脚本
- 5. 初始化MySQL数据库
- 6. 创建快捷方式
- 7. 启动MySQL服务
- 8. 修改MySQL登录密码
- 8.1 使用临时密码登录MySQL
- 8.2 设置MySQL登录密码
- 9. 设置 MySQL 允许远程访问
- 10. 设置MySQL服务开机自启动
- 11. 登录MySQL
- 11.1 本地登录MySQL
- 11.2 远程登录MySQL
- 安装异常
前言
随着信息技术的飞速发展,数据管理成为企业信息化建设中不可或缺的一部分。作为最流行的关系型数据库管理系统之一,MySQL 凭借其开源、高性能、高可靠性和易于使用的特性,在全球范围内获得了广泛的应用。无论是小型网站还是大型企业应用,MySQL 都能够提供强大的支持。然而,对于初次接触 MySQL 或者需要在特定环境中部署 MySQL 的技术人员来说,正确的安装与配置方法是确保数据库系统稳定运行的关键。
本文档旨在为读者提供一份详尽的 MySQL 手动安装与配置指南,特别针对 Linux 环境下的部署。我们将从下载 MySQL 安装包开始,逐步介绍如何上传安装包、解压安装、配置 MySQL 主配置文件、初始化数据库、创建快捷方式、启动服务、设置登录密码、允许远程访问以及设置服务开机自启动等关键步骤。此外,我们还将讨论一些常见的安装异常及其解决方法,帮助读者顺利地完成 MySQL 的安装与配置工作。
一、MySQL安装与配置(手动部署)
1. 下载MySQL
点击下载MySQL安装包:https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.44-linux-glibc2.12-x86_64.tar.gz
2. 上传安装包
通过拖移的方式将下载的MySQL安装包mysql-5.7.44-linux-glibc2.12-x86_64.tar.gz上传至虚拟机hadoop1的/export/software目录。

3. 解压HBase安装包
在虚拟机hadoop1上传完成后将MySQL安装包通过解压方式安装至/export/servers目录。
tar -zxvf /export/software/mysql-5.7.44-linux-glibc2.12-x86_64.tar.gz -C /export/servers/

4. 配置
4.1 配置 MySQL 的主配置文件 my.cnf
在虚拟机hadoop1修改MySQL的主配置文件 my.cnf ,执行如下命令添加配置内容。
cat >/etc/my.cnf <<EOF
[mysqld]
datadir=/export/data/mysql-5.7/data
# 建议禁用符号链接,以防止各种安全风险
symbolic-links=0
port=3306
user=root
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USERinnodb_file_per_table=1
lower_case_table_names=1# 添加显式默认值配置
explicit_defaults_for_timestamp=1
EOF

4.2 配置 MySQL 服务的脚本
在虚拟机hadoop1修改/export/servers/mysql-5.7.44-linux-glibc2.12-x86_64/support-files/mysql.server文件。,执行如下命令修改配置。
sed -i "s|^basedir=.*|basedir=/export/servers/mysql-5.7.44-linux-glibc2.12-x86_64|" "/export/servers/mysql-5.7.44-linux-glibc2.12-x86_64/support-files/mysql.server"
sed -i "s|^datadir=.*|datadir=/export/data/mysql-5.7/data|" "/export/servers/mysql-5.7.44-linux-glibc2.12-x86_64/support-files/mysql.server"

5. 初始化MySQL数据库
在虚拟机hadoop1执行如下命令初始化MySQL,初始化会生成一个临时密码,记住这个临时密码。
mkdir -p /export/data/mysql-5.7
cd /export/servers/mysql-5.7.44-linux-glibc2.12-x86_64/bin
./mysqld --initialize

6. 创建快捷方式
在虚拟机hadoop1执行如下命令创建MySQL服务启动脚本的快捷方式和MySQL命令行客户端的快捷方式。
ln -s /export/servers/mysql-5.7.44-linux-glibc2.12-x86_64/support-files/mysql.server /etc/init.d/mysql
ln -s /export/servers/mysql-5.7.44-linux-glibc2.12-x86_64/bin/mysql /usr/bin/mysql

7. 启动MySQL服务
在虚拟机Hadoop1执行如下命令启动MySQL服务。
service mysql start

8. 修改MySQL登录密码
8.1 使用临时密码登录MySQL
在虚拟机Hadoop1执行如下命令使用临时密码YUA-VP=5tga!登录MySQL,临时密码YUA-VP=5tga!是上面生成的临时密码,需要更改为自己的临时密码。
mysql --connect-expired-password -uroot -p

8.2 设置MySQL登录密码
在虚拟机Hadoop1执行如下命令修改MySQL密码为123456。
set password for root@localhost = password('123456');

退出MySQL命令行客户端。
exit

9. 设置 MySQL 允许远程访问
在虚拟机hadoop1执行如下命令设置 MySQL 允许远程访问。
mysql -uroot -p123456 -e "use mysql; update user set host='%' WHERE user='root'; flush privileges;"

10. 设置MySQL服务开机自启动
在虚拟机hadoop1执行如下命令设置MySQL服务开机自启动。
cp /export/servers/mysql-5.7.44-linux-glibc2.12-x86_64/support-files/mysql.server /etc/init.d/mysqld
chkconfig --add mysqld
chkconfig mysqld on

11. 登录MySQL
11.1 本地登录MySQL
mysql -uroot -p123456

退出MySQL命令行客户端。
exit

11.2 远程登录MySQL
mysql -h192.168.121.160 -P3306 -uroot -p123456

退出MySQL命令行客户端。
exit

安装异常
重复执行创建软连接命令时,出现如下情况属正常,不会影响安装。

若安装过程中出现问题,需要重新安装,请按以下步骤执行。
若已经启动了MySQL服务,需要先使用以下命令停止MySQL服务。
service mysql stop
删除安装目录及生成的数据存放目录。
rm -rf /export/data/mysql-5.7
rm -rf /export/servers/mysql-5.7.44-linux-glibc2.12-x86_64
然后再去重新执行上面的安装过程。
相关文章:
Hadoop生态圈框架部署(七)- MySQL安装与配置教程
文章目录 前言一、MySQL安装与配置(手动部署)1. 下载MySQL2. 上传安装包3. 解压HBase安装包4. 配置4.1 配置 MySQL 的主配置文件 my.cnf4.2 配置 MySQL 服务的脚本 5. 初始化MySQL数据库6. 创建快捷方式7. 启动MySQL服务8. 修改MySQL登录密码8.1 使用临时…...
视频直播5G CPE解决方案:ZX7981PG/ZX7981PMWIFI6网络覆盖
方案背景 视频直播蓬勃发展的当下,传统直播网络联网方式的局限性越来越明显。目前传统直播的局限性主要集中在以下几个方面: 传统直播间网络架构条件有限,可连接WIFI数量少,多终端同时直播难以维持;目前4G网络带宽有限…...
技术周刊 |Google 2024 年首届 Web AI 峰会回顾
大家好,我是童欧巴。见字如面,万事胜意,欢迎来到第 134 期周刊。 大厨推荐 Google 2024 年首届 Web AI 峰会回顾 不仅包括来自谷歌团队的演讲者,如 Chrome 和 MediaPipe,还包括第三方代表,如英特尔、Hug…...
web——upload-labs——第十二关——%00截断
查看源码 分析源码我们可以知道,这里是基于白名单过滤,只允许上传jpg,png,gif,但是这里注意第八行,上传路径是可以控制的,所以可以利用%00截断,来达到上传木马的目的。这里要注意一下,%00截断想…...
ORA-01461: 仅能绑定要插入 LONG 列的 LONG 值。ojdbc8版本23.2.0.0驱动BUG【已解决】
问题描述 JDK8使用ojdbc8驱动操作oracle11g数据库,使用JDBC复用 PreparedStatement 对象执行Insert操作时,报错java.sql.SQLException: ORA-01461: 仅能绑定要插入 LONG 列的 LONG 值。,经测试发现,是预编译对象某个占位符号被赋…...
win10 自带 directx 修复工具怎么用?最新 directx 修复工具使用方法介绍
DirectX 是一组用于处理多媒体,特别是游戏和图形相关任务的技术和接口。当 DirectX 出现问题,可能会导致游戏运行不畅、图像显示异常、声音故障等。 系统自带的 directx 修复工具能够检测 DirectX 的组件是否完整、版本是否正确、配置是否合理ÿ…...
报错java: java.lang.NoSuchFieldError: Class com.sun.tools.javac.tree.JCTree$JCImport does not ...解决方法
在运行项目时出现java: java.lang.NoSuchFieldError: Class com.sun.tools.javac.tree.JCTree$JCImport does not have member field com.sun.tools.javac.tree.JCTree qualidzz这样的报错 解决方法 1.第一步:在pom文件中将lombok的版本改成最新的 此时1.18.34是新…...
前端三大件之CSS
引言 CSS(层叠样式表,Cascading Style Sheets)是一种用于描述网页文档外观和格式的样式表语言。它主要用于控制网页的布局、颜色、字体、间距等视觉效果,使开发者能够将内容与设计分离。 一,CSS的基本概念 选择器&…...
C语言 | 指针 | 野指针 | 数组指针 | 指针数组 | 二级指针 | 函数指针 | 指针函数
文章目录 1.指针的定义2.指针的加减运算3.野指针4.指针 & 数组 & 传参 & 字符数组5.数组指针 & 指针数组6.二级指针7.指针函数 & 函数指针 & 回调函数8.函数指针数组 & 指向函数指针数组的指针 1.指针的定义 指针是内存中一个最小单元的编号&…...
mysql 的乐观锁和 mvcc 是一回事吗
MySQL 的乐观锁和 MVCC(多版本并发控制)是两个不同的概念,尽管它们都涉及到并发控制和数据的一致性,但在设计目的和实现方式上存在本质区别。 1. 乐观锁 概念 乐观锁是一种用于解决并发更新冲突的控制机制。它假设数据在大部分情况…...
redis的击穿和雪崩
Redis 是一个高性能的键值存储数据库,广泛用于缓存、会话管理等场景。然而,Redis 在高并发场景下可能会遇到一些问题,比如“击穿”和“雪崩”。下面详细解释这两个概念: 击穿(Hotspot) 击穿是指某个热点数…...
java中创建多线程的4种方式
目录 一、继承 Thread 类创建线程 步骤 示例代码 原理 二、实现 Runnable 接口创建线程 步骤 示例代码 原理 三、实现 Callable 接口创建线程 步骤 示例代码 原理 与Runnable接口相比的不同之处 四、使用线程池创建线程 步骤 示例代码(使用 Executo…...
MATLAB深度学习(二)——如何训练一个卷积神经网路
2.1 基本概念 从数学的角度看,机器学习的目标是建立输入和输出的函数关系,相当于 y F(x)的过程。F(x)就是我们所说的模型,对于使用者来说,这个模型就是一个黑箱,我们不知…...
删除k8s 或者docker运行失败的脚本
vi delete_exited_containers.sh#!/bin/bash# 列出所有停止的容器并存储到数组 list_exited_containers() {echo -e "\nStopped containers:"containers()# 获取停止的容器信息并存入数组while IFS read -r line; docontainers("$line")done < <(do…...
重置docker版本的octoprint管理员账号密码
我的情况是octoprint安装在HiNAS系统的机顶盒上,只有一个账号,但是忘记了用户名和密码。有两个选择: 可以试试先找回用户名,然后尝试你的常用密码。直接重置所有账号。 1.找回用户名: 使用使用 docker exec -it <…...
prometheus监控数据远程写入Kafka集群
文章目录 前言一、环境简介1.1 环境简介1.2 部署清单1.3 组件版本 二、部署步骤2.1 prometheus部署2.2 kafka集群部署2.3 prometheus-kafka-adapter部署 三、数据验证四、总结 前言 根据项目要求,需将prometheus监控数据存储到kafka中。前面为了图方便就搭建了单机…...
Excel使用-弹窗“此工作簿包含到一个或多个可能不安全的外部源的链接”的发生与处理
文章目录 前言一、探讨问题发生原因1.引入外部公式2.引入外部数据验证二、问题现象排查及解决1.排查公式2.排查数据验证3.特殊处理方式总结前言 作为一种常用的办公软件,Excel被大家所熟知。尽管使用了多年,有时候在使用Excel时候也会发生一些不太常见的现象,需要用心核查下…...
C++小白实习日记——Day 2 TSCNS怎么读取当前时间
和老板问了一下,今天就可以自己上手了: 用TSCNS写了一个cpp,运行出来老板说让我去看看另一个项目是怎么做的 用TSCNS和std库获取当前时间 #include <iostream> #include <iomanip> #include "tscns.h"using namespace std;TSCN…...
【Pythonr入门第二讲】你好,世界
"Hello, World!" 是一种传统的编程入门示例,通常是程序员学习一门新编程语言时编写的第一个程序。这个程序的目标非常简单:在屏幕上输出 "Hello, World!" 这个字符串。尽管它非常简单,但具有重要的象征意义和实际价值。 …...
3D Streaming 在线互动展示系统:NVIDIA RTX 4090 加速实时渲染行业数字化转型
随着科技的飞速发展,实时渲染正逐步成为游戏与实时交互领域的重要驱动力。与离线渲染不同,实时渲染需要极高的计算性能,对硬件设备尤其是GPU的性能要求极高。随着 RTX 4090 显卡的问世,其强大的算力和创新技术,为实时渲…...
3.3.1_1 检错编码(奇偶校验码)
从这节课开始,我们会探讨数据链路层的差错控制功能,差错控制功能的主要目标是要发现并且解决一个帧内部的位错误,我们需要使用特殊的编码技术去发现帧内部的位错误,当我们发现位错误之后,通常来说有两种解决方案。第一…...
pam_env.so模块配置解析
在PAM(Pluggable Authentication Modules)配置中, /etc/pam.d/su 文件相关配置含义如下: 配置解析 auth required pam_env.so1. 字段分解 字段值说明模块类型auth认证类模块,负责验证用户身份&am…...
【算法训练营Day07】字符串part1
文章目录 反转字符串反转字符串II替换数字 反转字符串 题目链接:344. 反转字符串 双指针法,两个指针的元素直接调转即可 class Solution {public void reverseString(char[] s) {int head 0;int end s.length - 1;while(head < end) {char temp …...
学习STC51单片机31(芯片为STC89C52RCRC)OLED显示屏1
每日一言 生活的美好,总是藏在那些你咬牙坚持的日子里。 硬件:OLED 以后要用到OLED的时候找到这个文件 OLED的设备地址 SSD1306"SSD" 是品牌缩写,"1306" 是产品编号。 驱动 OLED 屏幕的 IIC 总线数据传输格式 示意图 …...
使用LangGraph和LangSmith构建多智能体人工智能系统
现在,通过组合几个较小的子智能体来创建一个强大的人工智能智能体正成为一种趋势。但这也带来了一些挑战,比如减少幻觉、管理对话流程、在测试期间留意智能体的工作方式、允许人工介入以及评估其性能。你需要进行大量的反复试验。 在这篇博客〔原作者&a…...
学习一下用鸿蒙DevEco Studio HarmonyOS5实现百度地图
在鸿蒙(HarmonyOS5)中集成百度地图,可以通过以下步骤和技术方案实现。结合鸿蒙的分布式能力和百度地图的API,可以构建跨设备的定位、导航和地图展示功能。 1. 鸿蒙环境准备 开发工具:下载安装 De…...
保姆级【快数学会Android端“动画“】+ 实现补间动画和逐帧动画!!!
目录 补间动画 1.创建资源文件夹 2.设置文件夹类型 3.创建.xml文件 4.样式设计 5.动画设置 6.动画的实现 内容拓展 7.在原基础上继续添加.xml文件 8.xml代码编写 (1)rotate_anim (2)scale_anim (3)translate_anim 9.MainActivity.java代码汇总 10.效果展示 逐帧…...
云原生安全实战:API网关Envoy的鉴权与限流详解
🔥「炎码工坊」技术弹药已装填! 点击关注 → 解锁工业级干货【工具实测|项目避坑|源码燃烧指南】 一、基础概念 1. API网关 作为微服务架构的统一入口,负责路由转发、安全控制、流量管理等核心功能。 2. Envoy 由Lyft开源的高性能云原生…...
C++ Saucer 编写Windows桌面应用
文章目录 一、背景二、Saucer 简介核心特性典型应用场景 三、生成自己的项目四、以Win32项目方式构建Win32项目禁用最大化按钮 五、总结 一、背景 使用Saucer框架,开发Windows桌面应用,把一个html页面作为GUI设计放到Saucer里,隐藏掉运行时弹…...
uni-app学习笔记二十七--设置底部菜单TabBar的样式
官方文档地址:uni.setTabBarItem(OBJECT) | uni-app官网 uni.setTabBarItem(OBJECT) 动态设置 tabBar 某一项的内容,通常写在项目的App.vue的onLaunch方法中,用于项目启动时立即执行 重要参数: indexnumber是tabBar 的哪一项&…...
