为什么数据库表没有更新,即使我从另一台服务器复制该表的所有文件?

时间:2016-12-07 07:26:54

标签: mysql linux database server

我在一个表niftynext50_ns_1min中有错误的数据,这是在数据库prochart_india_1min中。 所以我使用linux的rsync命令从另一台服务器复制该表的正确数据,

sudo rsync -IavPe ssh 192.168.0.102:/var/lib/mysql/prochart_india_1min/niftynext50_ns_1min* /var/lib/mysql/prochart_india_1min/

它给出了输出:

receiving incremental file list
niftynext50_ns_1min.MYD
      361398 100%  344.66MB/s    0:00:00 (xfer#1, to-check=2/3)
niftynext50_ns_1min.MYI
       92160 100%   43.95MB/s    0:00:00 (xfer#2, to-check=1/3)
niftynext50_ns_1min.frm
        8902 100%    4.24MB/s    0:00:00 (xfer#3, to-check=0/3)

sent 4016 bytes  received 9093 bytes  26218.00 bytes/sec
total size is 462460  speedup is 35.28

并且我在传输数据后检查文件大小,两个服务器上的文件是相同的.... 所以数据文件传输成功但是当我检查表niftynext50_ns_1min中的数据时,它的数据没有更新,它显示旧数据。

那么我应该怎么做才能更新我的桌子......

2 个答案:

答案 0 :(得分:1)

通过简单的SQL查询问题解决: 同花顺表;

此查询删除缓存内存,以便表格显示更新的数据。

答案 1 :(得分:1)

如果需要将数据库文件复制到另一个数据库服务器,最安全的方法是:

  1. 停止mysqld守护程序
  2. 替换数据库文件
  3. 启动mysqld
  4. 在服务器运行时更​​换数据库文件会遇到麻烦。在最好的情况下,您将获得旧数据。在最坏的情况下,您损坏了数据。