Centos7 docker mysql8.0.20

centos7 docker 安装mysql

为什么用docker安装

centos7 mysql非docker安装方式大概有三种:
编译安装MySQL
二进制方式安装MySQL
YUM方式安装MySQL

直接安装和docker安装的区别
1、docker安装快速,效率高;
2、docker隔离性好,可以安装无数个mysql实例,互相不干扰,只要映射主机端口不同即可;
3、占用资源少,MB级别,而服务器安装GB级别;
4、启动速度秒级,而服务器安装启动分钟级别;
5、性能接近原生,而服务器安装较低;
6、数据备份、迁移,docker更方便强大;
7、卸载管理更方便和干净,直接删除容器和镜像即可;
8、稳定性,只要保证docker环境没问题,mysql就没问题。

mysql安装步骤

访问 MySQL 镜像库地址

1、docker search mysql 命令来查看可用版本:
[root@localhost ~]# docker search mysql
在这里插入图片描述
2、拉取 MySQL 镜像
默认拉取最新的镜像
[root@localhost ~]# docker pull mysql
在这里插入图片描述
3、查看本地镜像
[root@localhost ~]# docker images mysql
在这里插入图片描述
4、创建用于挂载的目录
防止容器删除导致数据丢失

 [root@localhost local]# mkdir mysql
 #用于挂载mysql数据文件
 [root@localhost local]# mkdir mysql/data    		
 #用于挂载mysql配置文件 		
 [root@localhost local]# mkdir mysql/conf.d

在这里插入图片描述
5、开放端口

 检查防火墙状态
 [root@localhost ~]# firewall-cmd --state
 如果防火墙开启需要开放3306端口,否则无法正常连接数据库
 [root@localhost sysconfig]# firewall-cmd --zone=public --add-port=3306/tcp --permanent
 重启防火墙
 [root@localhost sysconfig]# firewall-cmd --reload

命令解析
–zone #作用域
–add-port=3306/tcp #添加端口,格式为:端口/通讯协议
–permanent #永久生效,没有此参数重启后失效

6、启动容器
[root@localhost mysql]# docker run --name mysql --privileged=true --restart always -p 3306:3306 -v /usr/local/mysql/data:/var/lib/mysql -v /usr/local/mysql/conf.d:/etc/mysql/conf.d -e MYSQL_ROOT_PASSWORD=123456 -d mysql
命令解析:
–restart always:开机启动
–privileged=true:提升容器内权限
-e MYSQL_ROOT_PASSWORD=”123456”:设置root的密码为123456
在这里插入图片描述
7、进入容器
[root@localhost mysql]# docker exec -it mysql mysql -uroot -p123456
在这里插入图片描述
查询数据库
mysql> show databases;
在这里插入图片描述
8、设置远程客户端登录
mysql> GRANT ALL ON . TO ‘root’@’%’;
在这里插入图片描述
mysql> ALTER USER ‘root’@’%’ IDENTIFIED WITH mysql_native_password BY ‘123456’;
在这里插入图片描述
刷新权限:
mysql> FLUSH PRIVILEGES;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值