Arc*_*ing 2 server mysql database zip
到目前为止,我已经以这种方式创建并压缩了 mysql 转储:
mysqldump -u root -p --all-databases > /var/www/html/db-$(date +\%F-\%T).sql
zip /var/www/html/db-$(date +\%F-\%T).zip /var/www/html/db-*.sql
rm /var/www/html/db-*.sql
Run Code Online (Sandbox Code Playgroud)
有没有办法直接从这mysqldump2 行中压缩并保存它?
尝试这个:
mysqldump -u root -p --all-databases | zip /var/www/html/db-$(date +\%F-\%T).zip
Run Code Online (Sandbox Code Playgroud)
您将只有一个文件进入 zip 存档,其中-作为文件名。
另外两个答案已经说明了以下解决方案(因此将其视为其他两个答案的扩展):
mysqldump -u root -p --all-databases | zip /var/www/html/db-$(date +\%F-\%T).zip -
Run Code Online (Sandbox Code Playgroud)
这很好,但这只适用于标准输入/标准输出。这意味着文件将存储-在存档内,并且只能正常提取到标准输入。这意味着要从 ZIP 中实际提取这些数据,您必须这样做:
unzip -p myZipFile.zip > myBackup.sql
Run Code Online (Sandbox Code Playgroud)
如果你想制作一个“普通”的 ZIP 文件(其中的东西有一个真实的名字),你将不得不做一些非常复杂的事情,或者只是做你已经在做的事情,这样就没有净收益。
由于 MySQL 本身是标准输入感知的,您可以使用以下命令直接从备份中恢复(作为示例):
unzip -p myDataBackup.zip | mysql -uroot -pMyInsecurePassword
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
20639 次 |
| 最近记录: |