【H2O2|全栈】MySQL的云端部署

目录

前言

开篇语

准备工作

MySQL移除

为什么需要移除?

移除操作

Yum仓库

yum简介

rpm安装

yum库安装

MySQL安装

使用yum安装

开机自启动

检查运行状态

MySQL配置

初始密码

​编辑登录

修改root密码

退出MySQL

字符集配置

结束语


前言

开篇语

本篇属于云端部署系列知识,为了将我们的全栈项目部署至服务器,我们需要在云端linux下实现MySQL的安装与部署。

本篇涉及运维相关的知识,我们在进行前端开发时需要进行了解。

准备工作

软件:【参考版本】Xshell7,Xftp7

服务器:腾讯云/阿里云

语言:Linux

版本信息:MySQL5.7,CentOS

服务器端口放通:3306,8080

MySQL移除

为什么需要移除?

在进行MySQL配置时,如果此前已经有出现问题的MySQL配置,比如未卸载干净的数据库和不兼容的版本(太新或太旧),则最好先将此前的MySQL移除。

移除操作

在Xshell或服务器(腾讯云为OrcaTerm)中,利用yum移除MySQL——

# 移除Mysql
yum remove mysql-server mysql-client

注意,在进行该操作之前,我们需要配置yum仓库。 

Yum仓库

yum简介

yum是包管理器,也就像一个软件下载安装管理的客户端,类似于手机里面的应用商店。

因为Linux下的软件包可能会存在着某种依赖关系(比如安装一个包需要附加安装其他包才能运行),那么此时使用yum便能够很好的解决这种依赖关系。

关于yum更加详尽的介绍,可以参考其他博主的文章,此处就不展开了。

rpm安装

rpm,全名 RedHat Package Managerment,是由Red Hat公司提出,被众多Linux发行版本所采用,是一种数据库记录的方式来将所需要的软件安装到到Linux系统的一套软件管理机制。

关于rpm的介绍,可以参考其他博主的文章,此处不详述。

安装代码如下——

# 安装rpm
sudo yum install rpm

由于MySQL并不在CentOS的官方仓库中,所以我们需要先导入MySQL的秘钥,然后再进行yum仓库配置。

安装完成之后,利用rpm更新MySQL秘钥——

# 更新密钥
rpm --import https://repo.mysql.com/RPM-GPG-KEY-mysql-2022

yum库安装

使用rpm安装MySQL的yum库——

# 安装Mysql yum库
rpm -Uvh http://repo.mysql.com//mysql57-community-release-el7-7.noarch.rpm

MySQL安装

使用yum安装

由于不需要考虑软件包之间的依赖问题,我们直接使用yum命令安装MySQL即可——

# yum安装Mysql
yum -y install mysql-community-server

开机自启动

我们希望MySQL在开机的时候就处于运行状态,所以先将MySQL启动,然后为其配置开机自启——

# 启动
systemctl start mysqld
# 开机自启
systemctl enable mysqld

检查运行状态

MySQL安装完成后,会自动配置mysqld服务,可以被systemctl所管理。

使用下面的代码来检查MySQL运行状态——

# 检查运行状态
systemctl status mysqld

当出现下面的字样时,则说明MySQL处于正常运行状态——

MySQL配置

在本步骤中,主要配置管理员用户root的密码以及配置允许远程登录的权限。

初始密码

MySQL的初始密码通常保存在/var/log/mysqld.log文件中,想要获取该密码,我们可以使用grep命令过滤出含有密码的语句——

# 通过grep命令,在/var/log/mysqld.log文件中,过滤temporary password关键字,得到初始密码
grep 'temporary password' /var/log/mysqld.log

比如,下面的红色框中的就是初始密码(每个人不一样)——

登录

使用下面的命令,进入输入密码的命令行——

# 准备输入密码
mysql -uroot -p 

-u,登陆的用户,MySQL数据库的管理员用户同Linux一样,是root,因此这里是-uroot。

-p,表示使用密码登陆。

在出现的提示输入密码处,将我们之前的初始密码复制粘贴过来——

注意,密码是不显示的,不要认为是卡了就重复输入。

当出现下面的命令行提示时,说明MySQL就可以正常使用了。

修改root密码

显然,初始密码还是有些太复杂了,我们可以通过下面的代码,进行对初始密码的修改——

# 在MySQL控制台进行密码修改操作
ALTER USER 'root'@'localhost' IDENTIFIED BY '你的密码';

密码需要符合:大于8位,有大写字母,有特殊符号,不能是连续的简单语句如123,abc。

如果我们需要设置简单、好记的密码,则在设置密码之前还需要进行下面的操作(实际开发中不建议用,这里只是为了方便)——

# 如果你想设置简单密码,需要降低Mysql的密码安全级别
set global validate_password_policy=LOW; # 密码安全级别低
set global validate_password_length=4;	 # 密码长度最低4位即可

退出MySQL

在mysql控制台,使用exit命令退出MySQL——

