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 显卡的问世,其强大的算力和创新技术,为实时渲…...
关于nvm与node.js
1 安装nvm 安装过程中手动修改 nvm的安装路径, 以及修改 通过nvm安装node后正在使用的node的存放目录【这句话可能难以理解,但接着往下看你就了然了】 2 修改nvm中settings.txt文件配置 nvm安装成功后,通常在该文件中会出现以下配置&…...
【android bluetooth 框架分析 04】【bt-framework 层详解 1】【BluetoothProperties介绍】
1. BluetoothProperties介绍 libsysprop/srcs/android/sysprop/BluetoothProperties.sysprop BluetoothProperties.sysprop 是 Android AOSP 中的一种 系统属性定义文件(System Property Definition File),用于声明和管理 Bluetooth 模块相…...
Robots.txt 文件
什么是robots.txt? robots.txt 是一个位于网站根目录下的文本文件(如:https://example.com/robots.txt),它用于指导网络爬虫(如搜索引擎的蜘蛛程序)如何抓取该网站的内容。这个文件遵循 Robots…...
多种风格导航菜单 HTML 实现(附源码)
下面我将为您展示 6 种不同风格的导航菜单实现,每种都包含完整 HTML、CSS 和 JavaScript 代码。 1. 简约水平导航栏 <!DOCTYPE html> <html lang"zh-CN"> <head><meta charset"UTF-8"><meta name"viewport&qu…...
ios苹果系统,js 滑动屏幕、锚定无效
现象:window.addEventListener监听touch无效,划不动屏幕,但是代码逻辑都有执行到。 scrollIntoView也无效。 原因:这是因为 iOS 的触摸事件处理机制和 touch-action: none 的设置有关。ios有太多得交互动作,从而会影响…...
Go 并发编程基础:通道(Channel)的使用
在 Go 中,Channel 是 Goroutine 之间通信的核心机制。它提供了一个线程安全的通信方式,用于在多个 Goroutine 之间传递数据,从而实现高效的并发编程。 本章将介绍 Channel 的基本概念、用法、缓冲、关闭机制以及 select 的使用。 一、Channel…...
快刀集(1): 一刀斩断视频片头广告
一刀流:用一个简单脚本,秒杀视频片头广告,还你清爽观影体验。 1. 引子 作为一个爱生活、爱学习、爱收藏高清资源的老码农,平时写代码之余看看电影、补补片,是再正常不过的事。 电影嘛,要沉浸,…...
Leetcode33( 搜索旋转排序数组)
题目表述 整数数组 nums 按升序排列,数组中的值 互不相同 。 在传递给函数之前,nums 在预先未知的某个下标 k(0 < k < nums.length)上进行了 旋转,使数组变为 [nums[k], nums[k1], …, nums[n-1], nums[0], nu…...
小木的算法日记-多叉树的递归/层序遍历
🌲 从二叉树到森林:一文彻底搞懂多叉树遍历的艺术 🚀 引言 你好,未来的算法大神! 在数据结构的世界里,“树”无疑是最核心、最迷人的概念之一。我们中的大多数人都是从 二叉树 开始入门的,它…...
32单片机——基本定时器
STM32F103有众多的定时器,其中包括2个基本定时器(TIM6和TIM7)、4个通用定时器(TIM2~TIM5)、2个高级控制定时器(TIM1和TIM8),这些定时器彼此完全独立,不共享任何资源 1、定…...
