程序员

【Linux 6】通过Shell编程实现定时备份数据库

作者:admin 2021-07-29 我要评论

一、为什么要学习Shell编程 1、Linux运维工程师在进行服务器集群管理时需要编写Shell程序进行服务器管理。 2、对于JavaEE和Python程序员来说工作的需要你的老大...

在说正事之前,我要推荐一个福利:你还在原价购买阿里云、腾讯云、华为云服务器吗?那太亏啦!来这里,新购、升级、续费都打折,能够为您省60%的钱呢!2核4G企业级云服务器低至69元/年,点击进去看看吧>>>)

一、为什么要学习Shell编程

1、Linux运维工程师在进行服务器集群管理时,需要编写Shell程序进行服务器管理。

2、对于JavaEE和Python程序员来说,工作的需要,你的老大会要求你编写一些Shell脚本进行程序进行服务器的维护,比如编写一个定时备份数据库的脚本。

3、对于大数据程序员来说,需要编写Shell程序来管理集群。

二、Shell是什么

Shell是一个命令行解释器,它为用户提供了一个向Linux内核发送请求以便运行程序的界面系统级程序,用户可以用Shell来启动、挂起、停止甚至是编写一些程序。

三、编写第一个Shell脚本

1、脚本格式要求

  1. 脚本以#!/bin/bash开头
  2. 脚本需要有可执行权限

2、用Shell脚本输出hello shell

四、Shell的变量

1、Shell变量简介

  1. Linux Shell中的变量分为系统变量和用户自定义变量。
  2. 系统变量:$HOME、$PWD、$SHELL、$USER等,比如echo $HOME
  3. 显示当前shell中所有变量:set

2、shell变量的定义

(1)基本语法:

  1. 定义变量:变量名=值
  2. 撤销变量:unset 变量
  3. 声明静态变量:readonly变量,注意,不能unset

(2)定义变量的规则:

  1. 变量名称可以由字母、数字和下划线组成,但是不能以数字开头。
  2. 等号两侧不能有空格
  3. 变量名称一般习惯为大写,这是一个规范,遵守即可。

(3)将命令的返回值赋给变量

  1. NAME=`date`反引号,运行里面的命令,并将结果赋给变量NAME
  2. NAME=$(date)等价于反引号

3、代码实例

五、传参

六、备份数据库

1、需求分析

  1. 每天凌晨2:30备份数据库gooReey到/data/backup/db
  2. 备份开始和备份结束能够给出相应的提示信息
  3. 备份后的文件要求以备份时间为文件名,并打包成.tar.gz的形式,比如:2021-04-17_230201.tar.gz
  4. 在备份的同时,检查是否有10天前备份的数据库文件,如果有就将其删除

2、代码实例

?

往期精彩内容:

Java知识体系总结(2021版)

Java多线程基础知识总结

【全栈最全Java框架总结】SSH、SSM、Springboot

超详细的springBoot学习笔记

常见数据结构与算法整理总结

Java设计模式:23种设计模式全面解析

Java面试题总结(附答案)

;原文链接:https://blog.csdn.net/guorui_java/article/details/115792966

版权声明:本文转载自网络,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。本站转载出于传播更多优秀技术知识之目的,如有侵权请联系QQ/微信:153890879删除

相关文章
  • 【Linux 6】通过Shell编程实现定时备份

    【Linux 6】通过Shell编程实现定时备份

  • Nessus下载及安装

    Nessus下载及安装

  • Linux实现socks终端代理、全局代理

    Linux实现socks终端代理、全局代理

  • 拒做背锅侠!如何利用网站性能优化驱动

    拒做背锅侠!如何利用网站性能优化驱动

腾讯云代理商
海外云服务器