一、数据库基本操作

    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. 843. n-皇后问题(dfs+输出各种情况)

    n-皇后问题是指将 n 个皇后放在 n∗n 的国际象棋棋盘上,使得皇后不能相互攻击到,即任意两个皇后都不能处于同一行.同一列或同一斜线上. 现在给定整数n,请你输出所有的满足条件的棋子摆法. 输入格式 ...

  2. 修改url中参数值

    1.一种方法function changeUrlArg(url, arg, val){ var pattern = arg+'=([^&]*)'; var replaceText = arg+ ...

  3. 假期学习【十一】Python切词,以及从百度爬取词典

    今天主要对从CSDN爬取的标题利用jieba(结巴)进行分词,但在分词过程中发现,如大数据被分成了大/数据,云计算被分隔成了云/计算. 后来又从百度百科--->信息领域爬取了相关词语作为词典,预 ...

  4. vue.js 的cdn 链接的引用地址

    引用地址有两种一种完整版,一种压缩版效果是一样的 https://cdn.jsdelivr.net/npm/vue@2.5.16/dist/vue.js https://cdn.bootcss.com ...

  5. IDEA更换背景颜色与字体

    打开IDEA 选择左上角的File  ->  Setting -> Editor  -> Color Scheme  就可以设置  黑白背景  默认为白色  可以选择  Darcul ...

  6. python 深浅copy总结

    总结: ''' 总结:假设l1为原数据,l2为deepcopy后的数据: 1.浅copy,只能改变第一层的内存地址(不可变数据类型除外). 2.深copy,能够改变第一层和第二层的内存地址(不可变数据 ...

  7. 0002 增加APP配置

    创建好工程后的第一步就是配置APP,目前有两个APP,配置APP的步骤如下: 01 APP目录配置 01.1 在APP目录下创建Templates目录,用于存储模板文件 01.2 在APP目录下创建v ...

  8. nginx禁止限制某个IP地址或网段访问服务器

    nginx配置访问ip需要修改nginx.conf文件,只需要在server中添加allow跟deny的ip即可,如下: upstream novel { server ; } server { li ...

  9. Python + Selenium +Chrome 批量下载网页代码修改【新手必学】

    Python + Selenium +Chrome 批量下载网页代码修改主要修改以下代码可以调用 本地的 user-agent.txt 和 cookie.txt来达到在登陆状态下 批量打开并下载网页, ...

  10. 菜单制作:ul li横向排列

    CSS菜单制作 <!DOCTYPE html> <html lang="en"> <head> <meta charset="U ...