php - 定期更新表

标签 php mysql

我可以访问 mysql 数据库,但我只能从中读取。我需要本地数据库中其中一个表的副本,并且我需要它每 2 小时更新一次。 定期复制/更新表格的最佳/最有效方法是什么?

我应该制作一个简单的 php 脚本来获取和更新数据(我的应用程序是在 php 中)吗?有没有更好的办法?

最佳答案

好吧,如果您只能从该数据库中读取,则意味着您无法创建触发器或设置复制,而这将是最有效的方法。

除非您准备为 percona 或 TIBCO 等系统支付高额费用。
PHP 或其他脚本语言将是很好的解决方案,结合 cron 作业或 Windows 上的计划任务...

既然您提到了 PHP,我建议您搜索现成的脚本,例如: https://github.com/mrjgreen/db-sync

下载脚本,在您的服务器上解压,然后创建一个如下所示的 shell 脚本:

db-sync [options] [--] <source> <target> <table>

例如:

#!/bin/bash
db-sync --user root --password mypass 127.0.0.1 111.222.3.44 web.customers

将其命名为sync.sh

并添加 crontab 条目以按照您的要求每 2 小时运行一次:

0 */2 * * *  /home/username/sync.sh 

只需将/home/username 替换为指向您的 sync.sh 的路径即可

关于php - 定期更新表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41814950/

相关文章:

php - 在以表单形式发送获取请求之前确认输入

php - 如何通过php检查mysql表是否可访问

mysql - 扩展Zend_Db_Table_Abstract创建联接时,会崩溃MySQL

javascript - 当我通过 php 包含 datepicker js 和 css 文件时,包含不起作用,但如果我将所有代码放在单个 php 页面中,则可以工作

php - 迁移到 PHP 5.6 : Writing a MySQL wrapper

php - 我如何使用 laravel 4 锁进行更新

php - mysql_num_rows 总是返回 1

php - Symfony2.8-Form 中的 MySQL 日期到 PHP DateTime 的转换

php - Apache 在发送 304 时忽略 PHP header

php - Paypal 快速结帐错误订单总数丢失。错误 10400