mysqldump通过SSH传输到本地计算机
我可以通过SSH访问Rails应用程序的生产服务器 我想将生产数据库的mysqldump转储到我的Mac上。请帮助我实现这一目标mysqldump通过SSH传输到本地计算机,mysql,ruby-on-rails,ssh,Mysql,Ruby On Rails,Ssh,我可以通过SSH访问Rails应用程序的生产服务器 我想将生产数据库的mysqldump转储到我的Mac上。请帮助我实现这一目标 通过ssh连接到服务器:ssh远程_username@remote_host 转到“当前”文件夹 进行转储:mysqldump-u用户名-ppassword-h主机数据库>dump.sql 断开与服务器的连接 将dump.sql文件复制到本地计算机:scp remote_username@remote_host:/path/to/dump.sql/Users/Your
ssh远程_username@remote_host
mysqldump-u用户名-ppassword-h主机数据库>dump.sql
scp remote_username@remote_host:/path/to/dump.sql/Users/YourName/Documents/dump.sql
rm dump.sql
将mysql数据从远程服务器转储到本地计算机的直接方法是:
ssh root@ipaddress "mysqldump -u dbuser -p dbname | gzip -9" > dblocal.sql.gz
或
这两个命令执行相同的工作
如果您有ssh密码和数据库访问密码,则会有两个提示输入密码;如果您没有ssh密码,则会要求您输入数据库密码
类似地,如果您正在使用aws或云计算其他服务的密钥,则可以将密钥合并到命令中,如下所示:
ssh -i key.pem root@ipaddress "mysqldump -u dbuser -p dbname | gzip -9" > dblocal.sql.gz
我无法让其他人工作 这是我为linux找到的解决方案:
ssh username@ipadress "mysqldump -u USERNAME -pPASSWORD DB_NAME " > ~/dump.sql
这将提示您输入ssh服务器的密码,然后将数据库转储到ssh服务器上的指定位置。假设MySQL数据库无法从外部访问,您可以设置一个ssh隧道
ssh-v-L 13306:production\u mysql\u server:3306-N production\u server
,然后在ssh服务器中有足够的可用空间时使用mysqldump-h 127.0.0.1-P 13306…
简易解决方案。
ssh username@ipadress "mysqldump -u USERNAME -pPASSWORD DB_NAME " > ~/dump.sql