• Mysql容器化(1)Docker安装MySQL


    1.容器化的MySQL的问题

    docker容器其实就是在镜像的基础上添加了一个读写层,在容器被删除的时候,容器所保持的数据状态将会丢失,对于MySQL这样的持久数据存储是灾难性的,那么这时候容器的数据持久化就显得很必要了。

    2.如何实现持久化

    在上一个博客Docker持久化中已经做了详细的介绍,读者可以参考一下。

    3.MySQL的数据源文件

    Mysql的数据文件一般默认是存储在/var/lib/myql下,其中的文件夹对应每个数据库

    #其中的wordpress文件夹就是我名称wordpress对应的数据库
    root@990f20ea8714:/var/lib/mysql# cd /var/lib/mysql && ls
    auto.cnf         client-key.pem  ibdata1             private_key.pem  sys
    ca-key.pem       ib_buffer_pool  ibtmp1              public_key.pem   wordpress
    ca.pem           ib_logfile0     mysql               server-cert.pem
    client-cert.pem  ib_logfile1     performance_schema  server-key.pem
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7

    进入数据库

    root@990f20ea8714:/var/lib/mysql# cd wordpress/ && ls
    db.opt              wp_options.frm             wp_term_relationships.ibd  wp_usermeta.frm
    wp_commentmeta.frm  wp_options.ibd             wp_term_taxonomy.frm       wp_usermeta.ibd
    wp_commentmeta.ibd  wp_postmeta.frm            wp_term_taxonomy.ibd       wp_users.frm
    wp_comments.frm     wp_postmeta.ibd            wp_termmeta.frm            wp_users.ibd
    wp_comments.ibd     wp_posts.frm               wp_termmeta.ibd
    wp_links.frm        wp_posts.ibd               wp_terms.frm
    wp_links.ibd        wp_term_relationships.frm  wp_terms.ibd
    root@990f20ea8714:/var/lib/mysql/wordpress# 
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10

    其中的.frm文件为表结构文件。
    其中的.ibd文件为表数据文件。

    4.通过volume实现数据库数据持久化

    • 创建mysql数据卷
    • 创建mysql配置卷(开启binlog等)
    • 创建mysql日志卷(产生mysql日志)
    docker volume create mysql-data \
    docker volume create mysql-config \
    docker volume create mysql-log 
    
    • 1
    • 2
    • 3
    docker run -d -p 3306:3306 \
    	 --name mysql \
    	 -v mysql-data:/var/lib/mysql \
    	 -v mysql-config:/etc/mysql/conf.d \
    	 -v mysql-log:/var/log/mysql \
    	 -e MYSQL_ROOT_PASSWORD=131452 \
    	 mysql:5.7
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7

    注意:关于Docker持久化参考博文

  • 相关阅读:
    云计算概述
    【Python】异常、模块与包
    Composer 安装与使用
    Python中神奇的「type」,即可查看类型,又可以创建对象
    常用七种排序之冒泡排序(排序图解+分析Java
    AFNetworking网络请求详解
    DORIS 文件读取(研究中)
    Nginx介绍
    Fully Convolutional Networks for Semantic Segmentation--论文笔记
    云原生可观测套件:构建无处不在的可观测基础设施
  • 原文地址:https://blog.csdn.net/wangleleb/article/details/125539957