加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

bash – mysqldump与db在一个单独的文件

发布时间:2020-12-15 19:53:55 所属栏目:安全 来源:网络整理
导读:我正在编写一个单行命令,将所有数据库备份到各自的名称中,而不是使用一个sql中的转储。 例如:db1保存到db1.sql,db2保存到db2.sql 到目前为止,我收集了以下命令来检索所有数据库。 mysql -uuname -ppwd -e 'show databases' | grep -v 'Database' 我打算
我正在编写一个单行命令,将所有数据库备份到各自的名称中,而不是使用一个sql中的转储。

例如:db1保存到db1.sql,db2保存到db2.sql

到目前为止,我收集了以下命令来检索所有数据库。

mysql -uuname -ppwd -e 'show databases' | grep -v 'Database'

我打算用awk来管理它

awk '{mysqldump -uuname -ppwd $1 > $1.sql}'

但这不工作。

我是bash的新手,所以我的想法可能是错的。
我应该怎么做才能使其在各自的名称中导出db?

更新:
好的,必须终于设法从下面的提示中得到它的工作。
这是最后的脚本

# replace [] with your own config
# replace own dir to save
# echo doesn't work. hmm...

mysql -u[uname] -p'[pwd]' -e "show databases" 
| grep -Ev 'Database|information_schema' 
| while read dbname; 
do 
echo 'Dumping $dbname' 
mysqldump -u[uanme] -p'[pwd]' $dbname > ~/db_backup/$dbname.sql;
done

回音部分不行。

mysql -uroot -e 'show databases' | while read dbname; do mysqldump -uroot --complete-insert --some-other-options "$dbname" > "$dbname".sql; done

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读