zoukankan      html  css  js  c++  java
  • 通过shell脚本进行数据库操作

    在做一些日常的运维工作的时候,经常需要些一些shell脚本进行设备性能以及其它参数的监控。在过去的一年工作中,接触到的比较多的是对数据库中某些信息的监控。
    于是就想到了用shell+mysql+crontab进行实现。
    下面附上通过shell命令行非交互式的操作数据库的方法:
    mysql -hhostname -Pport -uusername -ppassword -e 相关mysql的sql语句,不用在mysql的提示符下运行mysql,即可以在shell中操作mysql的方法。
    #!/bin/bash

    HOSTNAME="192.168.111.84"  #数据库信息

    PORT="3306"

    USERNAME="root"

    PASSWORD=""

    DBNAME="test_db_test"  #数据库名称

    TABLENAME="test_table_test" #数据库中表的名称

    #创建数据库

    create_db_sql="create database IF NOT EXISTS ${DBNAME}"

    mysql -h${HOSTNAME} -P${PORT} -u${USERNAME} -p${PASSWORD} -e "${create_db_sql}"

    #创建表

    create_table_sql="create table IF NOT EXISTS ${TABLENAME} ( name varchar(20), id int(11) default 0 )"

    mysql -h${HOSTNAME} -P${PORT} -u${USERNAME} -p${PASSWORD} ${DBNAME} -e "${create_table_sql}"

    #插入数据

    insert_sql="insert into ${TABLENAME} values('billchen',2)"

    mysql -h${HOSTNAME} -P${PORT} -u${USERNAME} -p${PASSWORD} ${DBNAME} -e "${insert_sql}"

    #查询

    select_sql="select * from ${TABLENAME}"

    mysql -h${HOSTNAME} -P${PORT} -u${USERNAME} -p${PASSWORD} ${DBNAME} -e "${select_sql}"

    #更新数据

    update_sql="update ${TABLENAME} set id=3"

    mysql -h${HOSTNAME} -P${PORT} -u${USERNAME} -p${PASSWORD} ${DBNAME} -e "${update_sql}"

    mysql -h${HOSTNAME} -P${PORT} -u${USERNAME} -p${PASSWORD} ${DBNAME} -e "${select_sql}"

    #删除数据

    delete_sql="delete from ${TABLENAME}"

    mysql -h${HOSTNAME} -P${PORT} -u${USERNAME} -p${PASSWORD} ${DBNAME} -e "${delete_sql}"

    mysql -h${HOSTNAME} -P${PORT} -u${USERNAME} -p${PASSWORD} ${DBNAME} -e "${select_sql}"

  • 相关阅读:
    parted 2T以上磁盘分区和挂载
    MySQL 表空间恢复
    MySQL 绿色版安装
    EF core
    让vs自动提示没有using的类
    Android Studio 的 Gradle 面板没有 Task
    JMS微服务远程调用性能测试 vs .Net Core gRPC服务
    electron打包,使用electron-packager
    EasyNetQ(RabbitMQ)在处理消息时,如果抛出异常,继续不断发送到订阅队列,不断处理(也就是不自动确认消息已到达)
    调用系统默认浏览器,打开网页
  • 原文地址:https://www.cnblogs.com/276815076/p/5508014.html
Copyright © 2011-2022 走看看