AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / user-164834

Matthias's questions

Martin Hope
Matthias
Asked: 2020-05-01 02:32:03 +0800 CST

快速、保存和重新启动更大的 MySQL/MariaDB 数据库

  • 0

我必须通过 ssh/scp 将带有 43GB MariaDB DB 的 Drupal 站点转移到另一台服务器。

我一大早就有一个有限的停机时间窗口。过去,我通过这样的管道直接传输较小的数据库(<3GB):

ssh -l webuser 10.0.0.99 "cd /var/www/drupal7/htdocs/site_name && drush sql-dump | xz -1 -" | xz -d - | drush sqlc

但是有了这个更大的数据库,我担心这个管道的某些部分会失败,我必须重新启动一切,这几乎肯定意味着我会超过停机时间窗口。

因此,显而易见的解决方案是将其拆分为单个独立的步骤,以便我可以重做部分任务,以防其中一个失败:

ssh -l webuser 10.0.0.99 "cd /var/www/drupal7/htdocs/site_name && drush sql-dump | xz -1 - > /home/webuser/db_dump.sql.xz"
scp [email protected]:/home/webuser/db_dump.sql.xz .
xzcat /home/webuser/db_dump.sql.xz | drush sqlc

但是现在这些步骤是连续的,需要更多时间,这意味着在出现问题时重做步骤的时间更少。

所以我想我正在寻找一种在旧服务器上创建数据库转储的方法,并有第二个独立的进程将数据传输到新服务器并开始在新服务器上恢复数据库。

只需使用

scp [email protected]:/home/webuser/db_dump.sql.xz .

在尚未完成的数据库转储上将不起作用,因为 scp 不会等到 MariaDB 完成写入数据库转储。

有人知道一个命令,它会继续传输或输出数据,直到数据库转储完成?

或者有人知道转移数据库的更好方法吗?


更新:

我想我可以使用这样的tee命令:

ssh -l webuser 10.0.0.99 "cd /var/www/drupal7/htdocs/site_name && drush sql-dump | xz -1 - | tee -a /home/webuser/db_dump.sql.xz" | xz -d - | drush sqlc

然而,这将改善这种情况,想象一下仍然写入数据库转储并且在网络传输或恢复期间出现问题的情况。然后你必须用转储文件重新启动,但你不能只是通过复制它,scp因为 MariaDB 仍在写入它,所以问题和以前一样。

mysql scp mariadb database-restore
  • 3 个回答
  • 204 Views
Martin Hope
Matthias
Asked: 2013-03-16 10:53:27 +0800 CST

postfix + opendkim:“发件人:”和“消息 ID”字段未包含在签名中

  • 6

我运行了 postfix 和 opendkim。postfix 通过 unix 套接字与 opendkim 通信。只要我不在 opendkim 应该签名的字段列表中添加一些特殊的邮件头字段,所有这一切都有效。

后缀配置:

主.cf:

...
smtpd_milters = unix:/var/spool/postfix/milter/opendkim

non_smtpd_milters = unix:/var/spool/postfix/milter/opendkim
...

在我的 opendkim.conf 中我有这个条目:

...
AlwaysSignHeaders      To,Subject,MIME-Version,Content-Type,Sender,From,Message-Id,Date,Reply-To,List-Unsubscribe
...

如果我用这样的 postfix sendmail 命令发送电子邮件

sendmail -f [email protected] -i -t <<EOF
From: [email protected]
Sender: [email protected]
To: [email protected]
Subject: Test

Test
EOF

Gmail 会通知我:

dkim=hardfail

使用

Diagnostics true

opendkim.conf 中的条目它通过“z=...”调试邮件标头条目显示 opendkim 没有在签名中包含“Message-Id”和“Sender”字段,但报告包含

h=From:To:Subject:Date:MIME-Version:Content-Type:Sender:Reply-To:List-Unsubscribe;

邮件标题条目。

深入研究这一点后,我发现当我从 opendkim.conf 的“AlwaysSignHeaders”条目中删除 Message-Id 和 Sender 字段时,Gmail 又高兴了。

因为我使用 sendmail 命令发送邮件,所以我可以确定至少“发件人:”字段必须从一开始就对 postfix 和 opendkim 可用。

因此,如果 opendkim 将使用它获得的所有标头字段,这意味着 postfix 不会为 opendkim 提供所有标头字段。我试图通过为 postfix 的“清理”和“琐碎重写”过程打开详细日志记录来验证这一点,但我不得不承认我在日志中看不到任何有用的信息,尤其是我无法提取信息postfix 向 opendkim 提供了哪些邮件标头字段。如果有人可以使用它,我可以在这里发布这些日志......

我的想法用完了,所以我希望有人能给我一些有用的指示......

postfix
  • 2 个回答
  • 8116 Views

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    新安装后 postgres 的默认超级用户用户名/密码是什么?

    • 5 个回答
  • Marko Smith

    SFTP 使用什么端口?

    • 6 个回答
  • Marko Smith

    命令行列出 Windows Active Directory 组中的用户?

    • 9 个回答
  • Marko Smith

    什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同?

    • 3 个回答
  • Marko Smith

    如何确定bash变量是否为空?

    • 15 个回答
  • Martin Hope
    Tom Feiner 如何按大小对 du -h 输出进行排序 2009-02-26 05:42:42 +0800 CST
  • Martin Hope
    Noah Goodrich 什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同? 2009-05-19 18:24:42 +0800 CST
  • Martin Hope
    Brent 如何确定bash变量是否为空? 2009-05-13 09:54:48 +0800 CST
  • Martin Hope
    cletus 您如何找到在 Windows 中打开文件的进程? 2009-05-01 16:47:16 +0800 CST

热门标签

linux nginx windows networking ubuntu domain-name-system amazon-web-services active-directory apache-2.4 ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve