在win10中挂载文件,应该开启宿主主机与docker的磁盘共享。
注意在win10中开启后需要输入电脑的登陆用户名和密码,如果电脑没有设置密码的就先设置一个密码。
使用docker search mysql命令可以查看公共仓库中的mysql版本
这里使用的命令:docker pull mysql 将拉取默认的镜像,mysql版本是8.0+
对于数据库类的镜像一般都把数据挂载到宿主主机上持久化存储,不然重启或者宕机后数据将不复存在。
下载完镜像后我们在D盘创建一个mysql的挂载目录,并创建一个mysql的配置文件cnf.d
内容如下:
[mysqld]
# 表名大小写不敏感
lower_case_table_names=1
#server-id=1
# 数据目录
datadir=/var/lib/mysql
# socket文件路径
#socket=/var/lib/mysql/mysqlx.sock
#symbolic-links=0
# sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
[mysqld_safe]
log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid
然后使用下面命令启动:
docker run --name mysql --restart=always -p 3306:3306 -v D:\docker\mysql/conf.d -v D:\docker\mysql\data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=123456 -d mysql
该命令的解释是:
运行成功后使用Navicat连接将出现caching_sha2_password的错误,这是因为mysql8版本密码加密方式改变了。
使用一下命令重置密码加密方式即可
docker exec -it mysql bash
mysql --user=root --password
ALTER USER 'root' IDENTIFIED WITH mysql_native_password BY 'password';
声明:本博客原创内容,欢迎转发,转载请来源:www.likeinlove.com/info/79.html。