由于服务器崩溃,我需要在一段时间内从备份(位于我的本地计算机上)恢复到服务器上的实时数据库.
要选择有问题的行,我计划从backupdatabase执行以下操作:
SELECT *
FROM access AS t1
WHERE AccessId IN (
SELECT AccessId FROM access_completed AS t1
WHERE (TIMEDIFF(CCompleteDateTime, "2011-01-24 02:00:00") < 23 AND TIMEDIFF(CCompleteDateTime, "2011-01-24 02:00:00") > 0)
)
Run Code Online (Sandbox Code Playgroud)
如何将结果行插入实时数据库?
您可以SELECT ... INTO OUTFILE在备份上使用并LOAD DATA INFILE加载数据.
INTO OUTFILE将所选数据转储到本地文件,采用MySQL可以使用的格式解析回来的格式LOAD DATA INFILE.所以你只需要像这样转储和加载:
SELECT * FROM [rest of your query] INTO OUTFILE '/tmp/outfile'
Run Code Online (Sandbox Code Playgroud)
将outfile复制到其他服务器
在另一台服务器上:
LOAD DATA INFILE /tmp/outfile' INTO TABLE access;
Run Code Online (Sandbox Code Playgroud)
它也适用于FEDERATED表格.这将允许从主服务器查询备份数据库; 所以你可以做到INSERT INTO access ... SELECT ... FROM federated_access ....
| 归档时间: |
|
| 查看次数: |
1950 次 |
| 最近记录: |