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 ...
随机推荐
- Java注解处理器--annotation学习四
Java中的注解(Annotation)是一个很神奇的东西,特别现在有很多Android库都是使用注解的方式来实现的.一直想详细了解一下其中的原理.很有幸阅读到一篇详细解释编写注解处理器的文章.本文的 ...
- http请求的referer属性
HTTP Referer是header的一部分,当浏览器向web服务器发送请求的时候,一般会带上Referer,告诉服务器我是从哪个页面链接过来的,服务器籍此可以获得一些信息用于处理.比如从我主页上链 ...
- log4net日志信息 插入 mysql数据库?
log4net配置文件如下: <!--插入数据库--> <appender name="AdoNetAppender_MySql" type="log4 ...
- fatal error C1853: '*.pch' is not a precompiled header file created with this compile
在菜单下选择Build--->点击Rebuild All,如果不起作用,你可以先把Debug或者Release中的文件删除,然后再试.
- 98、EditText 按键盘查询 触发事件
只需要在XML在输入框中加入Android:imeOptions=”actionSearch”,调用软键盘时,回车键就会显示搜索二字. editSearch.setOnEditorActionList ...
- [SQL]根据刚刚插入数据的 ID 向另外一张表插入数据(插入的其他字段数据需要对字符串进行分析)
比如做一个学生选课系统 数据库有3张表 students(ID,Name,Age) ,courses(ID,Name),selectedcourses(studentID,courseID)括号里是字 ...
- NYOJ 49-开心的小明:01背包
点击打开链接 开心的小明 时间限制:1000 ms | 内存限制:65535 KB 难度:4 描述 小明今天很开心,家里购置的新房就要领钥匙了,新房里有一间他自己专用的很宽敞的房间.更让他高兴的是 ...
- MS文件与路径的一些方法记录
一,路径相关 String path1 = System.IO.Directory.GetCurrentDirectory(); MessageBox.Show("获取应用程序的当前工作目录 ...
- 制作chm无搜索标签解决方法
chm无搜索标签解决方法: 1.hpp文件中设置Full-text search=Yes 2.下面[windows]有个数字设置为0x420, 网上普通流传的是0x20 === chm制作一般要三个文 ...
- JAVA集合学习
JAVA中有几种常用的集合类.分别是List,Set,Map等 提示:Eclipse中自动导入包的快捷键 Ctrl+Shift+O 一.List类 父接口:该类是Collection集合接口的子接口 ...