一.数据库脚本(mysql.sh)

  • Linux环境下,定时将数据库A的表格复制到数据库B中
#!/bin/bash
mysql_host="127.0.0.1"
mysql_user="root"
mysql_passwd="123456"
dbold="nagios"
dbnew="nagios_summary"
#dbnew="test"
tablename="nagios_servicestatus"
#sql备份目录
root_dir="/home"
back_dir="/home/databases"
if [ ! -d $back_dir ]; then
mkdir -p $back_dir
fi
#Now=$(date +”%d-%m-%Y--%H:%M:%S”)
#Now=$(date+%Y%m%d_%H:%M:%S)
Now=$(date +%Y-%m-%d--%H:%M:%S)
newtablename=$tablename-$Now".sql"
newname=$tablename$(date +%Y%m%d_%H_%M_%S)
cd $back_dir
mysqldump -u$mysql_user -p$mysql_passwd -h$mysql_host $dbold $tablename>$newtablename
#mysql -h$mysql_host -u$mysql_user -p$mysql_passwd $dbnew< $back_dir/$newtablenamei
create_sql=" source ${back_dir}/${newtablename}"
create_table="rename table ${tablename} to ${newname}"
mysql -h$mysql_host -u$mysql_user -p$mysql_passwd $dbnew -e "${create_sql}"
mysql -h$mysql_host -u$mysql_user -p$mysql_passwd $dbnew -e "${create_table}"
if [ $? = 0 ]; then
rm -r ${back_dir}/${newtablename}
fi

二.脚本的定时执行

  • 安装crontab
yum install vixie-cron
yum install crontabs
service crond start //启动服务

查看crontab服务是否已设置为开机启动,执行命令:ntsysv

加入开机自动启动:

 chkconfig --level 35 crond on
  • 每隔1小时执行脚本
 crontab -e
01 */1 * * * /home/mysql.sh

三.导出某些数据表系统命令行mysqldump -uusername -ppassword db1 table1 table2 > tb1tb2.sql7 导入

导出某些数据表

  • 系统命令行
 mysqldump -uusername -ppassword db1 table1 table2 > tb1tb2.sql

导入某些数据表

  • 系统命令行
 mysql -uusername -ppassword db1 < tb1tb2.sql
或mysql命令行
mysql>
user db1;
source tb1tb2.sql;
  • 数据库信息
#!/bin/bash
HOSTNAME="127.0.0.1" #数据库Server信息
PORT="3306"
USERNAME="root"
PASSWORD="123456"
DBNAME1="nagios"
DBNAME2="nagios"
TABLENAME="test_table_name" #要创建的数据库的表的名称

shell脚本定时操作数据库的更多相关文章

  1. shell脚本定时备份数据库

    脚本代码: 新建文件back_db.sh #!/bin/bash TODAYTIME="`date +%Y%m%d`" DBNAME="test mysql" ...

  2. 使用shell脚本定时执行备份mysql数据库

    使用shell脚本定时执行备份mysql数据库 #!/bin/bash ############### common file ################ #本机备份文件存放目录 MYSQLBA ...

  3. shell编程系列22--shell操作数据库实战之shell脚本与MySQL数据库交互(增删改查)

    shell编程系列22--shell操作数据库实战之shell脚本与MySQL数据库交互(增删改查) Shell脚本与MySQL数据库交互(增删改查) # 环境准备:安装mariadb 数据库 [ro ...

  4. C# 创建Windows服务。服务功能:定时操作数据库 (转)

    C# 创建Windows服务.服务功能:定时操作数据库 一.创建window服务 1.新建项目-->选择Windows服务.默认生成文件包括Program.cs,Service1.cs 2.在S ...

  5. Shell脚本备份Mongodb数据库

    目录 环境还原 环境创建 编写shell脚本 准备文件 创建shell脚本 执行shell脚本 进阶版 感谢 诚邀访问我的个人博客:我在马路边 更好的阅读体验点击查看原文:Shell脚本备份Mongo ...

  6. 利用shell脚本自动化备份数据库与手动备份还原数据库操作

    1.在linux操作系统上手动备份数据库 mysqldump -h 服务器IP地址 -u root -p数据库密码 --databases 所要备份的数据库名称 > /路径/数据库.sql(自定 ...

  7. centos使用shell脚本定时备份docker中的mysql数据库

    shell脚本 #!/bin/bash #容器ID container_id="6b1faea2b4d7" #登录用户名 mysql_user="root" # ...

  8. 让你提前知道软件开发(22):shell脚本文件操作

    文章1部分 再了解C语言 shell脚本中的文件操作 [文章摘要] 编写shell脚本时,经常会涉及到对文件的操作,比方从文件里读取一行数据.向文件追加一行数据等. 完毕文件读写操作的方法有非常多,了 ...

  9. 在CentOS6.9上Shell脚本定时释放内存cache

    一.写Shell脚本 mkdir -p /var/script/ vim /var/script/freemem.sh 写入以下Shell脚本: #!/bin/bash # 当前已使用的内存大小 us ...

随机推荐

  1. flexbox弹性盒模型

    div { display:flex; } div a{ }

  2. angularjs 与django标签语法冲突的解决办法

    在需要使用angularjs标签的地方套上verbatim标签,如: {% verbatim %} ... {% endverbatim %}

  3. [kuangbin带你飞]专题二十 斜率DP

            ID Origin Title   20 / 60 Problem A HDU 3507 Print Article   13 / 19 Problem B HDU 2829 Lawr ...

  4. [kuangbin带你飞]专题十四 数论基础

            ID Origin Title   111 / 423 Problem A LightOJ 1370 Bi-shoe and Phi-shoe   21 / 74 Problem B ...

  5. [SQL]SQL语言入门级教材_SQL语言基本语句介绍(四)

    SQL语言基本语句介绍 • 表的建立 关系数据库的主要特点之一就是用表的方式组织数据.表是SQL语言存放数据.查找数据以及更新数据的基本数据结构.在SQL语言中,表有严格的定义,它是一种二维表,对于这 ...

  6. Sqoop导入MySQL数据

    导入所有表: sqoop import-all-tables –connect jdbc:mysql://ip:port/dbName --username userName --password p ...

  7. oracle插入主键数据、sequence和触发器

    一.创建表:   id number;并设为主键 name VARCHAR2(20 BYTE) 二. 插入数据 2.1 insert into addservice.test_table (id,na ...

  8. 《Code Complete》ch.20 软件质量概述

    WHAT & WHY ? 软件质量的特性 外在特性 正确性(Correctness) 可用性(Usability) 效率(Efficiency) 可靠性(Reliability) 完整性(In ...

  9. SparkSQL使用之Spark SQL CLI

    Spark SQL CLI描述 Spark SQL CLI的引入使得在SparkSQL中通过hive metastore就可以直接对hive进行查询更加方便:当前版本中还不能使用Spark SQL C ...

  10. SQL必知必会笔记2

    15. 插入数据 1). 数据插入 INSERT 用来将行插入到数据库表中,插入的方式有几种: (1)插入完整的行: INSERT INTO Customers VALUES( '1000000006 ...