一起重新开始学大数据-Linux篇-Day32-shell脚本(2)、时间、定时器、安装MySQL

本文主要是介绍一起重新开始学大数据-Linux篇-Day32-shell脚本(2)、时间、定时器、安装MySQL,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

一起重新开始学大数据-Linux篇-Day32-shell脚本(2)、时间、定时器、安装MySQL

在这里插入图片描述

shell 脚本(2)

函数

格式:

function 方法名(){
方法体
return 数字;
}

注意:

function和return可加可不加

$0…$n表示接收参数,$0永远是脚本名称(忽略)
方法的调用直接使用方法名不加()
return只能返回数字范围在0-255之间
$?接收返回值只能接收一次

案例:

在这里插入图片描述

[root@tt shell]# cat fun.sh 
#!/bin/env bash
function fun(){echo "helloworld"a=1b=2echo "两数之和为:"echo $((a+b))return $((b-a))  #返回值为b-a=1,返回值范围在0-255之间
}
fun #调用方法直接使用方法名
echo "两数之差为:$?" #$?接受返回值
[root@tt shell]# bash fun.sh 
helloworld
两数之和为:
3
两数之差为:1

时间

获取当前日期时间

date +"%Y-%m-%d %H:%M:%S"
可缩写:
date +"%F %T"
在这里插入图片描述

格式化日期时间:

date -d today +"%Y-%m-%d %H:%M:%S"

加减日期时间

date +%Y%m%d //显示前天年月日
date +%Y%m%d --date="+1 day" //显示前一天的日期
date +%Y%m%d --date="-1 day" //显示后一天的日期
date +%Y%m%d --date="-1 month" //显示上一月的日期
date +%Y%m%d --date="+1 month" //显示下一月的日期
date +%Y%m%d --date="-1 year" //显示前一年的日期
date +%Y%m%d --date="+1 year" //显示下一年的日期

重定向:执行命令的结果写写入到文件

command >> file 将输出以追加的方式重定向到 file
command > file 将输出重定向到 file

重定向深入讲解

一般情况下,每个 Unix/Linux 命令运行时都会打开三个文件:

标准输入文件(stdin):stdin的文件描述符为0,默认从stdin读取数据。

标准输出文件(stdout):stdout 的文件描述符为1,默认向stdout输出数据。

标准错误文件(stderr):stderr的文件描述符为2,向stderr流中写入错误信息。

在这里插入图片描述

注意:

使用>,>>默认是把正确信息写入文件
想要把错误信息和正确信息写入文件需要后面追加2>&1(把错误信息当做正确信息去处理)
在这里插入图片描述

定时器:

格式:

通过crontab -e添加定时任务

*(分钟) *(小时) *(星期) *(几号) *(月份) commend
在这里插入图片描述

例:使用crontab -e增加命令 date+"%F %T"(这个不明显可以不搞)

在这里插入图片描述

查看定时任务是否执行了,看日志

tail -f /var/log/cron
在这里插入图片描述

注意:

定时器或脚本中涉及到路径的全部给绝对路径

例子:

* * * * * 每分钟
*/1 * * * * 每分钟
0 */1 * * * 每小时

<-----------------------------------------分割线------------------------------------->

<-----------------------------------------分割线------------------------------------->

安装mysql

在这里插入图片描述

1、关闭防火墙

systemctl stop firewalld.service #停止firewall
systemctl disable firewalld.service #禁止firewall开机启动

查看防火墙状态

firewall-cmd --state

2、修改主机名

第一种

hostnamectl set-hostname base

第二种

vim /etc/hostname

查看主机名

hostnamectl status

3、修改ip地址

vim /etc/sysconfig/network-scripts/ifcfg-ens33

TYPE=Ethernet

PROXY_METHOD=none
BROWSER_ONLY=no
BOOTPROTO=none
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
NAME=ens33
DEVICE=ens33
ONBOOT=yes
IPADDR=192.168.129.211
NETMASK=255.255.255.0
GATEWAY=192.168.129.2
DNS1=192.168.129.2

4、安装mysql5.7

步骤:

(1-6按顺序,7复制好临时密码,8执行代码输入临时密码进入sql界面,9-11sql界面里面执行,12linux终端执行)

①下载yum Repository

wget -i -c http://dev.mysql.com/get/mysql57-community-release-el7-10.noarch.rpm

②安装yum Repository

yum -y install mysql57-community-release-el7-10.noarch.rpm

③安装mysql5.7

yum -y install mysql-community-server

④开机自启动

systemctl enable mysqld.service

⑤启动mysql

systemctl start mysqld.service

⑥查看状态

systemctl status mysqld.service

⑦获取临时密码

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

⑧登录mysql

mysql -uroot -p

⑨关闭密码复杂验证

set global validate_password_policy=0;
set global validate_password_length=1;

⑩设置密码

alter user user() identified by "123456";

11.修改权限

use mysql;
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '123456' WITH GRANT OPTION; --修改权限
flush privileges; --刷新权限
select host,user,authentication_string from user; --查看权限

12.卸载yum Repository

