contos7 docker 并且安装 mysql
1:docker安装
https://www.runoob.com/docker/centos-docker-install.html
查看文档:很详细
2:docker安装mysql
1:下载mysql镜像
查看mysql版本
命令 docker search mysql
下载mysql最新镜像
命令 docker pull mysql:latest
2:启动mysql
docker run -itd --name mysql-test -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 mysql
-p 3306:3306 :映射容器服务的 3306 端口到宿主机的 3306 端口,外部主机可以直接通过 宿主机ip:3306 访问到 MySQL 的服 务。
MYSQL_ROOT_PASSWORD=123456:设置 MySQL 服务 root 用户的密码
3:开放3306端口
1:登录阿里云配置安全策略
2:xshell进入linux服务器 开放3306端口
CentOS7使用firewalld防火墙(7之前使用iptables),需要使用到的命令如下:
1) systemctl start firewalld:启动前可以先用systemctl status firewalld查看firewalld状态;
2) firewall-cmd --zone=public --add-port=8761/tcp --permanent:打开8761端口,其中端口号(8761)根据实际需要使用的端口决定;
3) firewall-cmd --reload:重启服务;
4) firewall-cmd --zone=public --list-ports:可以用来查看已打开的端口号;
5) firewall-cmd --zone=public --remove-port=8761/tcp --permanent:当不希望这个端口被打开时,则使用该命令删除;
Ps:如果使用的是阿里云的CentOS7服务器,则还需要额外在控制台管理处打开需要使用的端口。(如果想用阿里云服务器的25端口发邮件,还得在安全中心提交申请…)
重要:
远程连接docker会报错;以下操作
非root用户使用docker命令:将用户添加docker组,
gpasswd -a username docker
docker mysql 启动后无法远程连接:
docker run --name mysql01 -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 -d mysql:latest
启动后用navicat无法连接,错误如下:
解决办法:
docker exec -it mysql01 bash
mysql -u root -p
(1) 查看用户信息
select host,user,plugin,authentication_string from mysql.user;
+-----------+------------------+-----------------------+------------------------------------------------------------------------+
| host | user | plugin | authentication_string |
+-----------+------------------+-----------------------+------------------------------------------------------------------------+
| % | root | caching_sha2_password | $A$005$wu)k:T&: i%3_q-u=D2yi.Zt/nmvVUijtFm7hzFHK/UqC7W9RxMS9KHAFhh6 |
| localhost | mysql.infoschema | caching_sha2_password | $A$005$THISISACOMBINATIONOFINVALIDSALTANDPASSWORDTHATMUSTNEVERBRBEUSED |
| localhost | mysql.session | caching_sha2_password | $A$005$THISISACOMBINATIONOFINVALIDSALTANDPASSWORDTHATMUSTNEVERBRBEUSED |
| localhost | mysql.sys | caching_sha2_password | $A$005$THISISACOMBINATIONOFINVALIDSALTANDPASSWORDTHATMUSTNEVERBRBEUSED |
N;}J&alhost | root | caching_sha2_password | $A$005$
B5): L6^xTKlNIRYWKAdK2Mbn.G3LfJsDoVaZFDNRxo3MekXm98 |
+-----------+------------------+-----------------------+------------------------------------------------------------------------+
5 rows in set (0.01 sec)
mysql>
mysql> ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY 'root';
Query OK, 0 rows affected (0.02 sec)
---------------------
mysql> select host,user,plugin,authentication_string from mysql.user;
+-----------+------------------+-----------------------+------------------------------------------------------------------------+
| host | user | plugin | authentication_string |
+-----------+------------------+-----------------------+------------------------------------------------------------------------+
| % | root | mysql_native_password | *81F5E21E35407D884A6CD4A731AEBFB6AF209E1B |
| localhost | mysql.infoschema | caching_sha2_password | $A$005$THISISACOMBINATIONOFINVALIDSALTANDPASSWORDTHATMUSTNEVERBRBEUSED |
| localhost | mysql.session | caching_sha2_password | $A$005$THISISACOMBINATIONOFINVALIDSALTANDPASSWORDTHATMUSTNEVERBRBEUSED |
| localhost | mysql.sys | caching_sha2_password | $A$005$THISISACOMBINATIONOFINVALIDSALTANDPASSWORDTHATMUSTNEVERBRBEUSED |
N;}J&alhost | root | caching_sha2_password | $A$005$
B5): L6^xTKlNIRYWKAdK2Mbn.G3LfJsDoVaZFDNRxo3MekXm98 |
+-----------+------------------+-----------------------+------------------------------------------------------------------------+
5 rows in set (0.00 sec)
阿里云服务器配置后依然无法连接问题
配置安全规则
下一篇: umi搭建脚手架约定式路由使用技巧
推荐阅读
-
contos7 docker 并且安装 mysql
-
腾讯云服务器Centos7安装mysql数据库并且使用Navicat远程访问
-
docker 安装mysql、redis
-
记录一次阿里云服务器上docker下安装mysql无法远程连接的问题
-
Docker安装Mysql常用命令
-
linux定时备份docker安装的mysql数据库
-
Docker + MySql 安装过程中的那些坑!!!
-
Docker——Docker安装mysql5.7
-
Docker容器安装的mysql ERROR 1045 (28000): Access denied for user 'root'@'localhost'
-
Mac上将brew安装的MySql改用Docker执行操作过程