mysql怎么让一个表中的数据定时插入到另一个表

mysql怎么让一个表中的数据定时插入到另一个表,第1张

参照语法

创建事件(CREATE EVENT)语法:

CREATE EVENT [IF NOT EXISTS] event_name

ON SCHEDULE schedule

[ON COMPLETION [NOT] PRESERVE]

[ENABLE | DISABLE]

[COMMENT 'comment']

DO sql_statement

schedule:

AT TIMESTAMP [+ INTERVAL INTERVAL]

| EVERY INTERVAL [STARTS TIMESTAMP] [ENDS TIMESTAMP]

INTERVAL:

quantity {YEAR | QUARTER | MONTH | DAY | HOUR | MINUTE |

            WEEK | SECOND | YEAR_MONTH | DAY_HOUR | DAY_MINUTE |

            DAY_SECOND | HOUR_MINUTE | HOUR_SECOND | MINUTE_SECOND}

DO sql_statement

这里可以是insert语句,也可以是调用一个存储过程。

可以在 SQL Server 里面, 创建一个 针对 MySQL 的数据库链接。

然后 在 SQL Server 里面, 设定一个 数据库作业。 定期向那个 数据库链接 同步数据。

一、对于Windows主机

==============

假想环境:

MySQL

安装位置:C:\MySQL

论坛数据库名称为:bbs

MySQL

root

密码:123456

数据库备份目的地:D:\db_backup\

@echo

off

C:\MySQL\bin\mysqladmin

-u

root

–password=123456

shutdown

C:\MySQL\bin\mysqldump

–opt

-u

root

–password=123456

bbs

>

D:\db_backup\bbs.sql

C:\MySQL\bin\mysqld-nt

将以上代码保存为backup_db.bat

然后使用Windows的“计划任务”定时执行该脚本即可。(例如:每天凌晨5点执行back_db.bat)

二、对于Linux主机

===========

假想环境:

MySQL

安装位置:/usr/local/mysq

论坛数据库名称为:bbs

MySQL

root

密码:123456

数据库备份目的地:/var/db_backup/

#!

/bin/bash

/usr/local/mysql/bin/mysqladmin

-u

root

–password=123456

shutdown

/usr/local/mysql/bin/mysqldump

–opt

-u

root

–password=123456

bbs

>

/var/db_backup/bbs.sql

/usr/local/mysql/bin/mysqld_safe

–user=mysql

&

将上述代码保存在/usr/local/sbin/backup_db.sh

对该脚本赋予执行权限:

#

chmod

755

/usr/local/sbin/backup_db.sh

加入crontab中自动执行:

#

crontab

-e

加入:

0

5

*

*

*

/usr/local/sbin/backup_db.sh


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/zaji/6165744.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-03-17
下一篇 2023-03-17

发表评论

登录后才能评论

评论列表(0条)

保存