任务7:安装MySQL数据库

任务描述

知识点

  • MySQL数据库安装与使用

重  点

  • 基于CentOS系统,安装MySQL数据库

内  容

  • 安装MySQL数据库
  • 修改root用户密码

任务指导

MySQL是一个关系型数据库管理系统,由瑞典MySQL AB 公司开发,属于 Oracle 旗下产品。MySQL 是最流行的关系型数据库管理系统之一,在 WEB 应用方面,MySQL是最好的 RDBMS (Relational Database Management System,关系数据库管理系统) 应用软件之一。

安装MySQL数据库,需要以下几步:

  1. 关闭防火墙;
  2. 关闭selinux;
  3. 配置ntp服务;
  4. 主机同步中心时间可以使用阿里云时钟服务;
  5. 卸载老版本的MySQL;
  6. 离线安装MySQL;
  7. 配置MySQL(启动MySql并查看启动状态、修改字符集等);
  8. 重启MySQL;
  9. 首次登录并修改密码。

任务实现

1. 卸载老版本的MySQL(在master节点上执行以下操作)

  • 首先执行命令【# rpm -qa|grep mariadb 】查看是否有mariadb的安装包,没有可以无视;

  • 接下来,执行【# rpm -e --nodeps mariadb-libs】删除它。

  • 删除原有安装:先删除服务器上相关的依赖,否则安装会冲突。如果没有相关依赖,可以忽视,如果存在,则需要进行删除。
# rpm -qa |grep mysql
# rpm -qa |grep MySQL
# rpm -qa |grep mariadb

2. 离线安装MySQL

实验所需安装包均放入/home/software/mysql目录下,如没有请手动下载RPM安装包。

在https://dev.mysql.com/downloads/mysql/选择为Red Hat Enterprise Linux 7 / Oracle Linux 7 ,把os的版本选择为all。 直接下载mysql-5.7.28-1.el7.x86_64.rpm-bundle.tar,所有的rpm包都在里面,然后rpm命令安装。

  • 解压压缩包:
# cd /home/software/mysql
# tar -xvf mysql-5.7.28-1.el7.x86_64.rpm-bundle.tar

解压后如图所示:

  • 使用rpm命令安装MySQL(一条命令即可解决)
# rpm -ivh mysql-community-* --nodeps --force

或逐个安装:

rpm -ivh mysql-community-client-5.7.28-1.el7.x86_64.rpm --nodeps --force
rpm -ivh mysql-community-common-5.7.28-1.el7.x86_64.rpm --nodeps --force
rpm -ivh mysql-community-devel-5.7.28-1.el7.x86_64.rpm --nodeps --force
rpm -ivh mysql-community-embedded-5.7.28-1.el7.x86_64.rpm --nodeps --force
rpm -ivh mysql-community-embedded-compat-5.7.28-1.el7.x86_64.rpm --nodeps --force
rpm -ivh mysql-community-embedded-devel-5.7.28-1.el7.x86_64.rpm --nodeps --force
rpm -ivh mysql-community-libs-5.7.28-1.el7.x86_64.rpm --nodeps --force
rpm -ivh mysql-community-libs-compat-5.7.28-1.el7.x86_64.rpm --nodeps --force
rpm -ivh mysql-community-server-5.7.28-1.el7.x86_64.rpm --nodeps --force
rpm -ivh mysql-community-test-5.7.28-1.el7.x86_64.rpm --nodeps --force
  • 启动MySql并查看启动状态
# systemctl start mysqld 
# systemctl status mysqld
  • 修改字符集

当我们在mysql数据中存储中文数据或查询中文数据时,有时可能会显示乱码状态,此情况为mysql数据库中的编码格式的问题,为保证mysql数据库中存储的中文数据显示正常,需要通过修改my.cnf文件,将字符集改为UTF-8,命令如下;

通过修改my.cnf文件,将字符集改为UTF-8,命令如下;

# vim /etc/my.cnf 

在my.cnf文件的【mysqld】部分添加以下内容;

character-set-server=utf8

在文件末尾新增【client】段,并在【client】段添加以下内容;

