一、拉取镜像
docker pull mysql:5.7
二、创建配置目录
这里我们采取外部配置文件映射方式,在宿主机进行配置mysql的相关配置
mkdir -p /usr/local/dockerdata/mysql/conf
mkdir -p /usr/local/dockerdata/mysql/logs
mkdir -p /usr/local/dockerdata/mysql/data
三、创建配置文件
cd /usr/local/dockerdata/mysql/conf
vi my.cnf
编辑my.cnf的内容:
[client]
default-character-set=utf8
[mysql]
default-character-set = utf8
[mysqld]
character_set_server=utf8
default-time_zone = '+8:00' #默认时区配置
lower_case_table_names=1 #表名忽略大小写
四、设置本地连接密码并将mysql容器设置为开机启动
docker run --restart always -p 3306:3306 --name mysql -v /usr/local/dockerdata/mysql/conf:/etc/mysql/conf.d -v /usr/local/dockerdata/mysql/logs:/logs -v /usr/local/dockerdata/mysql/data:/mysql_data -e MYSQL_ROOT_PASSWORD=123456 -d mysql:5.7
五、开放远程访问
1.先进入mysql的docker容器
docker exec -it mysql bash
2.登录mysql
mysql -u root -p
3.输入密码(步骤四中初始化mysql时设置的密码是123456)
4.在mysql中开启远程访问
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '123456';
flush privileges;
quit;
5.部分电脑可能需要放行3306端口
firewall-cmd --permanent --zone=public --add-port=3306/tcp
firewall-cmd --reload