如何将mysql转储到 s3cmd

作者:无名 - 互联网 -

问题:

我想转移一个mysql转储,压缩到 s3。

我试过:

mysqldump -u root -ppassword -all-databases | gzip -9 | s3cmd put s3://bucket/sql/databases.sql.gz

但后来我得到了:

error: not enough paramters for command 'put'

我如何做这个( 在一行中)?


回答 1:

这对于 s3cmd 1.5 + ( 链接 ) 是可能的:
$ mysqldump.. . | s3cmd put - s3://bucket/file-name.sql


回答 2:

你缺少要备份的实际文件。

s3cmd put/backup_dir/somefile.sql.gz s3://bucket/sql/

s3cmd采用两个基本参数,即文件和要备份的bucket。

它的次,我不能用以下的信用,但它基本上做你想要的中间脚本。 基本上,使用以下方法创建一个 bak.sh 文件,然后 shell script 将通过bash运行。 ( 信用:http://www.wong101.com/tech-cloud/configure-s3cmd-cron-automated-mysql-backup )

s3bucket="lt;bucketnamegt;"

# array of databases

dbs=("lt;db1gt;""lt;db2gt;""lt;db3gt;""lt;db4gt;")

for i in"${dbs[@]}"

do

dbname=$i

file=$dbname-`date"+%y%m%d-%h%m"`.sql.gz

mysqldump $dbname -u[uname] -p[password] | gzip -9gt;/home/$file

#location of s3cmd may vary, modify if needed

/usr/bin/s3cmd --config/root/.s3cfg put/home/$file s3://$s3bucket/dbbackup-$dbname/gt;gt;/var/log/mysqlback.log

sleep 5

rm/home/$file

done


回答 3:

可以尝试使用 - 指示s3cmd应该读取源参数的标准字符串,它可能会工作。 如果你能用中间步骤做到这一点

mysqldump -u root -ppassword -all-databases | gzip -9gt; tmp.file amp;amp; s3cmd put tmp.file s3://bucket/sql/databases.sql.gz.. . amp;amp; rm tmp.file

这将把输出压缩到 tmp.file,如果成功,( amp;amp; ) 将把文件放到s3中,如果成功,它将删除临时文件。


回答 4:

通过pipline创建存储的mysql.sh 直接到 s3,不会存储本地文件。

#!/bin/bash

#/home/ec2-user/s3/mysql.sh

#logging

log_root="/var/www/html/laravel/storage/logs/laravel-$(date +%y-%m-%d).log"

# basic variables

# database credentials

user=root

password=password

host=localhost

db_name=dbname

#backup_directory_locations

s3bucket=s3://bucket/database/$(date +%a).sql.gz

# timestamp (sortable and readable)

tstamp=$(date +"%y-%m-%d %h:%m:%s")

#dump of mysql database into s3

echo"[$tstamp] mysql_dump.warning: mysql dump for db_name started from cron s3/mysql.sh"gt;gt; "$log_root"

echo"stack trace:"gt;gt; "$log_root"

echo"#wil be stored as s3://bucket/database/$(date +%a).sql.gz"gt;gt; "$log_root"

mysqldump --host=$host --user=$user --password=$password $db_name --routines --single-transaction | gzip -9 | aws s3 cp - $s3bucket

$tstampend=$(date +"%y-%m-%d %h:%m:%s")

echo"[$tstampend] mysql_dump.info: mysql dump finished."gt;gt; "$log_root"

echo"stack trace:"gt;gt; "$log_root"

echo"#backup stored at s3://bucket/database/$(date +%a).sql.gz"gt;gt; "$log_root"

为每日备份创建 cronjob

#crontab -e

0 0 * * * bash/home/ec2-user/s3/mysql.sh togt;/dev/null 2gt;amp;1

#midnight 12 daily




文章标签:pippipedumps3cmd

IT人知识库 该篇知识地址:http://www.itpeo.net/389620/4633197.html





如何为命名组的用户列出用户名和组成员身份?

问题:我对powershell比较新,并且在命令行中有两个语句:get-adgroupmember lt;group n ...

rfedfre

什么是svchost以及它的多个实例运行的原因?

问题:我的桌面上有六个实例,在我管理的服务器上可能有十个实例。 这是什么,对系统功能来说是至关重要的?回答 1:svch ...

Debian: 如何删除软件包及其配置?

问题:我不确定在我的debian服务器上该怎么做aptitude install apache2ls/etc/apach ...

如何使用与该数据中心相关的ip地址查找数据中心?

问题:我有一个 vds,它真的很好 !我的经销商在该服务器上遇到了一些问题,因为它们支持。我想直接从该数据中心购买一台服 ...

运行一个linux脚本检查进程,如果停止了如何启动进程

问题:我们正在运行 oes2/suse。问题是我们的groupwise web access。 它不时停止,我们必须重新 ...

在centos上,如何设置 socks 5代理服务器

问题:我需要一个 socks 5代理服务器,可以运行在centos上。 这将使用一块 ip,客户端x 和ip地址通过 i ...

什么是"中断"进程为什么它喜欢我的CPU?

问题:我有 windows xp on在英特尔核心组合 2 ghz。 根据流程浏览器,"中断"进程持续采用 30个-40 ...

rfedfre

我的服务器正在交换,如何修复它?

问题:我正在使用 slicehost.com 256mb 主机作为我的站点。不幸的是它几乎是交换所有的时间。 当我键入控 ...

当你将 1 Gpbs连接到你的主haproxy时,你如何扩展?

问题:如果将 public 网络连接( 说 1 gbps ) 排除为代理请求到后端服务器的请求,则必须将它的缩放。由于所 ...

那么多的版本如何选择( Tomcat,JDK,等等 )?

问题:当决定在 linux of 6.2服务器上安装tomcat时,我面临各种各样的版本来选择。 请参见这里的示例。 关 ...

对于 vsphere,如何指定每个挂载点的磁盘空间?

问题:我通过 vsphere web客户端创建了虚拟机。 esx版本为 6.5,并且vsphere版本也为 6.5通过菜 ...

在显示每个vhosts的活动( apache_watch_插件)的图表中,不显示任何数据

问题:我正在使用munin监视我的服务器。我安装了apache_watch_插件,以便能够看到apache相关的活动。 ...

rfedfre

Putty keyphrase需要多长时间( 例如 Putty 如何加密 private 密钥?

问题:我想知道一个 putty 密码短语的最小密码长度是多少。 这取决于密码所需的熵量,反而取决于所尝试的长度,这取决于 ...

如何调试/故障排除 collectd?

问题:我在使用exec插件的自定义脚本时遇到问题。 在 shell 中,脚本运行良好,在/var/log/collect ...

varnish 3 varnishlog显示丢失的URL

问题:我正在尝试在varnishlog中显示丢失的url。 以下命令返回整个事务:varnishlog -m"txhea ...

如何使用wget下载 php

问题:我去了php网站,尝试使用 wget ( 来自 ssh ) 下载最新的php 。 但似乎没有任何直接的链接。当我使 ...

如何从不同的子网中ssh到 solaris?

问题:我真的是新的solaris,并且安装了一个使用所有默认选项的solaris 11快递,但是我有很多问题。在从主机上 ...

如何知道安装RAID 1?

问题:最近,服务器崩溃了,所以我们决定在服务器上安装一个 raid 1. 所以我们要求主机,他们告诉我们重新安装所有系统 ...

如何集中管理多个IP机器的多个网卡

问题:我们是一家网络开发公司,所有使用 笔记本,目前使用 static。 每台机器都有一个网卡,但是我们需要多个到多个i ...

有人可以以建议为什么这两台服务器 2008机器不会互相交谈?

问题:i x64安装that与我的一台服务器 2008 r2 hyper-v 主机( 我们把它叫做金星) 或者它的任何客 ...