欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Docker安装Mysql常用命令

程序员文章站 2024-03-13 15:34:33
...

1. 运行mysql 并设置当前root 密码为: jc164214878 映射的端口号为3306:3306

docker run --name mysql -e MYSQL_ROOT_PASSWORD=jc164214878 -d -p 3306:3306 registry.cn-hangzhou.aliyuncs.com/happygiraffe/mysql:5.7.22【阿里云镜像仓库中的名称以及版本号】 

2. 挂在本地配置到容器内部

docker run --name mysql -v /my/custom:/etc/mysql/conf.d -e MYSQL_ROOT_PASSWORD=jc164214878 -d  -p 3306:3306 registry.cn-hangzhou.aliyuncs.com/happygiraffe/mysql:5.7.22

3. 将当前mysql对应的表的字符编码集设置为 : utf-8

docker run --name mysql -e MYSQL_ROOT_PASSWORD=jc164214878 -d -p 3306:3306 registry.cn-hangzhou.aliyuncs.com/happygiraffe/mysql:5.7.22 --character-set-server=utf8mb4 --collation-server=utf8mb4_unicode_ci

4. 查看当前mysql的所有可选择项的完整列表可以使用一下命令来进行查看操作]

 docker run -it --rm registry.cn-hangzhou.aliyuncs.com/happygiraffe/mysql:5.7.22【container名称:container的tag版本号】 --verbose --help

5. 设置MySQL的一些运行环境

docker -e 
 -  MYSQL_ROOT_PASSWORD: 设置超级管理员root的密码
 -  MYSQL_DATABASE: 变量可选,允许宁只要要在镜像启动时创建的数据库的名称。如果提供了用户/密码(见下面的环境变量配置),则该用户将被授予对该数据库的超级用户访问权限(对应GRANT ALL -  MYSQL_USERMYSQL_PASSWORD: 这些变量是可选的,可以结合使用来创建新用户并设置该用户的密码。将为该用户授予该MYSQL_DATABASE变量指定的数据库的超级用户权限(参见上文)。这两个变量都是创建用户所必需的。
请注意,不需要使用此机制来创建超级超级用户,默认情况下会使用MYSQL_ROOT_PASSWORD变量指定的密码创建该用户。
 -  MYSQL_ALLOW_EMPTY_PASSWORD:  这是一个可选变量。设置为yes允许以root用户的空密码启动容器。注意:yes建议不要将此变量设置为,除非您确实知道自己在做什么,因为这会使您的MySQL实例完全不受保护,从而允许任何人获得完整的超级用户访问权限。

 - MYSQL_RANDOM_ROOT_PASSWORD:  这是一个可选变量。设置yes为为root用户生成随机初始密码(使用pwgen)。生成的root密码将打印到stdout(GENERATED ROOT PASSWORD: .....)
 - MYSQL_ONETIME_PASSWORD: 初始化完成后,将root(不是MYSQL_USER!中指定的用户)设置为过期,在首次登录时强制更改密码。注意:此功能仅在MySQL 5.6+上受支持。在MySQL 5.5上使用此选项将在初始化期间抛出适当的错误。

6. mysql容器的数据库挂载到本地的机器上


 docker run --name mysql -v /mysql/datadir:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=jc164214878 -d -p 3306:3306 registry.cn-hangzhou.aliyuncs.com/happygiraffe/mysql:5.7.22 --character-set-server=utf8mb4 --collation-server=utf8mb4_unicode_ci
  // 此时你查看本地主机的 /mysql/datadir 中都是当前mysql的数据库
相关标签: Docker