zoukankan      html  css  js  c++  java
  • docker部署mysql

    服务器是centos7,因为yum不是最新的docker源所以需要更新源地址

    yum install -y yum-utils device-mapper-persistent-data lvm2 yum-config-manager  --add-repo --添加依赖源
    https://download.docker.com/linux/centos/docker-ce.repo

    安装docker

    yum-config-manager  --add-repo https://download.docker.com/linux/centos/docker-ce.repo
    yum-config-manager --enable docker-ce-nightly
    yum-config-manager --enable docker-ce-test
    yum-config-manager --disable docker-ce-nightly
    yum install docker-ce docker-ce-cli containerd.io

    失败可以设置阿里云镜像

    cat >>/etc/yum.repos.d/docker.repo<<EOF
    [docker-ce-edge]
    name=Docker CE Edge - $basearch
    baseurl=https://mirrors.aliyun.com/docker-ce/linux/centos/7/$basearch/edge
    enabled=1
    gpgcheck=1
    gpgkey=https://mirrors.aliyun.com/docker-ce/linux/centos/gpg
    EOF
    

    查看是否安装成功

    [root@mini ~]# docker -v
    Docker version 19.03.8, build afacb8b
    

    查找mysql

    [root@mini ~]# docker search mysql
    NAME                              DESCRIPTION                                     STARS               OFFICIAL            AUTOMATED
    mysql                             MySQL is a widely used, open-source relation…   9440                [OK]                
    mariadb                           MariaDB is a community-developed fork of MyS…   3401                [OK]                
    mysql/mysql-server                Optimized MySQL Server Docker images. Create…   691                                     [OK]
    centos/mysql-57-centos7           MySQL 5.7 SQL database server                   75                                      
    mysql/mysql-cluster               Experimental MySQL Cluster Docker images. Cr…   67                                      
    centurylink/mysql                 Image containing mysql. Optimized to be link…   61                                      [OK]
    deitch/mysql-backup               REPLACED! Please use http://hub.docker.com/r…   41                                      [OK]
    bitnami/mysql                     Bitnami MySQL Docker Image                      39                                      [OK]
    tutum/mysql                       Base docker image to run a MySQL database se…   34                                      
    schickling/mysql-backup-s3        Backup MySQL to S3 (supports periodic backup…   29                                      [OK]
    prom/mysqld-exporter                                                              27                                      [OK]
    linuxserver/mysql                 A Mysql container, brought to you by LinuxSe…   25                                      
    centos/mysql-56-centos7           MySQL 5.6 SQL database server                   19                                      
    circleci/mysql                    MySQL is a widely used, open-source relation…   19                                      
    databack/mysql-backup             Back up mysql databases to... anywhere!         17                                      
    mysql/mysql-router                MySQL Router provides transparent routing be…   15                                      
    arey/mysql-client                 Run a MySQL client from a docker container      14                                      [OK]
    openshift/mysql-55-centos7        DEPRECATED: A Centos7 based MySQL v5.5 image…   6                                       
    fradelg/mysql-cron-backup         MySQL/MariaDB database backup using cron tas…   6                                       [OK]
    genschsa/mysql-employees          MySQL Employee Sample Database                  5                                       [OK]
    devilbox/mysql                    Retagged MySQL, MariaDB and PerconaDB offici…   3                                       
    ansibleplaybookbundle/mysql-apb   An APB which deploys RHSCL MySQL                2                                       [OK]
    jelastic/mysql                    An image of the MySQL database server mainta…   1                                       
    widdpim/mysql-client              Dockerized MySQL Client (5.7) including Curl…   0                                       [OK]
    monasca/mysql-init                A minimal decoupled init container for mysql    0                                       
    

    直接选择第一个或者第二个都可以

    docker pull mysql

    运行

    docker run --name mysqlserver -e MYSQL_ROOT_PASSWORD=123456 -d -i -p 3306:3306  mysql

    连接进入mysql

    mysql -h 127.0.0.1 -u root -p 
    Enter password: 
    ERROR 2059 (HY000): Authentication plugin 'caching_sha2_password' cannot be loaded: 
    /usr/lib64/mysql/plugin/caching_sha2_password.so: cannot open shared object file: 
    No such file or directory

    出现上述错误主要因为密码加密不一样,解析错误,需要进入mysql内部修改密码

    docker exec -it  8f265a91d27c  /bin/bash
    root@8f265a91d27c:/# mysql -h 127.0.0.1 -u root -p 

    查看信息

    select host,user,plugin,authentication_string from mysql.user;
    mysql> select host,user,plugin,authentication_string from mysql.user;
    +-----------+------------------+-----------------------+------------------------------------------------------------------------+
    | host      | user             | plugin                | authentication_string                                                  |
    +-----------+------------------+-----------------------+------------------------------------------------------------------------+
    | %         | root             | caching_sha2_password | $A$005$fa[!E}6[YCNBmDujd1CsqF.wjiaqkfgE96QDHORhA9xnq4KCi.F15P7N96/ |
    | localhost | mysql.infoschema | mysql_native_password | *THISISNOTAVALIDPASSWORDTHATCANBEUSEDHERE                              |
    | localhost | mysql.session    | mysql_native_password | *THISISNOTAVALIDPASSWORDTHATCANBEUSEDHERE                              |
    | localhost | mysql.sys        | mysql_native_password | *THISISNOTAVALIDPASSWORDTHATCANBEUSEDHERE                              |
    | localhost | root             | caching_sha2_password | $A$005$hmWiN:3vHe*7#XW5VdLebKWFz0wXcgejQLkzRKCvhD2Y05BXGAlB4co9B |
    +-----------+------------------+-----------------------+------------------------------------------------------------------------+
    备注:host为 % 表示不限制ip  localhost表示本机使用    plugin非mysql_native_password 则需要修改密码

    修改密码任意并刷新

    ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY 'mysql';
    更新user为root,host为% 的密码为123456
    
    查询配置信息,字符编码
    SHOW VARIABLES WHERE VALUE LIKE '%/%'
    SHOW VARIABLES LIKE '%char%'
    配置引擎信息
    SHOW ENGINES;

    此时重新连接就可以了

    附录,docker运行可能遇到的错误

    常见docker错误
    1,Docker报错 WARNING: IPv4 forwarding is disabled. Networking will not work.
        vim  /usr/lib/sysctl.d/00-system.conf
        添加如下代码:
        net.ipv4.ip_forward=1
        重启network服务
        systemctl restart network
    2,Docker:删除images报错(Error response from daemon: conflict: unable to remove repository reference)
        Docker无法删除images,由于是依赖container。 
        1.进入root权限
        sudo su
        2.停止所有的container,这样才能够删除其中的images:
            docker stop $(docker ps -a -q)
        如果想要删除所有container的话再加一个指令:
            docker rm $(docker ps -a -q)
        3.查看当前有些什么images
            docker images
        4.删除images,通过image的id来指定删除谁
            docker rmi
        想要删除untagged images,也就是那些id为的image的话可以用
        docker rmi  $(docker images | grep "^<none>" | awk "{print $3}")
        要删除全部image的话
            docker rmi $(docker images -q)

    *******************************************************************************************************************************

    感谢阿贝云提供的免费云服务器和免费虚拟主机,1C1G5M配置,搭配内网穿透,真香,看视频听歌曲无压力,*

    运行起来也相当流畅,网速个人使用是真的赞,欢迎大家使用

    *******************************************************************************************************************************

  • 相关阅读:
    C++ 将对象写入文件 并读取
    IronPython fail to add reference to WebDriver.dll
    How to Capture and Decrypt Lync Server 2010 TLS Traffic Using Microsoft Tools
    .net code injection
    数学系学生应该知道的十个学术网站
    Difference Between Currency Swap and FX Swap
    Swift开源parser
    谈谈我对证券公司一些部门的理解(前、中、后台)[z]
    JDK8记FullGC时候Metaspace内存不会被垃圾回收
    JVM源码分析之JDK8下的僵尸(无法回收)类加载器[z]
  • 原文地址:https://www.cnblogs.com/zqq1234/p/12815584.html
Copyright © 2011-2022 走看看