• Linux系统导入导出docker容器的sql数据


    Linux系统导入导出docker容器的sql数据

    一 要从Docker容器中将数据库导出到本地

    确保您已经安装了Docker,并且已经运行了包含数据库的Docker容器。

    检查容器中运行的数据库服务的名称或容器ID。您可以使用命令 docker ps 来列出正在运行的容器和相关信息。

    使用命令

    sudo docker exec -it 镜像名称 /bin/bash
    
    • 1

    进入运行中的容器内部的命令行界面。

    在容器内部,使用适当的数据库工具(如MySQL的mysqldump命令)执行导出操作。例如,使用以下命令导出MySQL数据库:

    mysqldump -u <数据库用户名> -p<数据库密码> --databases <数据库名称> > /path/to/导出文件.sql
    
    • 1

    替换 <数据库用户名>、<数据库密码> 和 <数据库名称> 为实际的数据库凭据和要导出的数据库名称,将导出的SQL文件保存在 /path/to/导出文件.sql 的路径下。

    退出容器的命令行界面,使用 exit 命令。

    使用 docker cp 命令将导出的数据库文件从容器复制到本地机器上。例如,使用以下命令:

    docker cp <容器名称或ID>:/path/to/导出文件.sql /path/to/本地目标路径/
    
    • 1

    替换 <容器名称或ID>、/path/to/导出文件.sql 和 /path/to/本地目标路径/ 为实际的容器名称或ID、导出文件的路径和要保存到的本地目标路径。

    现在您已经成功将数据库从Docker容器中导出到本地机器上,可以在本地环境中使用该导出的数据库文件。

    二 将本地数据库sql导入到docker容器中操作步骤

    #第一步:将本地sql文件上传到虚拟机上,可放在mysql/backup文件夹下

    #第二步:拷贝到容器中

    sudo docker cp sql文件 镜像名称:/backup
    
    • 1

    如果backup不存在,则需要在容器中创建该文件夹

    #第三步:进入docker的mysql容器中

    sudo docker exec -it 镜像名称 /bin/bash
    mysql -h 数据库地址 -u 用户名 -p密码
    
    • 1
    • 2

    #第四步:建库

    create database 数据库名称;
    
    • 1

    #第五步:设置编码格式

    use 库名;
    set names utf8;
    set character_set_results=utf8;
    
    • 1
    • 2
    • 3

    #第六步:执行SQL语句

    source /backup/sql文件
    
    • 1

    以上操作就已经将本地SQL导入到容器中并执行成功!

  • 相关阅读:
    一个cv大师的摆烂之旅
    CMake 学习笔记
    vue 动态绑定ref 父组件获取自组件data数据
    【Qt】QxOrm下载、编译、使用
    Node.js | 基础完结、综合训练 —— 路由应用实战教程
    LC-3 机器语言 计算一个16位的字中有多少位是1
    Go 快速开发朋友圈助力项目
    GET 和 POST 到底有什么区别?
    Python数据结构——Tuple
    div+css 设备看板样式
  • 原文地址:https://blog.csdn.net/hcyxsh/article/details/133746831