shell脚本定时操作数据库
一.数据库脚本(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脚本定时操作数据库的更多相关文章
- shell脚本定时备份数据库
脚本代码: 新建文件back_db.sh #!/bin/bash TODAYTIME="`date +%Y%m%d`" DBNAME="test mysql" ...
- 使用shell脚本定时执行备份mysql数据库
使用shell脚本定时执行备份mysql数据库 #!/bin/bash ############### common file ################ #本机备份文件存放目录 MYSQLBA ...
- shell编程系列22--shell操作数据库实战之shell脚本与MySQL数据库交互(增删改查)
shell编程系列22--shell操作数据库实战之shell脚本与MySQL数据库交互(增删改查) Shell脚本与MySQL数据库交互(增删改查) # 环境准备:安装mariadb 数据库 [ro ...
- C# 创建Windows服务。服务功能:定时操作数据库 (转)
C# 创建Windows服务.服务功能:定时操作数据库 一.创建window服务 1.新建项目-->选择Windows服务.默认生成文件包括Program.cs,Service1.cs 2.在S ...
- Shell脚本备份Mongodb数据库
目录 环境还原 环境创建 编写shell脚本 准备文件 创建shell脚本 执行shell脚本 进阶版 感谢 诚邀访问我的个人博客:我在马路边 更好的阅读体验点击查看原文:Shell脚本备份Mongo ...
- 利用shell脚本自动化备份数据库与手动备份还原数据库操作
1.在linux操作系统上手动备份数据库 mysqldump -h 服务器IP地址 -u root -p数据库密码 --databases 所要备份的数据库名称 > /路径/数据库.sql(自定 ...
- centos使用shell脚本定时备份docker中的mysql数据库
shell脚本 #!/bin/bash #容器ID container_id="6b1faea2b4d7" #登录用户名 mysql_user="root" # ...
- 让你提前知道软件开发(22):shell脚本文件操作
文章1部分 再了解C语言 shell脚本中的文件操作 [文章摘要] 编写shell脚本时,经常会涉及到对文件的操作,比方从文件里读取一行数据.向文件追加一行数据等. 完毕文件读写操作的方法有非常多,了 ...
- 在CentOS6.9上Shell脚本定时释放内存cache
一.写Shell脚本 mkdir -p /var/script/ vim /var/script/freemem.sh 写入以下Shell脚本: #!/bin/bash # 当前已使用的内存大小 us ...
随机推荐
- flexbox弹性盒模型
div { display:flex; } div a{ }
- angularjs 与django标签语法冲突的解决办法
在需要使用angularjs标签的地方套上verbatim标签,如: {% verbatim %} ... {% endverbatim %}
- [kuangbin带你飞]专题二十 斜率DP
ID Origin Title 20 / 60 Problem A HDU 3507 Print Article 13 / 19 Problem B HDU 2829 Lawr ...
- [kuangbin带你飞]专题十四 数论基础
ID Origin Title 111 / 423 Problem A LightOJ 1370 Bi-shoe and Phi-shoe 21 / 74 Problem B ...
- [SQL]SQL语言入门级教材_SQL语言基本语句介绍(四)
SQL语言基本语句介绍 • 表的建立 关系数据库的主要特点之一就是用表的方式组织数据.表是SQL语言存放数据.查找数据以及更新数据的基本数据结构.在SQL语言中,表有严格的定义,它是一种二维表,对于这 ...
- Sqoop导入MySQL数据
导入所有表: sqoop import-all-tables –connect jdbc:mysql://ip:port/dbName --username userName --password p ...
- oracle插入主键数据、sequence和触发器
一.创建表: id number;并设为主键 name VARCHAR2(20 BYTE) 二. 插入数据 2.1 insert into addservice.test_table (id,na ...
- 《Code Complete》ch.20 软件质量概述
WHAT & WHY ? 软件质量的特性 外在特性 正确性(Correctness) 可用性(Usability) 效率(Efficiency) 可靠性(Reliability) 完整性(In ...
- SparkSQL使用之Spark SQL CLI
Spark SQL CLI描述 Spark SQL CLI的引入使得在SparkSQL中通过hive metastore就可以直接对hive进行查询更加方便:当前版本中还不能使用Spark SQL C ...
- SQL必知必会笔记2
15. 插入数据 1). 数据插入 INSERT 用来将行插入到数据库表中,插入的方式有几种: (1)插入完整的行: INSERT INTO Customers VALUES( '1000000006 ...