docker安装mysql

使用的虚拟机安装的docker,然后用xshell连接。。。。

这里主要记录mysql安装以及本地挂载的问题,安装docker及其他就有时间再记录

 

 

安装mysql

docker pull mysql:5.7

安装完成如下:

因为是挂载到本地,使用的window系统,那么在本地创建目录,如图

 

 E:\DockerVolumes\mysql5.7文件下新建三个文件夹,其中conf下加入my.ini设置乱码等

[mysqld]

# 设置3306端口
port=3306
# 设置mysql的安装目录
#basedir=D:\mysql\mysql-8.0.19-winx64
# 设置mysql数据库的数据的存放目录
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
symbolic-links=0
lower_case_table_names=1
character-set-server = utf8
# 允许最大连接数
max_connections=200
# 允许连接失败的次数。这是为了防止有人从该主机试图攻击数据库系统
max_connect_errors=10
# 服务端使用的字符集默认为UTF8
character-set-server=utf8
# 创建新表时将使用的默认存储引擎
default-storage-engine=INNODB
# 默认使用“mysql_native_password”插件认证
default_authentication_plugin=mysql_native_password
[mysql]
# 设置mysql客户端默认字符集
default-character-set=utf8
[client]
# 设置mysql客户端连接服务端时默认使用的端口
port=3306
default-character-set=utf8

然后就是创建并启动mysql,首先是window下执行:

docker run -itd --name="mysql" -p 3306:3306 -v /G/DockerVolumes/mysql5.7/conf/:/etc/mysql/conf.d -v /G/DockerVolumes/mysql5.7/data:/var/lib/mysql -v /G/DockerVolumes/mysql5.7/logs:/var/log -eMYSQL_ROOT_PASSWORD="123456"  mysql:5.7

注:这里需要注意,widow文件路径不能使用E:\DockerVolumes\mysql5.7\conf这种形式,会报docker: Error response from daemon: invalid mode: /etc/mysql/conf.d.错误。切记!

 

 

liunx下,需要进入到新创建的挂载目录下,执行

docker run -itd --name="mysql" -p 3306:3306 -v $PWD/conf/:/etc/mysql/conf.d -v $PWD/data:/var/lib/mysql -v $PWD/logs:/var/log -eMYSQL_ROOT_PASSWORD="mysql"  mysql:5.7

部分命令注解:

docker run:创建并启动应用
-i:开启容器的标准输入STDIN
-t:容器分配伪终端,用于再终端登录容器
-d:后台运行容器
–name:容器名称
-p3307:3306:打开容器的3306端口并且映射到本机的3307端口
${'pwd'}/$PWD: 获取当前目录
-vPWD/conf/:/etc/mysql/conf.d , 挂 载 ( PWD/conf/:/etc/mysql/conf.d,挂载(PWD/conf/:/etc/mysql/conf.d,挂载(PWD)当前目录下的conf目录到容器的/etc/mysql/conf.d目录
vP W D / d a t a : / v a r / l i b / m y s q l , 挂 载 ( PWD/data:/var/lib/mysql,挂载(PWD/data:/var/lib/mysql,挂载(PWD)当前目录下的data目录到容器的/var/lib/mysql目录
-vP W D / l o g s : / v a r / l o g , 挂 载 ( PWD/logs:/var/log,挂载(PWD/logs:/var/log,挂载(PWD)当前目录下的logs目录到容器的/var/log/目录
-eMYSQL_ROOT_PASSWORD=“123456”,增加环境变量MYSQL_ROOT_PASSWORD,mysql容器创建并启动时,设置mysql的登录密码
mysql:5.7,要创建并启动容器的mysql镜像,也可以是自己的镜像 windwos下挂载目录卷需要写全局路径

创建成功

测试,进入容器终端测试mysql

docker exec -it 容器id /bin/bash或bash

 查看容器id命令:

docker ps

如图:

 

docker container inspect命令查看容器的详细信息

 

进入mysql,---》执行mysql -uroot -p命令后输入密码,这里是123456,

 

 授权:

GRANT ALL ON *.* TO 'root'@'%';

刷新权限:

flush privileges;

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值