通过SSH隧道进行mysqldump

Sig*_*maX 5 ssh backup mysqldump tunneling

我的服务器设置如下:

  • webserver (网关机器,可通过SSH从Internet访问)
  • dbserver(数据库服务器,无法从Web访问

我的目标是用来通过网络mysqldump将备份从dbserver笔记本电脑中提取出来。到现在为止,这个问题是一个重复这个问题只是webserver不会不会已经mysqldump安装了,我没有安装它的权利。因此,我试图mysqldump在笔记本电脑上使用从我没有SSH权限的网关后面的服务器中拉出。

这里这里的讨论之后,我正在尝试执行以下操作来建立隧道:

ssh -f -L 3306:dbserver:3306 user@webserver -N
Run Code Online (Sandbox Code Playgroud)

其次是:

mysqldump -P 3306 -h localhost -u dbuser -p db
Run Code Online (Sandbox Code Playgroud)

但是我遇到了这个人遇到的同样麻烦,并且不确定如何进行隧道传输或如何解决(在笔记本电脑的主机文件中添加条目似乎无法像对他一样进行修复) 。

Pap*_*ost 0

每天将数据库转储到网关计算机,然后从那里获取

#!/bin/sh
# Backup the mysql Databases
 for database in $(mysql -u b4ckup -pd1psh1t --host server.database.net -e "show databases" | awk '{print $1}' | grep -v Database)
do
        mysqldump -u user -p password --lock-tables=false --host server.database.net $database > /storage/backups/`date +\%Y-\%m-\%d`-`date +\%A`/server/$database.sql
done 
Run Code Online (Sandbox Code Playgroud)