1、拉取镜像
docker pull mysql:5.7
2、运行容器
docker run --name mysql -p 3306:3306 -e MYSQL_ROOT_PASSWORD=root -d mysql:5.7docker exec -it mysql /bin/bashfind / -name "*mysql*"exit
3、创建用于挂载的目录
mkdir -p /my/mysql/conf # 挂载配置文件mkdir -p /my/mysql/data # 挂载数据文件mkdir -p /my/mysql/logs # 挂载日志文件
4、拷贝配置文件并修改
docker cp mysql:/etc/mysql/mysql.conf.d/mysqld.cnf /my/mysql/conf/vi /my/mysql/conf/mysqld.cnf character-set-server=utf8
5、重新运行容器
docker rm -f mysql # 删除原来的容器docker run --name mysql -p 3306:3306 -v /my/mysql/conf:/etc/mysql/mysql.conf.d/ -v /my/mysql/data:/var/lib/mysql -v /my/mysql/logs:/logs -e MYSQL_ROOT_PASSWORD=root -d mysql:5.7
6、访问
# 本地访问 设置远程访问权限
docker exec -it mysql /bin/bashmysql -u root -p
password: root
进入mysql中运行一下命令
use mysql;
GRANT ALL PRIVILEGES ON *.* TO ‘root‘@‘%‘ IDENTIFIED BY ‘root‘ WITH GRANT OPTION;
flush privileges;
# 远程访问
mysql -u root -p -h 宿主机地址