exit;

字符集配置

数据库字符集未设定的情况下,导入数据会因为字符集的问题而导致导入失败,所以在数据导入前,需要重新设置数据库字符集配置。

退出MySQL后,使用vi命令打开mysql的配置文件——

vi /etc/my.cnf

点击i进入编辑模式,为字符集文件增添下面的配置——

[mysql]
# 设置mysql客户端默认字符集
default-character-set=utf8[mysqld]
# 服务端使用的字符集默认为8比特编码的latin1字符集
character-set-server=utf8
# 创建新表时将使用的默认存储引擎
default-storage-engine=INNODB

完整结构如下——

# For advice on how to change settings please see
# http://dev.mysql.com/doc/refman/5.7/en/server-configuration-defaults.html
[mysql]
# 设置mysql客户端默认字符集
default-character-set=utf8[mysqld]
#
# Remove leading # and set to the amount of RAM for the most important data
# cache in MySQL. Start at 70% of total RAM for dedicated server, else 10%.
# innodb_buffer_pool_size = 128M
#
# Remove leading # to turn on a very important data integrity option: logging
# changes to the binary log between backups.
# log_bin
#
# Remove leading # to set options mainly useful for reporting servers.
# The server defaults are faster for transactions and fast SELECTs.
# Adjust sizes as needed, experiment to find the optimal values.
# join_buffer_size = 128M
# sort_buffer_size = 2M
# read_rnd_buffer_size = 2M
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock# 服务端使用的字符集默认为8比特编码的latin1字符集
character-set-server=utf8
# 创建新表时将使用的默认存储引擎
default-storage-engine=INNODB# Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid

点击Esc退出编辑模式,输入下面的命令保存并退出——

:wq!

至此,我们完成了MySQL的云端配置。 

结束语

本期内容到此结束。关于本系列的其他博客,可以查看我的云端部署专栏。

在全栈领域,博主也只不过是一个普通的萌新而已。本系列的博客主要是记录一下自己学习的一些经历,然后把自己领悟到的一些东西总结一下,分享给大家。

文章全篇的操作过程都是笔者亲自操作完成的,一些定义性的文字加入了笔者自己的很多理解在里面,所以仅供参考。如果有说的不对的地方,还请谅解。

==期待与你在下一期博客中再次相遇==

——放了挺久的【H2O2】

 

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

如若内容造成侵权/违法违规/事实不符,请联系一条长河网进行投诉反馈,一经查实,立即删除!

相关文章

数据结构-二叉平衡树

一.平衡二叉树 二叉搜索树插入的次序不同导致不同的深度和平均查找长度ASL 左右子树高度差不超过绝对值1的二叉搜索是二叉平衡树 二.平衡二叉树的调整 在右子树的右子树上的插入做RR插入 把被破坏节点的右子树变成跟节点并把这个右子树的左子树挂载到原来被破坏的结点的右子树…

【PCIE716-0】基于PCIe总线架构的XC7Z100 FPGA高性能实时信号处理平台

板卡概述 PCIE716-0是一款基于PCIe总线架构的XC7Z100 FPGA高性能实时信号处理平台。该平台采用Xilinx的ZYNQ SOC系列产品XC7Z100作为主处理器。 该平台的PL端具有1个FMC(HPC)接口,1路PCIe x8主机接口,支持1路UART串口、支持1组6…

从0开始的数据结构速过——番外(1)

目录 尝试 思考与架构设置 编写! 一些额外知识的补充 可变参数模板 std::common_type std::forward 这是《数据结构从0开始》的一个番外。实际上是介绍一下一些现代C的写法。这里以快速构建std::array作为契机来说明一下一些现代C的语法。 尝试 我们在这里呢…

Day10_CSS过度动画

Day10_CSS过度动画 背景 : PC和APP项目我们已经开发完毕, 但是再真正开发的时候有些有些简易的动态效果我们可以使用CSS完成 ; 本节课我们来使用CSS完成基础的动画效果 今日学习目标 CSS3过度CSS3平面动态效果CSS3动画效果案例 1. CSS3过渡 ​ 含义 :过渡指的是元素从一种…

如何制作代购系统的客服支持模块

在代购系统中,客服支持模块是维护用户满意度和忠诚度的关键环节。一个有效的客服支持模块不仅可以解决用户的疑问和问题,还可以收集用户反馈,用于改进服务和产品。本文将详细介绍如何制作一个代购系统的客服支持模块,包括前端界面…

【unity小技巧】一些unity3D灯光的使用与渲染及性能优化方案

文章目录 天空盒反射配置太阳耀斑眩光烘培光照烘培光照时弹出错误,记得勾选模型下面的选择阴影项目配置光源模型模型shader的问题 全局光照混合光照模式混合照明模式减性照明模式Shadowmask照明模式间接烘焙照明模式 环境光遮罩灯光探针反射探针技术关闭反射探针可以…

