一、数据库基本操作

    1)登录mysql服务器:mysql -u root -p 密码

    2)查看数据库:show databases

    3)查看表:show tales from db;

    4)查看表结构:desc table;

    5)创建表:create table table();

    6)查看表数据:select * from table;

    7)插入数据:insert into table(f1,f2) values('v1','v2');

    8)删除数据:delete from table where id=8;

    9)修改表数据:update table t1 set f1='123',f2='abc' where id=8;

    10)删除表:drop table t1;

    11)删除数据库:drop database d1;

二、shell操作mysql之增、删、改、查

    1)连接数据库

        #!/bin/bash

        #mysql.sh

        mysql='mysql -uroot -proot'

        sql="show databases"

        $mysql -e "$sql"

      2)shell操作mysql之增、删、改、查

        

        #!/bin/bash

        #mysql1.sh

        conn="mysql -uroot -proot"

        case $1 in

        select)

        sql="查询语句"

        ;;

        delete)

        sql="删除语句"

        ;;

        insert)

        sql="插入语句"

        ;;

        update)

        sql="更新语句"

        ;;

        esac

        $conn -e "$sql"

三、apache日志分割及相关计划任务      

        #!/bin/bash

        #logcut.sh

        yesterday=`date -d yesterday +%Y%m%d`

        srclog="/usr/local/apache2.4/logs/access_log"

        dstlog="/usr/local/apache2.4/logsbak/access_${yesterday}.log"

        mv $srclog $dstlog

        pkill -HUP httpd        //pkill -1 httpd  重新读取日志文件

      crontab -e        //任务计划

        00 00 *** /mnt/logcut.sh

      crontab -l        //查看任务计划

四、apache日志统计之mysql数据库

       结合日志分割同时对日志进行统计存入数据库

        #!/bin/bash

        #logpv.sh

        yesterday=`date -d yesterday +%Y%m%d`

        srclog="/usr/local/apache2.4/logs/access_log"

        dstlog="/usr/local/apache2.4/logsbak/access_${yesterday}.log"

        mv $srclog $dstlog

        pkill -1 httpd

        cat /usr/local/apache2.4/logsbak/access_20171125.log|awk '{print $1}'|sort|uniq -c|awk '{print $1":"$2}' > a.txt    //这里的目录及文件名可以是$dstlog

        mysql="mysql -uroot -proot"

        for i in `cat a.txt`  

        do

        pv=`echo $i|awk -F: '{print $1}'`

        ip=`echo $i|awk -F: '{print $2}'`

        sql="insert into text.countab(date,ip,num) value('$yesterday','$ip','$pv')"

        $mysql -e "$sql"

        done

        rm -rf a.txt

        sql="select * from text.countab order by id"

        $mysql -e "$sql"

      crontab -e        //任务计划

        00 00 *** /mnt/logcut.sh

      crontab -l        //查看任务计划


shell脚本编程学习笔记(四)shell操作数据库的更多相关文章

  1. Linux Shell脚本编程学习笔记和实战

    http://www.1987.name/141.html shell基础 终端打印.算术运算.经常使用变量 Linux下搜索指定文件夹下特定字符串并高亮显示匹配关键词 从键盘或文件里获取标准输入 [ ...

  2. 【Linux_Shell 脚本编程学习笔记四、监控系统内存并报警企业案例脚本】

    前置知识:awk 参考学习博客:https://www.cnblogs.com/bugingcode/p/8287914.html awk 'BEGIN{ commands } pattern{ co ...

  3. shell脚本编程学习笔记(一)

    一.脚本格式 vim shell.sh #!/bin/bash //声明脚本解释器,这个‘#’号不是注释,其余是注释 #Program: //程序内容说明 #History: //时间和作者 二.sh ...

  4. shell脚本编程学习笔记(三)编写邮件报警脚本

    一.shell编写邮件报警脚本 1.POSTFIX邮件服务器准备 a.首先卸载服务器上自带的sendmail rpm -qa sendmail* //查看安装的sendmail rpm -e send ...

  5. shell脚本编程学习笔记(二)linux服务器启动流程

    一.linux服务器启动流程 1.bios找到磁盘上的mbr主引导扇区 2.进入grub洁面选择相应的启动内核 3.读取kernel内核文件-/boot/vmlinuz-* 4.读取init的镜像文件 ...

  6. Shell脚本编程学习入门 02

    Shell脚本编程学习入门是本文要介绍的内容,我们可以使用任意一种文字编辑器,比如gedit.kedit.emacs.vi等来编写shell脚本,它必须以如下行开始(必须放在文件的第一行):   #! ...

  7. Bash脚本编程学习笔记07:循环结构体

    本篇中涉及到算术运算,使用了$[]这种我未在官方手册中见到的用法,但是确实可用的,在此前的博文<Bash脚本编程学习笔记03:算术运算>中我有说明不要使用,不过自己忘记了.大家还是尽量使用 ...

  8. Bash脚本编程学习笔记08:函数

    官方资料:Shell Functions (Bash Reference Manual) 简介 正如我们在<Bash脚本编程学习笔记06:条件结构体>中最后所说的,我们应该把一些可能反复执 ...

  9. Bash脚本编程学习笔记06:条件结构体

    简介 在bash脚本编程中,条件结构体使用if语句和case语句两种句式. if语句 单分支if语句 if TEST; then CMD fi TEST:条件判断,多数情况下可使用test命令来实现, ...

随机推荐

  1. 图片,base64 互转

    import sun.misc.BASE64Decoder; import java.io.FileOutputStream; import java.io.OutputStream; /** * @ ...

  2. 单调栈(POJ2559)

    Description A histogram is a polygon composed of a sequence of rectangles aligned at a common base l ...

  3. Subway POJ - 2502 spfa

    #include<cstdio> #include<cmath> #include<cstring> #include<cstring> #includ ...

  4. 1.mysql卸载重新安装问题

    前言:在开发过程中,MySQL数据库是很频繁使用的数据库,但是有时候,数据库一单出错,或者其他原因,想要重装数据库,难免会遇到MySQL重装之后服务启不来,,下面我就跟大家讨论下如何干净的卸载MySQ ...

  5. sap gui中打断点,进入不了断点

    1: 当abap development tool 打开时,会影响sap gui中的断点进入. 2: 需要sap gui和abap development tool  都关闭,重新进入sap gui打 ...

  6. Selenium3+python自动化009-iframe定位

    iframe 一.frame:HTML页面中的一种框架,主要作用是在当前页面中指定区域显示另一页面元素: 二.操作Frame中的页面元素 定位元素: 1.id定位driver.switch_to.fr ...

  7. 线程锁Lock ,Rlock

    锁的引入: 我们查看官方文档:https://docs.python.org/3/library/threading.html#lock-objects 原语锁:threading.Lock 实现原始 ...

  8. javascript当中静态方法和prototype用法

    6)静态方法和prototype(难) 例 3.6.1 <head>    <meta http-equiv="content-type" content=&qu ...

  9. 腾讯云COS对象存储

    一.腾讯云COS 腾讯云对象存储 COS 是一种存储海量数据的分布式存储服务.COS 提供了多种对象的存储类型:标准存储.低频存储.归档存储. 二.为什么要使用TA 便宜: 个人用户有6个月的免费使用 ...

  10. bugku 这么多数据包

    看到之后有点懵逼 然后下载 下载之后发现是一个pacp后缀的流量数据包 然后用wireshark 然后只想到了 http过滤 然后发现不对 然后参考其他人的博客 经大佬提示, 一般 getshell ...