- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
情况是这样的:
我在远程服务器上有一个 mySQL 数据库。我需要其中 4 个表中的数据。有时,这些表的架构会更改(添加新字段,但不会删除)。目前,这些表有超过 300,000 条记录。
此数据需要导入到本地主机 mySQL 实例中。这些相同的 4 个表存在(具有相同的名称),但所需的字段是远程数据库表中字段的子集。这些本地表中的数据被认为是只读的,永远不会被写入。一切都需要在一个事务中运行,所以本地表中总是有一些数据,即使它是一天前的。 localhost 表由事件网站使用,因此整个过程需要尽快完成以最大限度地减少停机时间。
此过程每天运行一次。
我看到的选项:
获取远程表的结构/数据的 mysqldump 并保存到文件。删除 localhost 表,然后运行转储的 sql 脚本。然后在 4 个表上重新创建所需的索引。
截断本地主机表。在 PHP 中对远程数据库运行 SELECT 查询,只检索需要的字段而不是整行。然后遍历结果并从该数据创建 INSERT 语句。
我的问题:
最佳答案
如果没有充分的理由让本地 d/b 成为远程的子集,请使结构相同并启用 database replication在需要的 table 上。复制工作由主跟踪所做的所有更改,并管理每个从 d/b 的指向更改的指针。每个奴隶都说给我自上次请求以来的所有变化。对于一个相当大的数据库,这比您选择的任何替代方案都要有效得多。它的成本不高。
至于架构更改,我认为 alter
信息由主服务器记录,因此从服务器也可以复制这些信息。该机制肯定会复制 drop table ... if exists
和 create table ... select
, 所以 alter
逻辑上应该遵循,但我没有尝试过。
关于php - 在mysql中将选定的数据从一个数据库转储到另一个数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9336478/
我正在为我的应用程序使用 Tank-Auth。我唯一的问题是激活和重置帐户密码。 用于登录、注册、注销;我对这些代码没有问题; $route['login'] = "/auth/login"; $ro
我是一名优秀的程序员,十分优秀!