zoukankan      html  css  js  c++  java
  • Docker 搭建 MySQL 8版本

    安装 Docker

    请参考我的另一篇文章

    Docker 安装及使用

    建立镜像

    拉取镜像

    # 拉取最新版本镜像
    docker pull mysql
    

    首先需要准备新建目录及文件

    文件:/usr/local/docker/mysql8/config/my.cnf
    目录:/usr/local/docker/mysql8/data
    文件:/usr/local/docker/mysql8/etc/localtime
    目录:/usr/local/docker/mysql8/log
    

    my.cnf 文件

    [mysqld]
    user=mysql
    character-set-server=utf8
    default_authentication_plugin=mysql_native_password
    secure_file_priv=/var/lib/mysql
    expire_logs_days=7
    sql_mode=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION
    max_connections=1000
    
    [client]
    default-character-set=utf8
    
    [mysql]
    default-character-set=utf8
    

    创建数据库容器

    *********************** MySQL 8 版本 ********************************
    docker run -p 3308:3306 --name mysql8 
    -v /usr/local/docker/mysql8/conf/my.cnf:/etc/mysql/my.cnf:rw 
    -v /usr/local/docker/mysql8/log:/var/log/mysql:rw 
    -v /usr/local/docker/mysql8/data:/var/lib/mysql:rw 
    -v /usr/local/docker/mysql8/etc/localtime:/etc/localtime:ro 
    -e MYSQL_ROOT_PASSWORD=123456 
    -d mysql
    
    # -v:主机和容器的目录映射关系,":"前为主机目录,之后为容器目录
    

    检查容器是否正确运行

    docker container ls
    # 可以看到容器ID,容器的源镜像,启动命令,创建时间,状态,端口映射信息,容器名字
    

    配置MySQL 8.0 版本(支持远程连接,Navicate)

    如果使用上面提供的 my.cnf 配置文件,这一步不做,直接用 navicate 连接数据库

    # 进入容器
    docker exec -it mysql8 bash 
    
    # 登录mysql
    mysql -uroot -p
    
    # 切换到mysql数据库
    use mysql;
    
    # 查看用户信息
    select host,user,plugin,authentication_string from mysql.user;
    
    # 修改更新密码算法,便于使用Navicat连接,
    ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '123456';
    
    flush privileges;
    

    参考连接

    https://www.cnblogs.com/sablier/p/11605606.html

    https://blog.csdn.net/weixin_43279476/article/details/97753831

  • 相关阅读:
    关于es6的箭头函数使用与内部this指向
    如何使用node中的buffer
    node里如何查看浏览器信息
    我也来写个小爬虫 ^_^
    长篇小说关键字瞬间过滤
    数组 字符串 常用操作
    怎样防止重复发送 Ajax 请求?
    js运算
    表单重复提交
    只能输入数字
  • 原文地址:https://www.cnblogs.com/dtdx/p/12805821.html
Copyright © 2011-2022 走看看