【Docker】:docker安装mysql,挂载外部配置和数据

【Docker】:docker安装mysql,挂载外部配置和数据

普通安装

1.下载镜像,mysql 5.7

docker pull mysql:5.7

2.创建mysql容器,并后台启动

docker run -d -p 3306:3306 -e MYSQL_USER="woniu" -e MYSQL_PASSWORD="123456" -e MYSQL_ROOT_PASSWORD="123456" --name mysqltest1 mysql:5.7 --character-set-server=utf8 --collation-server=utf8_general_ci

参数说明:

-e MYSQL_USER="woniu"  :添加woniu用户

-e MYSQL_PASSWORD="123456":设置添加的用户密码

-e MYSQL_ROOT_PASSWORD="123456":设置root用户密码

--character-set-server=utf8:设置字符集为utf8

--collation-server=utf8_general_cli:设置字符比较规则为utf8_general_cli

挂载外部配置和数据安装

1.创建目录和配置文件my.cnf

mkdir /docker
mkdir /docker/mysql
mkdir /docker/mysql/conf
mkdir /docker/mysql/data

创建my.cnf配置文件
touch /docker/mysql/conf/my.cnf

my.cnf添加如下内容:
[mysqld]
user=mysql
character-set-server=utf8
default_authentication_plugin=mysql_native_password
[client]
default-character-set=utf8
[mysql]
default-character-set=utf8

2.创建容器,并后台启动

docker run -d -p 3306:3306 --privileged=true -v /docker/mysql/conf/my.cnf:/etc/mysql/my.cnf -v /docker/mysql/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=123456 --name mysqltest2 mysql:5.7

参数说明:

--privileged=true:容器内的root拥有真正root权限,否则容器内root只是外部普通用户权限

-v /docker/mysql/conf/my.cnf:/etc/my.cnf:映射配置文件

-v /docker/mysql/data:/var/lib/mysql:映射数据目录

评论

Your browser is out-of-date!

Update your browser to view this website correctly. Update my browser now

×