【问题标题】:retrieve a mysql database via SSH通过 SSH 检索 mysql 数据库
【发布时间】:2016-04-10 00:28:04
【问题描述】:

我需要通过 SSH 从远程机器上的 mysql 安装复制整个数据库到我的本地机器 mysql。

我知道 SSH 以及本地和远程 MYSQL 管理员用户和密码。

这些信息够不够,是怎么做的?

【问题讨论】:

  • 你知道如何在本地复制数据库吗?

标签: mysql ssh


【解决方案1】:

从远程服务器到本地机器

 ssh {ssh.user}@{remote_host} \
 'mysqldump -u {remote_dbuser} --password={remote_dbpassword}
 {remote_dbname} | bzip2 -c' \  | bunzip2 -dc | mysql -u {local_dbuser}
 --password={local_dbpassword} -D {local_dbname}

【讨论】:

  • 我唯一的问题是你让 ssh 在 bzip2 流上运行 gzip...最好将 -C 标志放到 ssh 上。
  • 为什么要将密码作为命令行参数传递?任何可以在该机器上运行 ps 的人都可以看到密码。
【解决方案2】:

这将通过pipes 将远程数据库转储到本地 MySQL 中:

ssh mysql-server "mysqldump --all-databases --quote-names --opt --hex-blob --add-drop-database" | mysql

你应该关心mysql.users中的用户

此外,为了避免在本地和远程主机上输入mysqldump和mysql的用户和密码,您可以创建一个文件~/.my.cnf

[mysql]
user = dba
password = foobar

[mysqldump]
user = dba
password = foobar

http://dev.mysql.com/doc/refman/5.1/en/option-files.html

【讨论】:

    【解决方案3】:

    在这里尝试阅读:

    修改自 http://www.cyberciti.biz/tips/howto-copy-mysql-database-remote-server.html - 修改是因为我更喜欢使用 .sql 作为 SQL 文件的扩展名:

    通常你运行 mysqldump 来创建一个数据库副本和备份为 如下:

    $ mysqldump -u 用户 -p db-name > db-name.sql

    使用 sftp/ssh 复制 db-name.out 文件到远程 MySQL 服务器:

    $ scp db-name.sql user@remote.box.com:/backup

    在远程服务器上恢复数据库(通过 ssh 登录):

    $ mysql -u 用户 -p db-name

    基本上,您将使用mysqldump 生成数据库转储,将其复制到本地计算机,然后将内容通过管道传输到mysql 以重新生成数据库。

    您可以自己复制数据库文件,而不是使用mysqldump,但前提是您可以关闭远程计算机上的 MySQL 服务。

    【讨论】:

    • 我认为您应该编辑此答案以包含正确答案,以防链接失效
    • @MildFuzz 好的。无论如何,这是 Google 搜索“将 mysql 数据库从一台服务器复制到另一台服务器”的第一个结果。
    【解决方案4】:

    我会推荐PerconaXtrabackup 工具。它支持通过 SSH 热复制数据,并具有出色的文档。与使用 mysqldump 不同,这将复制 MySQL 实例的所有元素,包括用户权限、触发器、复制等...

    【讨论】:

      【解决方案5】:
      1. ssh 进入远程机器
      2. 备份数据库using mysqldump
      3. 将文件传输到本地机器using scp
      4. 将数据库恢复到本地mysql

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2013-08-06
        • 2016-09-08
        • 2014-09-17
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2016-05-09
        相关资源
        最近更新 更多