Spring Boot汽车资讯:科技与汽车的对话

5系统详细实现 5.1 管理员模块的实现 5.1.1 用户信息管理 汽车资讯网站的系统管理员可以管理用户,可以对用户信息修改删除审核以及查询操作。具体界面的展示如图5.1所示。 图5.1 用户信息管理界面 5.1.2 汽车品牌管理 系统管理员可以汽车品牌信息进行添加&#xf…

go 学习网站,go例子 go demo go学习视频

1. 代码例子: Go by Example 2. b站 视频: 尚硅谷视频: 004_尚硅谷_程序的基本概念_哔哩哔哩_bilibili 3. go技术文档: fmt Go语言中文文档

记录下,用油猴Tampermonkey监听所有请求,绕过seesion

油猴Tampermonkey监听所有请求,绕过seesion 前因后果脚本编写 前因后果 原因是要白嫖一个网站的接口,这个接口的页面入口被隐藏掉了,不能通过页面调用,幸好之前有想过逆向破解通过账号密码模拟登录后拿到token,请求该…

网络安全:我们的安全防线

在数字化时代,网络安全已成为国家安全、经济发展和社会稳定的重要组成部分。网络安全不仅仅是技术问题,更是一个涉及政治、经济、文化、社会等多个层面的综合性问题。从宏观到微观,网络安全的重要性不言而喻。 宏观层面:国家安全与…

多账号登录管理器(淘宝、京东、拼多多等)

目录 下载安装与运行 解决什么问题 功能说明 目前支持的平台 功能演示 登录后能保持多久 下载安装与运行 下载、安装与运行 语雀 解决什么问题 多个账号的快捷登录与切换 功能说明 支持多个电商平台支持多个账号的登录保持支持快捷切换支持导入导出支持批量删除支持…

浅谈网络 | 二层到三层

目录 物理层到MAC层第一层(物理层)第二层(数据链路层)局域网 交换机与VLAN生成树协议VLAN ICMP与pingICMP 协议的格式 网关静态路由是什么? 路由协议如何配置策略路由?动态路由算法动态路由协议 物理层到MA…

c++ 后端

基础知识 1. 指针、引用2. 数组3. 缺省参数4. 函数重载5. 内联函数6. 宏7. auto8. const9. 类和对象10. 类的6个默认成员函数11. 初始化列表12. this指针13. C/C的区别14. C 三大特性15. 结构体内存对齐规则16. explicit17. static18. 友元类、友元函数19. 内部类20. 内存管理&…

汽车资讯新趋势:Spring Boot技术解读

5系统详细实现 5.1 管理员模块的实现 5.1.1 用户信息管理 汽车资讯网站的系统管理员可以管理用户,可以对用户信息修改删除审核以及查询操作。具体界面的展示如图5.1所示。 图5.1 用户信息管理界面 5.1.2 汽车品牌管理 系统管理员可以汽车品牌信息进行添加&#xf…

【C++】vector

一、vector的介绍及使用 1.1 vector的介绍 vector的底层与string相似都是顺序表形式管理数组,本质上来说string就可以归入到vector里面,但是在实际使用中,字符有很多自身独有的接口设计需要,因此string被单独拿出来设计。在前面s…

uniapp Uview上传图片组件Upload会自动刷新

背景 最近在做跑团小程序,马上接近尾声了,今天新增一个团长增加活动页面: 然后一切准备就绪,发现了一个问题,当选择上传图片后,页面会自动刷新,把之前填写的信息全部重置了。奇怪了&#xff0c…

软件测试之缺陷管理

一、软件缺陷的基本概念 1、软件缺陷的基本概念主要分为:缺陷、故障、失效这三种。 (1)缺陷(defect):存在于软件之中的偏差,可被激活,以静态的形式存在于软件内部,相当…

数字资产与大健康领域的知识宝藏:高效知识库搭建策略

在数字化时代,大健康领域的企业积累了丰富的数字资产,这些资产如同一座待挖掘的金矿,蕴含着巨大的价值。高效搭建知识库,能够将这些数字资产转化为企业竞争力。 数字资产与大健康领域知识宝藏 数字资产在大健康领域包括患者数据…

使用WebRTC实现点对点实时音视频通信的技术详解

💓 博客主页:瑕疵的CSDN主页 📝 Gitee主页:瑕疵的gitee主页 ⏩ 文章专栏:《热点资讯》 使用WebRTC实现点对点实时音视频通信的技术详解 使用WebRTC实现点对点实时音视频通信的技术详解 使用WebRTC实现点对点实时音视频…

Leetcode打卡:最少翻转次数使二进制矩阵回文II

执行结果:通过 题目:3240 最少翻转次数使二进制矩阵回文II 给你一个 m x n 的二进制矩阵 grid 。 如果矩阵中一行或者一列从前往后与从后往前读是一样的,那么我们称这一行或者这一列是 回文 的。 你可以将 grid 中任意格子的值 翻转 &…