前言:
而今你们对“mysql镜像”可能比较看重,大家都想要分析一些“mysql镜像”的相关内容。那么小编在网上网罗了一些关于“mysql镜像””的相关文章,希望我们能喜欢,朋友们一起来了解一下吧!MySQL是一种广泛使用的开源关系数据库管理系统(RDBMS)。
应用示例启动一个mysql容器
docker run --name some-mysql -e MYSQL_ROOT_PASSWORD=my-secret-pw -d mysql:version
使用自定义mysql配置文件
MySQL的默认配置/etc/mysql/my.cnf,其中可以包含!includedir其他目录,例如/etc/mysql/conf.d或/etc/mysql/mysql.conf.d。
如果/my/mysql/conf.d你自定义的mysql配置文件,则可以直接挂载到mysql容器中:
docker run --name some-mysql -v /my/mysql/conf.d:/etc/mysql/conf.d -e MYSQL_ROOT_PASSWORD=my-secret-pw -d mysql:version
MySQL实例启动会加载/etc/mysql/my.cnf和/etc/mysql/conf.d/下面的所有配置文件,并采取优先次序设置。
持久化
MySQL默认的数据库存储目录是/var/lib/mysql,您可以通过挂载本机目录覆盖此目录,来达到持久化的效果
docker run --name some-mysql -v /my/mysql/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=my-secret-pw -d mysql:version
以非root用户启动容器
docker run --user 1000:1000 --name some-mysql -e MYSQL_ROOT_PASSWORD=my-secret-pw -d mysql:version
可用的环境变量(首次启动)
启动mysql镜像时,可以通过在docker run命令行设置一个或多个环境变量来调整MySQL实例的配置。
请注意,如果使用已包含数据库的数据目录启动容器,则以下任何变量都将无效:容器启动时,任何现有数据库都将保持不变。
MYSQL_ROOT_PASSWORD
必须,设置root用户密码
MYSQL_DATABASE
可选,允许您指定在映像启动时要创建的数据库的名称。如果提供了用户名/密码(请参阅下文),则将授予该用户对该数据库的超级用户访问权限(与相对应GRANT ALL)。
MYSQL_USER, MYSQL_PASSWORD
可选,创建一个用户并指定密码。这两个变量都是创建用户所必需的。
请注意,不能使用此变量来创建root用户
MYSQL_ALLOW_EMPTY_PASSWORD
可选。设置为yes则允许root用户的密码为空。
MYSQL_RANDOM_ROOT_PASSWORD
可选。设置yes则为root用户生成一个随机的初始密码(使用pwgen)。生成的root密码将被打印到stdout(GENERATED ROOT PASSWORD: .....)。
MYSQL_ONETIME_PASSWORD
初始化完成后,将root用户(不是MYSQL_USER!中指定的用户)设置为过期用户,从而在首次登录时强制更改密码。注意:仅MySQL 5.6+支持此功能。
标签: #mysql镜像