因为安装了Yum Repository,以后每次yum操作都会自动更新,需要把这个卸载掉:
yum -y remove mysql57-community-release-el7-10.noarch

***卸载mysql(完全卸载的方法)

删除依赖包

rpm -qa |grep -i mysql
yum remove mysql-community mysql-community-server mysql-community-libs mysql-community-common

清理文件

find / -name mysql
rm -rf 文件名

|
|
|
|
|
|

上一章-Linux篇-Day31-shell脚本(1)

下一章-MySQL篇-Day33-SQL、建库建表、增删查改、聚合函数等

听说长按大拇指👍会发生神奇的事情呢!好像是下面的画面,听说点过的人🧑一个月内就找到了对象的💑💑💑,并且还中了大奖💴$$$,考试直接拿满分💯,颜值突然就提升了😎,虽然对你好像也不需要,是吧,吴彦祖🤵!

在这里插入图片描述在这里插入图片描述
在这里插入图片描述

这篇关于一起重新开始学大数据-Linux篇-Day32-shell脚本(2)、时间、定时器、安装MySQL的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/871491

相关文章

防止Linux rm命令误操作的多场景防护方案与实践

《防止Linuxrm命令误操作的多场景防护方案与实践》在Linux系统中,rm命令是删除文件和目录的高效工具,但一旦误操作,如执行rm-rf/或rm-rf/*,极易导致系统数据灾难,本文针对不同场景... 目录引言理解 rm 命令及误操作风险rm 命令基础常见误操作案例防护方案使用 rm编程 别名及安全删除

Linux下MySQL数据库定时备份脚本与Crontab配置教学

《Linux下MySQL数据库定时备份脚本与Crontab配置教学》在生产环境中,数据库是核心资产之一,定期备份数据库可以有效防止意外数据丢失,本文将分享一份MySQL定时备份脚本,并讲解如何通过cr... 目录备份脚本详解脚本功能说明授权与可执行权限使用 Crontab 定时执行编辑 Crontab添加定

C++统计函数执行时间的最佳实践

《C++统计函数执行时间的最佳实践》在软件开发过程中,性能分析是优化程序的重要环节,了解函数的执行时间分布对于识别性能瓶颈至关重要,本文将分享一个C++函数执行时间统计工具,希望对大家有所帮助... 目录前言工具特性核心设计1. 数据结构设计2. 单例模式管理器3. RAII自动计时使用方法基本用法高级用法

使用docker搭建嵌入式Linux开发环境

《使用docker搭建嵌入式Linux开发环境》本文主要介绍了使用docker搭建嵌入式Linux开发环境,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面... 目录1、前言2、安装docker3、编写容器管理脚本4、创建容器1、前言在日常开发全志、rk等不同

Java实现远程执行Shell指令

《Java实现远程执行Shell指令》文章介绍使用JSch在SpringBoot项目中实现远程Shell操作,涵盖环境配置、依赖引入及工具类编写,详解分号和双与号执行多指令的区别... 目录软硬件环境说明编写执行Shell指令的工具类总结jsch(Java Secure Channel)是SSH2的一个纯J

MyBatis-plus处理存储json数据过程

《MyBatis-plus处理存储json数据过程》文章介绍MyBatis-Plus3.4.21处理对象与集合的差异:对象可用内置Handler配合autoResultMap,集合需自定义处理器继承F... 目录1、如果是对象2、如果需要转换的是List集合总结对象和集合分两种情况处理,目前我用的MP的版本

MySQL中On duplicate key update的实现示例

《MySQL中Onduplicatekeyupdate的实现示例》ONDUPLICATEKEYUPDATE是一种MySQL的语法,它在插入新数据时,如果遇到唯一键冲突,则会执行更新操作,而不是抛... 目录1/ ON DUPLICATE KEY UPDATE的简介2/ ON DUPLICATE KEY UP

MySQL分库分表的实践示例

《MySQL分库分表的实践示例》MySQL分库分表适用于数据量大或并发压力高的场景,核心技术包括水平/垂直分片和分库,需应对分布式事务、跨库查询等挑战,通过中间件和解决方案实现,最佳实践为合理策略、备... 目录一、分库分表的触发条件1.1 数据量阈值1.2 并发压力二、分库分表的核心技术模块2.1 水平分

GSON框架下将百度天气JSON数据转JavaBean

《GSON框架下将百度天气JSON数据转JavaBean》这篇文章主要为大家详细介绍了如何在GSON框架下实现将百度天气JSON数据转JavaBean,文中的示例代码讲解详细,感兴趣的小伙伴可以了解下... 目录前言一、百度天气jsON1、请求参数2、返回参数3、属性映射二、GSON属性映射实战1、类对象映

RabbitMQ 延时队列插件安装与使用示例详解(基于 Delayed Message Plugin)

《RabbitMQ延时队列插件安装与使用示例详解(基于DelayedMessagePlugin)》本文详解RabbitMQ通过安装rabbitmq_delayed_message_exchan... 目录 一、什么是 RabbitMQ 延时队列? 二、安装前准备✅ RabbitMQ 环境要求 三、安装延时队