mysql数据跨库传输

Posted syncnavigator-v8-4-1

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了mysql数据跨库传输相关的知识,希望对你有一定的参考价值。

代码如下:仅供参考


#!/bin/bash

# run on every hour between 00:00 and 23:00.

set -o errexit


# 这个文件是我设置的数据源,包含了我使用变量引用的数据源,省略prod_dbs.sh文件

source /opt/soft/ods/script/odl/prod_dbs.sh

#source https://blog.csdn.net/zhaojike/article/details/prod_dbs.sh

mysql=`which mysql`

DATA_DATE=`date +%Y%m%d -d "1 days ago"`



##########################################################当天新增

T_RPT_MERCHANT_AUTO_AUDIT_PART1="

SELECT stat_date, data_flag, sales_region, region_id, apply_cnt, pass_cnt, returned_cnt, rejected_cnt, pass_rate, rejected_rate


FROM odl_rpt.t_rpt_merchant_auto_audit_part1 a WHERE stat_date=$DATA_DATE;

"


##########################################################源库(A环境)表生成文件

echo "run sql on odlrpt_host"

echo "start running at `date ‘+%Y-%m-%d %T‘`"

echo "$T_RPT_MERCHANT_AUTO_AUDIT_PART1"

$MYSQL -h$odlrpt_host --default-character-set=utf8 -P$odlrpt_port -u$odlrpt_user -p$odlrpt_passwd --database=$odlrpt_db --skip-column-names -e "$T_RPT_MERCHANT_AUTO_AUDIT_PART1" > "$DATA_DIR/T_RPT_MERCHANT_AUTO_AUDIT_PART1.txt"


##########################################################推送数据到B环境库目标表

SQL_TMP_TO_TASK="

DELETE FROM ODL_RPT.T_RPT_MERCHANT_AUTO_AUDIT_PART1 WHERE? stat_date=$DATA_DATE;

LOAD DATA LOCAL INFILE ‘/opt/soft/ods/srcdata/T_RPT_MERCHANT_AUTO_AUDIT_PART1.txt‘ INTO TABLE ODL_RPT.T_RPT_MERCHANT_AUTO_AUDIT_PART1;

"

echo "run sql on odlrpt_host150"

echo "start running at `date ‘+%Y-%m-%d %T‘`"

echo "$SQL_TMP_TO_TASK"

$MYSQL -h$odlrpt_host150 --default-character-set=utf8 -P$odlrpt_port150 -u$odlrpt_user150 -p$odlrpt_passwd150 --database=$odlrpt_db150 --skip-column-names -e "$SQL_TMP_TO_TASK"



完成了,简单吧。





以上是关于mysql数据跨库传输的主要内容,如果未能解决你的问题,请参考以下文章

mysql 跨库join

mysql跨库数据表的运算

Mysql数据库分库后跨库join解决方案

mysql跨库联表查询

mysql定时任务按天建表并跨库同步数据

MySQL 跨库分页/ 分表分页/ 跨库分页,为什么这么难?