[client]
default-character-set=utf8

修改好之后,重启mysqld服务,命令如下;

# systemctl restart mysqld 

3. 登录MySQL

注意:首次登录需要从/var/log/mysqld.log中查看root密码:

# grep "temporary password" /var/log/mysqld.log

使用查询到的密码登录MySQL。

# mysql  -uroot  -p   
密码:输入查询到的密码

首次登录后,要求必需立刻修改密码,通过show variables命令,查看密码策略,效果如下所示;

mysql> show variables like 'validate_password%';

如出现:You must reset your password using ALTER USER statement before executing this statement

提示我们首次登录需要立即修改密码,修改密码后即可查看!

11.png

参数解释:

validate_password_dictionary_file 指定密码验证的文件路径;

validate_password_length  密码最小长度;

validate_password_mixed_case_count  密码至少要包含的小写字母个数和大写字母个数;

validate_password_number_count  密码至少要包含的数字个数;

validate_password_policy 密码强度检查等级:0/LOW、1/MEDIUM、2/STRONG,默认为1       注意:   0/LOW:只检查长度;                    1/MEDIUM:检查长度、数字、大小写、特殊字符;                    2/STRONG:检查长度、数字、大小写、特殊字符字典文件。

validate_password_special_char_count密码至少要包含的特殊字符数

修改密码策略,命令如下:

mysql> set global validate_password_length=4;
mysql> set global validate_password_mixed_case_count=0;
mysql> set global validate_password_number_count=0;
mysql> set global validate_password_special_char_count=0;
mysql> set global validate_password_policy=0;

使用set password命令,修改root密码,效果如下所示;

mysql> set password for 'root'@'localhost'=password('root');
mysql> FLUSH PRIVILEGES;

设置开机启动,命令如下:

# systemctl enable mysqld 
# systemctl daemon-reload

4. 解决MySQL重启后无法创建“/var/run/mysqld/mysqld.pid”的问题

  • 问题描述:

CentOS 7.9机器重启后如果MySQL启动失败,出现以下错误:

[ERROR] /usr/sbin/mysqld: Can’t create/write to file ‘/var/run/mysqld/mysqld.pid’ (Errcode: 2 - No such file or directory)

  • 原因分析:

/var/run目录指向/run目录,而/run是一个临时文件系统,存储系统启动以来的信息。当系统重启时,这个目录下的文件应该被删掉或清除。可想而知,CentOS重启后,/var/run/mysqld目录也将消失,而mysql5.x的启动脚本中未自动创建该目录,所以会提示该错误!

  • 解决办法:

修改启动脚本,启动时若找不到/var/run/mysqld目录,则自动创建。(推荐)

# vim /etc/init.d/mysqld

修改以下两部分内容

第1部分:

mypiddir="/var/run/mysqld"
get_mysql_option mysqld_safe pid-file "$mypiddir/mysqld.pid"

第2部分:

        if [ ! -e "$mypiddir" -a ! -h "$mypiddir" ]
        then
                mkdir -p "$mypiddir" || exit 1
        fi
        chown -R mysql:mysql "$mypiddir"

修改后重启MySQL即可

# systemctl daemon-reload
# systemctl restart mysqld

Q&A:可能遇到的问题及解决方案

任务描述

知识点

  • Hadoop集群问题及解决方案

重  点

  • DataNode无法启动的解决方案

内  容

  • 启动\停止所有服务
  • 重新格式化集群
  • 检查配置是否有误

任务指导

Hadoop集群搭建过程中,可能遇到的问题,以及如何解决。

  • 暂停所有服务;
  • 删除相关目录;
  • 重新格式化;
  • 启动Hadoop集群。

任务实现

1. 如果发生DataNode无法启动的情况,可以通过以下几步进行解决:

  • 先执行【stop-all.sh】暂停所有服务;
  • 将所有Salve节点上的tmp(即hdfs-site.xml 中指定的dfs.data.dir文件夹,DataNode存放数据块的位置)、logs文件夹删除,然后重新建立tmp、logs文件夹;
  • 重新格式化【hadoop namenode –format】;
  • 启动【start-all.sh】。

