用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', ...
随机推荐
- Unity json
MiniJSON.cs using UnityEngine; using System; using System.Collections; using System.Collections.Gene ...
- IT兄弟连 JavaWeb教程 Servlet会话跟踪 Cookie的优缺点
Cookie技术存储的数据类型只能是字符串,且不支持中文 ● 保存的数据大小有限,4kb ● 太依赖用户浏览器的设置,用户可以禁用Cookie! ● 数据存储在客户端的文本文件中,不安全,不建议 ...
- 【OpenJ_Bailian - 2287】Tian Ji -- The Horse Racing (贪心)
Tian Ji -- The Horse Racing 田忌赛马,还是English,要不是看题目,我都被原题整懵了,直接上Chinese吧 Descriptions: 田忌和齐王赛马,他们各有n匹马 ...
- 笔记-JavaWeb学习之旅8
Window对象-定时器方法 <!DOCTYPE html> <html lang="en"> <head> <meta charset= ...
- PHP不重新编译,单独添加模块扩展的方法
php自身提供了很多扩展,比如curl,gmp, mbstring等.我们在编译安装php时未必安装了所有扩展.那么在安装完php后,如果想单独安装某个php自身的扩展怎么办呢? 我们以curl扩展模 ...
- 根据日期计算发布时间段(NSCalendar)
// 返回发布时间dateWithString - (NSString *)backReleaseTimeWithDateStr:(NSString *)dateWithString{ // 获取当前 ...
- JetSpeed2因dom4j包冲突导致PSML页面文件数据丢失
使用JetSpeed2进行二次开发时突然出现在保存Portlet配置信息时出现PSML页面文件数据丢失的情况,几经测试,最终发现是因为Portlet中的dom4j.jar与jetspeed应用中的do ...
- pycharm 虚拟环境virtualenv迁移到别的机器 无法读取包的问题
将virtualenv迁移到别的机器时,发现pycharm 总是无法读取目录下所在的包,后来经过实验终于找到了问题所在: 将自己所建的虚拟环境目录下的orig-prefix.txt中保存的路径,改成新 ...
- linux分配文件文件夹所属用户及组
ls -l 可以查看当前目录文件.如:drwxr-xr-x 2 nsf users 1024 12-10 17:37 下载文件备份分别对应的是:文件属性 连接数 文件拥有者 所属群组 文件大小 文件修 ...
- Docker 部署mysql
目录 Docker 部署mysql 步骤 1.查找 Docker Hub 上的 MySQL 镜像 2.docker pull mysql 拉取镜像 3.运行容器 4.查看容器启动情况 使用命令备注 D ...