导出docker MySQL中的数据库写一个shell 脚本

这篇具有很好参考价值的文章主要介绍了导出docker MySQL中的数据库写一个shell 脚本。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

  1. 安装命令 mysqldump
sudo apt update
sudo apt install mysql-client

  1. 编辑脚本内容 export_mysql.sh
#!/bin/bash

# Docker 容器的 IP 地址
container_ip="172.26.77.246"

# MySQL 数据库的用户名和密码
mysql_user="root"
mysql_password="your_password"

# 要导出的数据库列表
databases=("website1" "website2" "website3")

# 导出文件的目录
export_dir="/path/to/export/directory"

# 创建导出文件目录
mkdir -p $export_dir

# 循环导出每个数据库
for db_name in "${databases[@]}"
do
    # 导出文件名
    export_file="$export_dir/$db_name.sql"

    # 使用 mysqldump 导出数据库到宿主机上
    mysqldump -h $container_ip -u $mysql_user -p$mysql_password $db_name > $export_file

    # 输出导出完成信息
    echo "数据库 $db_name 已导出到 $export_file"
done

# 压缩sql文件
tar -cvzf $export_dir/archive_$(date +%Y%m%d).tar.gz $export_dir/*.sql
# 删除sql原文件
rm -rf $export_dir/*.sql

  1. 执行以下命令给脚本添加执行权限:
chmod +x export_mysql.sh

文章来源地址https://www.toymoban.com/news/detail-833411.html

到了这里,关于导出docker MySQL中的数据库写一个shell 脚本的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包赞助服务器费用

相关文章

  • MySQL 数据库文件的导入导出

    MySQL 数据库文件的导入导出

    目录 数据库的导出 导出整个数据库 导出数据库中的数据表 导出数据库结构 导出数据库中表的表结构 导出多个数据库 导出所有数据库 数据库的导入 mysqldump -h IP地址 -P 端口 -u 用户名 -p 数据库名 导出的文件名 用管理员权限打开cmd进入MySQL的bin目录下,根据自己情况调整  

    2024年02月13日
    浏览(14)
  • sqlserver导出数据为excel再导入到另一个数据库

    要将SQL Server中的数据导出为Excel文件,然后再将该Excel文件导入到另一个数据库中,你可以按照以下步骤进行操作: 请注意,上述脚本中的 -U 和 -P 选项用于提供连接数据库的用户名和密码。确保将脚本中的其他参数替换为实际的值,并根据需要进行其他适当的调整。

    2024年01月25日
    浏览(10)
  • 如何把Navicat中的数据库中的所有表导出

    如何把Navicat中的数据库中的所有表导出

    第一步 打开navicat 找到你想要导出表的数据库 第二步 右击该数据库,选择 转储SQL文件 再选择 结构和数据… 保存到一个你知道的文件夹中,就ok了。 第三步 运行那个生成的文件,就可生成之前数据库中的所有表格了,通过记事本打开那个文件,复制所有的代码。 第四步 在

    2024年02月07日
    浏览(12)
  • Django的mysql数据库问题:同一个模型(同一张表)中的不同记录也是可以相互关联的【使用“自引用关系”】

    是的,确实可以在Django的模型中使用外键来建立同一模型中不同记录之间的关联关系。这样的关联关系被称为自引用关系(self-referential relationship)或者自关联关系。通过在模型中定义外键字段,你可以使模型的实例与同一模型中的其他实例产生关联。 在Django中,这通常通过

    2024年01月18日
    浏览(44)
  • MySQL 00 : MySQL_数据库shell登录时遇到的问题

    MySQL 00 : MySQL_数据库shell登录时遇到的问题

    1、 vim /etc/profile 2、末尾写入 export PATH=$PATH:/usr/local/mysql/bin 3、保存 4、执行 source /etc/profile 问题描述 Mac通过MAMP安装MySQL时,在终端输入mysql -u root -p启动数据库,确提示了下面这个错误 zsh: command not found: mysql 1 看了很多教程都没有解决问题,后面FQ才找了解决方案。网上很多解

    2024年02月06日
    浏览(8)
  • mysql,mysqldump数据库导入导出sql文件

    在使用MySQL数据库时,经常需要备份和恢复数据库,通过导出sql文件备份和直接执行sql文件恢复是非常便捷的方式。本篇博客主要介绍如何对MySQL数据库通过cmd命令导出和导入sql文件。 导出sql文件可以使用mysqldump。主要有如下几种操作: ①导出整个数据库 (包括数据库中的数

    2023年04月10日
    浏览(14)
  • MySQL Shell连接数据库报MySQL Error 1045 (28000)错误浅析

    这里简单总结一下mysql shell访问数据库时报MySQL Error 1045 (28000): Access denied for user \\\'root\\\'@\\\'::1\\\' (using password: YES)的原因以及如何解决这个问题 这里测试的环境为MySQL 8.0.35,我们先来看看报错案例: 先用root账号连接数据(socket方式),检查用户信息,如下所示,root账号限定为localhost 然

    2024年02月05日
    浏览(9)
  • Navicat远程连接,Docker中的mysql,新建数据库时报错:1044 -Access denied for user ‘root‘@‘%‘ to database

    Navicat远程连接,Docker中的mysql,新建数据库时报错:1044 -Access denied for user ‘root‘@‘%‘ to database

     该错误表示root用户没有访问指定数据库的权限  解决办法就是重新赋权 1.访问 Docker 容器内的 MySQL 命令行界面 2.输入 root 用户的密码 注 : 密码是不会显示的,输入完后Enter即可 3.切换数据库 4.更新表host中的列,将根用户的mysql.user值设置为。\\\'%\\\' 注 :         默认情况

    2024年02月16日
    浏览(13)
  • 编写shell脚本,利用mysqldump实现MySQL数据库分库分表备份

    编写shell脚本,利用mysqldump实现MySQL数据库分库分表备份

     查看数据和数据表 删除头部Database和数据库自带的表  编写脚本 检查脚本运行备份数据库 分表分库备份成功 还原检测 删除数据库并查看库 开始还原 使用备份的库进行还原,由于是压缩文件,使用压缩还原 查看数据库  

    2024年02月05日
    浏览(12)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包