小白玩家记录centos下如何创mysql中间库并定时更新数据

小白玩家记录centos下如何创mysql中间库并定时更新数据

  • 背景
  • 创建mysql中间库
  • 编写数据库脚本
    • 创建免密码自动验证登录文件
    • 编写数据导出脚本
    • 编写数据导入脚本
    • 编写启动脚本
    • 授权
    • 开启定时任务

背景

我是将中间库和主库放在同一台服务器上面的,只是给的账号权限不同。

创建mysql中间库

用navicat连接上服务器,新建数据库temp,字符集选择utf-8.。
小白玩家记录centos下如何创mysql中间库并定时更新数据_第1张图片

编写数据库脚本

创建免密码自动验证登录文件

root@localhost# mysql_config_editor  set --login-path=chen --host=localhost --user=root --password

上面命令的login-path=chen中的chen是自定义的,相当于一个密钥,运行成功后会在当前用户目录下生成一个密钥文件。

root@localhost# cd ~
root@localhost# ls -l -a

如图:
在这里插入图片描述

编写数据导出脚本

创建脚本文件

root@localhost# vim /home/temp/dump.sh

在脚本文件中写入

#!/bin/sh
rm -rf /home/temp/zs*
# mysqldump --login-path=chen 数据库名 表名 >/home/temp/表名.sql
# 如下所示
mysqldump --login-path=chen fzmjtc zs_enroll >/home/temp/zs_enroll.sql
mysqldump --login-path=chen fzmjtc zs_enroll_apply >/home/temp/zs_enroll_apply.sql

编写数据导入脚本

创建脚本文件

root@localhost# vim /home/temp/insert.sh
#!/bin/sh
mysql --login-path=chen temp < /home/temp/zs_enroll.sql
mysql --login-path=chen temp < /home/temp/zs_enroll_apply.sql

编写启动脚本

root@localhost# vim report_sync.sh

填入内容

#!/bin/sh
/home/temp/dump.sh
/home/temp/insert.sh

授权

[root@localhost temp]# chmod u+x /home/temp/*.sh

开启定时任务

将report_sync.sh移动到/usr/bin下

[root@localhost temp]# mv report_sync.sh /usr/bin

打开定时器面板

root@localhost# crontab -e

在里面添加一行数据

0 0 * * * /usr/bin/report_sync.sh

前面几个选项分别是:分 时 日 月 周,*代表“每”,esc按:wq保存,这样服务器就会每天自动执行了,没报错就成功了。

随便定一个最近的时间,过一会查看新的数据库是否有数据。

小白玩家记录centos下如何创mysql中间库并定时更新数据_第2张图片

你可能感兴趣的:(JAVA,mysql,java)