• docker部署数据库


       搜索数据库镜像images  

      docker search mysql

      搜索结果如下图所示:

      

      选择合适自己的mysql版本

      因为mysql新版本出来了,很多特性没有学习,所以笔者安装了mysql:5.6 这个版本比较友好

      使用docker pull进行下载

    docker pull mysql:5.6

      等待下载完成之后,使用 docker run 进行部署

    docker run -d -p 3306:3306 -e MYSQL_ROOT_PASSWORD=root --name mysql mysql:5.6

      参数解析:

        -d : 表示后台运行

        -p : 表示端口映射  服务器端口:docker 内部mysql暴露的端口   即  你想自定义的端口号:3306

        -e : 环境变量或者参数设置  这里设置的是mysql 的root密码

        --name : 此容器的名字  可以通过 docker ps -a 进行查看 对容器的操作可以通过容器id 也可以通过容器名 

        mysql:5.6 指的是使用那一个镜像(image) 进行部署

      如此mysql就部署成功了

      进入容器,使用mysql,使用docker exec进入容器内部

    docker exec -it mysql /bin/bash

      参数解析:

        -it : 可以理解为进入容器内部

        mysql : 容器名称  也可以使用容器id

        /bin/bash : 进入/bin/bash 目录 即可以使用命令行的方式 

      进入之后:

        

      此时只是进入了容器之中,并没有进入mysql

      使用 mysql -u root -p root 进入mysql 

    mysql -u root -p
    root

      进入之后就可以进行数据库的基本操作了。

      附上 mysql 创建用户和权限: mysql:5.6 和最新的mysql 版本创建用户和权限管理有很大区别,如果读者是安装的最新版的mysl 下面的方法可能不适用

    create user '用户名'@‘ip’ identified by '密码';

      其中ip属性指的是限定某个ip才可以访问,%表示所有ip都可以访问  localhost 本机才可以访问

      修改密码:

    update mysql.user set password = password('新密码') where user = '用户名';

      删除用户:

    delete from mysql.user where user = '用户名';

      修改用户权限:

    grant all privileges on 数据库名.表名 to '用户名'@‘ip’ 

      如果是所有数据库 所有表 使用 *.*    ip同上创建用户  可以使用 % 表示所有ip

      最后修改了需要刷新才能生效

    flush privileges;

        

  • 相关阅读:
    string subscript out of range
    基数树(radix tree)
    改进版的快速排序
    快速排序算法-C语言实现
    归并排序
    用数组名做函数参数(转)
    堆和栈的区别
    给指针malloc分配空间后就等于数组吗?
    codeblocks中添加-std=c99
    堆排序-C语言实现
  • 原文地址:https://www.cnblogs.com/linux0kk/p/12200868.html
Copyright © 2020-2023  润新知