2. 集群启动过程遇到的问题,基本上从以下几个方面解决问题:

  • 检查各个XML文件是否配置正确;
  • Java环境变量配置是否正确;
  • SSH是否无密码互通;
  • Hadoop离开安全模式【# hadoop  dfsadmin  -safemode  leave】;
  • 重新格式化NameNode节点,并重启。

上一个任务下一个任务

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

【汽车销售数据】2015~2023年各厂商各车型的探索 数据分析可视化

数据处理的思路: 1 各表使用情况: 汽车分厂商每月销售表,该表主要分析展示top10销量的厂商销量、占比变化情况(柱形图、饼图);中国汽车分车型每月销售量表,该表主要分析展示top20销量的车型销…

UML-顺序图

提示:用例图从参与者的角度出发,描述了系统的需求(用例图);静态图定义系统中的类和对象间的静态关系(类图、对象图和包图);状态机模型描述系统元素的行为和状态变化流程(…

计算机体系结构基础复习

1. 计算机系统可划分为哪几个层次,各层次之间的界面是什么? 你认为这样划分层次的意义何在? 答: 计算机系统可划分为四个层次,分别是:应用程序、 操作系统、 硬件系统、 晶体管四个大的层次。 注意把这四个层次联系起来的三个界面。各层次…

css 怎么绘制一个带圆角的渐变色的边框

1&#xff0c;可以写两个样式最外面的div设置一个渐变的背景色。里面的元素使用纯色。但是宽高要比外面元素的小。可以利用里面的元素设置padding这样挡住部分渐变色。漏出来的渐变色就像边框一样。 <div class"cover-wrapper"> <div class"item-cover…

春节回家前,请一定给你的电脑装上KKView远程控制软件

马上春节了&#xff0c;电脑不能带回家&#xff0c;有时候要处理点意外的事情&#xff0c;怎么办&#xff1f;只要走之前&#xff0c;给你电脑装上KKView远程控制软件&#xff0c;就可以随时随地用手机或电脑控制你的工作电脑&#xff0c;远程办公、传文件、看摄像头都没问题。…

人脸识别为何老是不过?是什么原因导致的?

人脸识别可能无法通过的原因有很多&#xff0c;以下是可能的一些原因&#xff1a; 1. 非常规面部表情&#xff1a;如果你做出了与常规面部表情不同的表情&#xff0c;如张大嘴巴或瞪大眼睛等&#xff0c;可能会干扰人脸识别系统的准确性。 2. 光线条件&#xff1a;人脸识别系统…

30 3D导航栏

效果演示 实现了一个导航栏&#xff0c;其中包含了五个图标&#xff0c;每个图标都有一个悬浮的文字标签&#xff0c;当鼠标悬停在图标上时&#xff0c;文字标签会旋转并向上移动&#xff0c;同时底部会出现一个阴影效果。整个导航栏的背景颜色为浅灰色。 Code <ul><…

js(JavaScript)数据结构之堆(Heap)

什么是数据结构&#xff1f; 下面是维基百科的解释&#xff1a; 数据结构是计算机存储、组织数据的方式。数据结构意味着接口或封装&#xff1a;一个数据结构可被视为两个函数之间的接口&#xff0c;或者是由数据类型联合组成的存储内容的访问方法封装。 我们每天的编码中都会…

docker安装部署Elasticsearch(ES)以及相关配置

Elasticsearch简介 mysql用作持久化存储&#xff0c;ES用作检索 基本概念&#xff1a;index库>type表>document文档 index索引&#xff08;相当于MySQL的数据库&#xff09; 动词&#xff1a;相当于mysql的insert 名词&#xff1a;相当于mysql的db Type类型&#xff…

Spring Cloud整体架构解析

Spring Cloud整体架构 本文已收录至我的个人网站&#xff1a;程序员波特&#xff0c;主要记录Java相关技术系列教程&#xff0c;共享电子书、Java学习路线、视频教程、简历模板和面试题等学习资源&#xff0c;让想要学习的你&#xff0c;不再迷茫。 Spring Cloud的中文名我们就…

Flask架构--路由和蓝图

学习视频&#xff1a;第二章&#xff1a;路由和蓝图 1 Flask查询路由的方式_哔哩哔哩_bilibili 参考&#xff1a;Flask框架之路由与蓝图的使用_flask 路由和蓝图-CSDN博客 1.路由的概念&#xff1a; 用于将http请求与特定的python函数相匹配。定义路由后&#xff0c;flask程…

电子学会C/C++编程等级考试2023年09月(六级)真题解析

C/C++编程(1~8级)全部真题・点这里 第1题:生日相同 在一个有180人的大班级中,存在两个人生日相同的概率非常大,现给出每个学生的名字,出生月日。试找出所有生日相同的学生。 时间限制:1000 内存限制:65536 输入 第一行为整数n,表示有n个学生,n ≤ 180。此后每行包含一…

利用XSS漏洞打cookie

目录 1、为什么要打cookie&#xff1f; 2、怎样利用XSS来打cookie&#xff1f; 3、利用Bluelotus_xssReceiver平台来打cookie 4、利用beef-xss平台来打cookie 上一篇给大家介绍了xss漏洞的基础知识&#xff0c;在本篇章将会介绍和演示一下利用xss漏洞打cookie的演示&#x…

【用法总结】LiveData组件要点

1、如何实现和生命周期的关联&#xff1f; 调用observe()方法时&#xff0c;第一个参数传入LifecycleOwner对象&#xff0c;而LifecycleOwner能通过getLifecycle()方法获取到lifecycle对象&#xff0c;然后执行lifecycle.addObserver()添加LiveData中数据&#xff08;mData&am…

1116: 删除元素(数组)

题目描述 输入一个递增有序的整型数组A有n个元素&#xff0c;删除下标为i的元素&#xff0c;使其仍保持连续有序。注意&#xff0c;有效下标从0开始。 定义如下两个函数分别实现删除元素操作和数组输出操作。 void del(int a[], int n, int i); /*删除数组a中下标为i的元素*…

Matlab怎样合并两个矩阵(怎样合并多个矩阵)为一个矩阵

1.合并两个矩阵 a [1 2 3;4 5 6] b [7 8 9;1 2 3] c [a,b] %按行&#xff08;横向&#xff09;合并 c [a;b] %按列&#xff08;纵向&#xff09;合并 2.合并多个矩阵 clc clear temp dir([D:\文件夹\,*.txt]); N length(temp);for i 1:N %先读取文件内所有文件 …

将PDF发票转换为excel、xml结构化数据的完美解决方案

随着电子发票的普及&#xff0c;越来越多的企业和个人开始使用PDF格式的电子发票。然而&#xff0c;有时我们需要将电子发票转换为XML格式以便于处理和分析。本文将介绍如何将收到的PDF发票下载为excel、xml文件。首先&#xff0c;我们需要明确一点&#xff0c;PDF是一种基于图…

(菜鸟自学)搭建虚拟渗透实验室——安装Ubantu 8.10 靶机

安装Ubantu 8.10 靶机 新建虚拟机 选择Ubuntu系统 网络适配器模式选用桥接模式 镜像选用ubuntu8.10版本 点击“开启此虚拟机”以开始安装Ubuntu Linux系统 安装ubuntu 首先需要选择安装时的语言&#xff0c;这里选择“中文&#xff08;简体&#xff09;” 选择“安装…

DAY8--learning english

一、积累 1.haunt Why Ghost dont haunt chinese. 为什么鬼不会出现在中国人旁边? 2.confess i have a confession to make ... I actally a blind. 我要坦白一件事……我其实是个盲人。 3.brake Press S button to brake, or to reverse if the vehicle has stopped, 按住…

QT上位机开发(动画效果)

【 声明&#xff1a;版权所有&#xff0c;欢迎转载&#xff0c;请勿用于商业用途。 联系信箱&#xff1a;feixiaoxing 163.com】 不管是仿真&#xff0c;还是对真实环境的一比一模拟&#xff0c;动画都是非常好的一种呈现方式。目前在qt上面&#xff0c;实现动画主要有两种方法…