zoukankan      html  css  js  c++  java
  • docker 持久化存储

    [root@localhost ~]# docker run --name mysql -p 3306:3306 -v /mysql(主机上的目录):/var/lib/mysql(容器内部目录) -d hub.c.163.com/public/centos:6.7-tools
    [root@localhost ~]# docker exec -it mysql /bin/bash
    [root@0534fd344f72 /]# yum -y install mysql mysql-server
    [root@0534fd344f72 /]# service mysqld start
    [root@0534fd344f72 /]# exit
    exit
    [root@localhost ~]# cd /mysql/
    [root@localhost mysql]# ls
    ibdata1  ib_logfile0  ib_logfile1  mysql  mysql.sock  test
    [root@localhost mysql]# docker exec -it mysql /bin/bash
    [root@0534fd344f72 /]# mysqladmin -uroot password 123
    [root@0534fd344f72 /]#  mysql -uroot -p
    Enter password: 
    Welcome to the MySQL monitor.  Commands end with ; or g.
    Your MySQL connection id is 4
    Server version: 5.1.73 Source distribution
    
    Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.
    
    Oracle is a registered trademark of Oracle Corporation and/or its
    affiliates. Other names may be trademarks of their respective
    owners.
    
    Type 'help;' or 'h' for help. Type 'c' to clear the current input statement.
    
    mysql> create database aa;
    Query OK, 1 row affected (0.00 sec)
    
    mysql> use aa;
    Database changed
    mysql> create table a1 (id int,name char(30));
    Query OK, 0 rows affected (0.01 sec)
    
    mysql> select * from a1;
    Empty set (0.00 sec)
    
    mysql> insert into a1 values (1,"lishi");
    Query OK, 1 row affected (0.00 sec)
    
    mysql> select * from a1;                 
    +------+-------+
    | id   | name  |
    +------+-------+
    |    1 | lishi |
    +------+-------+
    1 row in set (0.00 sec)
    mysql> select * from aa.a1;
    +------+-------+
    | id   | name  |
    +------+-------+
    |    1 | lishi |
    +------+-------+
    1 row in set (0.00 sec)
    [root@localhost mysql]# cd /mysql/
    [root@localhost mysql]# ls
    aa  ibdata1  ib_logfile0  ib_logfile1  mysql  mysql.sock  test
    [root@localhost mysql]# cd aa
    [root@localhost aa]# ls
    a1.frm  a1.MYD  a1.MYI  db.opt
    a1.frm    存放表结构,a1.MYD    存储数据,   a1.MYI    索引,  db.opt    数据库相关信息,在这个库下的一些特殊信息存在这里。

    对于多个容器我可以把他们的挂载到同一个目录下实现他们的数据一至。这个是一个web集群的话,只要本地的磁盘足够大,那就可以做到一个目录共享,在小集群下我们可以这么做,如果在大集群下比如web集群有上百台的话,不建议这么做,本地磁盘io会成为一瓶颈,他也可以实现本的磁盘远程挂载的方式,先本地目录挂载成远程文件系统,容器挂载到这个远程文件系统实现的就是操作远程目录的权限。并且操作的还是同一个远程文件系统,这样就可以实现数据的一至性。

  • 相关阅读:
    asp.net 2.0-实现数据访问(1)
    跨平台跨服务器跨网站SSO(单点登录)方案的DEMO
    (翻译)Windows Communication Foundation (Workshop)-Part 2:在WCF中操作会话
    ipc的remoting
    忙活了半年的书已经交稿,年后就要出版
    一个ASP.NET2.0的小项目-BLOG
    (论坛答疑点滴)上传控件怎么修改样式?怎么设置readonly?
    【LoveCherry】上海.NET招聘!!!!!!!!!!!!!!!!!!!!!!!!!
    【翻译】Scott Mitchell的ASP.NET2.0数据指南中文版索引
    Scott Mitchell 的ASP.NET 2.0数据教程之二十四:: 分页和排序报表数据
  • 原文地址:https://www.cnblogs.com/liujunjun/p/12119145.html
Copyright © 2011-2022 走看看