开发利器 - docker 安装运行 mysql

本文选择安装的mysql版本为5.7 ,安装环境 mac

1、查看镜像是否存在 

docker search mysql:5.7

2、拉取镜像 

docker pull mysql:5.7

3、运行镜像

docker run --name mysql -p 3306:3306 -e MYSQL_ROOT_PASSWORD=root1234 -d mysql:5.7

--name:指定容器名称,这里指定的名称为mysql

-e:指定环境参数,eenvironment的缩写

-p 3336:3306:对外映射容器内的端口号

-d:后台运行

mysql:5.7:运行5.7这个版本的mysql

其他:

--character-set-server=utf8mb4 --collation-server=utf8mb4_general_ci 设置数据库默认编码

ps:推荐将影响容器运行模式的参数放在前面,比如 -d(detached 模式)和 -it(交互式模式)

docker ps 查看运行的容器

4、执行 sql 命令

  • 进入容器内部  docker exec -it mysql bash

        指定用户进入:docker exec -it mysql(容器名) mysql -uroot -p

  • 创建新数据库  CREATE DATABASE newdatabase;
  • 创建一个新用户,并为其指定密码 

   CREATE USER 'newuser'@'localhost' IDENTIFIED BY 'newpassword';

  • 使用GRANT语句为新用户授权,允许其对新数据库进行操作

        GRANT ALL PRIVILEGES ON newdatabase.* TO 'newuser'@'localhost'  identified by 'root' ;

        这里将授予用户 newuser 对 newdatabase 数据库的所有表的所有权限。根据您的需要,可以授予更具体的权限。

privilegesCode表示授予的权限类型        

  • all privileges:所有权限。
  • select:读取权限。
  • delete:删除权限。
  • update:更新权限。
  • create:创建权限。
  • drop:删除数据库、数据表权限。 

username@host表示授予的用户以及允许该用户登录的IP地址。

  • localhost:只允许该用户在本地登录,不能远程登录。
  • %:允许在除本机之外的任何一台机器远程登录。
  • 192.168.xx.xx:具体的IP表示只允许该用户从特定IP登录。
  • 权限更改生效 FLUSH PRIVILEGES;

  • 退出MySQL:输入exit命令退出MySQL命令行界面。

小贴士:

  • docker 命令无法执行,首先看下环境变了配置是否正确

export PATH=/Applications/Docker.app/Contents/Resources/bin/:$PATH

相关推荐

  1. docker-compose运行mysql

    2024-05-12 06:52:05       15 阅读
  2. dockerdocker安装Mysql

    2024-05-12 06:52:05       33 阅读
  3. docker安装mysql8

    2024-05-12 06:52:05       31 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-05-12 06:52:05       18 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-05-12 06:52:05       19 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-05-12 06:52:05       18 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-05-12 06:52:05       20 阅读

热门阅读

  1. AlmaLinux 文件拷贝 cp命令用法示例

    2024-05-12 06:52:05       11 阅读
  2. class常量池、运行时常量池和字符串常量池详解

    2024-05-12 06:52:05       9 阅读
  3. 【Bug】Clash出现端口0的情况

    2024-05-12 06:52:05       13 阅读
  4. 整理项目中经常用到的正则

    2024-05-12 06:52:05       7 阅读
  5. word内容wxml转化html标签对照表

    2024-05-12 06:52:05       12 阅读
  6. Golang reflect.MakeFunc() 的用法及示例

    2024-05-12 06:52:05       10 阅读
  7. 软件定义汽车七大典型应用场景

    2024-05-12 06:52:05       10 阅读
  8. react18封装公共请求函数

    2024-05-12 06:52:05       10 阅读
  9. NLP和chatGpt的关系

    2024-05-12 06:52:05       9 阅读
  10. Bert基础(二十二)--Bert实战:对话机器人

    2024-05-12 06:52:05       10 阅读
  11. 【网络】为什么TCP需要四次挥手?

    2024-05-12 06:52:05       8 阅读