用navcat编写定时任务调用存储过程
最近项目需要改动比较大,数据库结构也有所改变,这时就需要转移旧数据到新库中
第一时间想到的是用代码操作,由于两个库表结构不同,实体什么的得需要重新生成
并编写转移代码,这将是很大的工作量;
然后就想着
用脚本解决问题,方式如下:
先编写脚本
#!/bin/bash
# Define log
TIMESTAMP=`date +%Y%m%d%H%M%S`
LOG=call_sql_${TIMESTAMP}.log
echo "Start execute sql statement at `date`." >>${LOG}
# execute sql stat
mysql -u**** -p**** -e "
tee /home/credit_back/temp.log
#转移用户登录表
INSERT IGNORE INTO credit_db.c_user_login_info(username, password, enabled, realname, phone, company, registration_time, last_login_time, dk_id, channel_id) SELECT username, password, enabled, realname, phone, company, registration_time, last_login_time, dk_id, channel_id FROM credit.c_user_login_info;
#更新注册来源,账号状态
UPDATE credit_db.c_user_login_info SET register_source='h5',account_status=1 WHERE register_source is null;
notee
quit" echo -e "\n">>${LOG}
echo "below is output result.">>${LOG}
cat /home/credit_back/temp.log>>${LOG}
echo "script executed successful.">>${LOG}
exit;
然后写定时任务执行该脚本
链接数据库服务器,输入命令
crontab -e
编写定时任务
#定时调用脚本,每小时执行一次
0 */1 * * * /bin/sh /home/credit_back/credit_db_backup.sh
查看定时任务
crontab -l

这种方式是可以解决问题,但是脚本中需要数据库密码,为了安全我
采用navcat编写定时任务
首先,打开navcat,查询定时任务是否开启
show variables like '%sche%';

此时是关闭的,需要开启
set global event_scheduler = ON

定时任务开启后,开始编写存储过程

如何编写可以搜一下,下面是我的存储过程

最后编写定时任务,右击新建事件


即调用刚才写的存储过程
CALL TransferData()
设置定时计划,为了测试,每分钟执行一次

下面就等待1分钟看执行结果了
用navcat编写定时任务调用存储过程的更多相关文章
- mysql使用navicat编写调用存储过程
在Navicat里面,找到函数,右键,新建函数,选择过程,如果有参数就填写函数,如果没有就直接点击完成 在BEGIN......END中间编写要执行的sql语句,例如下面存储过程取名为pro_data ...
- MyBatis学习总结(六)——调用存储过程(转载)
本文转载自:http://www.cnblogs.com/jpf-java/p/6013518.html 一.提出需求 查询得到男性或女性的数量, 如果传入的是0就女性否则是男性 二.准备数据库表和存 ...
- MyBatis入门学习教程-调用存储过程
一.提出需求 查询得到男性或女性的数量, 如果传入的是0就女性否则是男性 二.准备数据库表和存储过程 create table p_user( id int primary key auto_incr ...
- MyBatis学习总结(六)——调用存储过程
一.提出需求 查询得到男性或女性的数量, 如果传入的是0就女性否则是男性 二.准备数据库表和存储过程 1 create table p_user( 2 id int primary key auto_ ...
- MyBatis学习总结(六)——调用存储过程
一.提出需求 查询得到男性或女性的数量, 如果传入的是0就女性否则是男性 二.准备数据库表和存储过程 create table p_user( id int primary key auto_incr ...
- Java数据库连接——JDBC调用存储过程,事务管理和高级应用
一.JDBC常用的API深入详解及存储过程的调用 相关链接:Jdbc调用存储过程 1.存储过程(Stored Procedure)的介绍 我们常用的操作数据库语言SQL语句在执行的时候需要先编译,然后 ...
- MyBatis——调用存储过程
原文:http://www.cnblogs.com/xdp-gacl/p/4270352.html 一.提出需求 查询得到男性或女性的数量, 如果传入的是0就女性否则是男性 二.准备数据库表和存储过程 ...
- MyBatis学习总结_06_调用存储过程
一.提出需求 查询得到男性或女性的数量, 如果传入的是0就女性否则是男性 二.准备数据库表和存储过程 1 create table p_user( 2 id int primary key auto_ ...
- SQL serve创建与调用存储过程
(1)创建 2编写存储过程(创建传参的存储过程)存储过程语法网络上很多不在累述 语法解析 Use Person 指定在那个数据库下建立存储过程 if (object_id('MyFunction', ...
随机推荐
- CodeForces - 377A Maze BFS逆思维
Maze Pavel loves grid mazes. A grid maze is an n × m rectangle maze where each cell is either empty, ...
- SQL Server服务器连接配置
一.首先确保服务器能在本地打开数据库 如果碰到本地无法连接到数据库,首先要确认上图中两个服务是否开启 二.其次,要配置远端可连接的用户 如图,配置数据库[属性]中[安全性]为混合验证,勾中允许远程连接 ...
- Job for mysqld.service failed because the control process exited with error code. See "systemctl status mysqld.service" and "journalctl -xe" for details.
一.前言 Job for mysqld.service failed because the control process exited with error code. See "sys ...
- cf786C(xjb)
题目链接:http://codeforces.com/problemset/problem/768/C 题意:给出一个数组,经过k次操作后最大元素和最小元素分别是什么.. 操作:给当前数组排序,再将第 ...
- Aufree/trip-to-iOS
https://github.com/Aufree/trip-to-iOS?utm_source=next.36kr.com
- Java程序员需要突破的技术要点
一.源码分析 源码分析是一种临界知识,掌握了这种临界知识,能不变应万变,源码分析对于很多人来说很枯燥,生涩难懂. 源码阅读,我觉得最核心有三点:技术基础+强烈的求知欲+耐心. 我认为是阅读源码的最核心 ...
- C 语言实例 - 计算平均值
C 语言实例 - 计算平均值 C 语言实例 C 语言实例 使用数组来计算几个数的平均值. 实例 #include <stdio.h> int main() { int n, i; ], s ...
- max函数的用法
题目是 给你一段全英文本,求这段文本中出现次数最多的字母 import string def checkio(text): text = text.lower() return max(strin ...
- 推荐 VS2010入门教程—鸡啄米
http://www.jizhuomi.com/catalog.asp?tags=VS2010 推荐 VS2010入门教程—鸡啄米,真的非常使用和经典!
- 存储-InfluxDB
1 TSDB influxDB是一个time series时间序列数据库. 在监控系统的开发中,大体分为采集-存储-可视化三个大类.监控指标有很显著的时间特征数据,一般采用TSDB存储. 在TSDB中 ...