问题描述:

使用linux+docker搭建mysql服务。
执行语句:

docker run -p 3306:3306 --name mysql \
-v /mydata/mysql/log:/var/log/mysql \
-v /mydata/mysql/data:/var/lib/mysql \
-v /mydata/mysql/conf:/etc/mysql \
-e MYSQL_ROOT_PASSWORD=root \
-d mysql:5.7

报错如下:

Error response from daemon: driver failed programming external connectivity
on endpoint mysql (2c24e750d5dcdd67fda102cb4c0e32bf0dfe3c74b846aecc6cad299d0dc91b64):
Error starting userland proxy: listen tcp4 0.0.0.0:3306: bind: address already in use.

意思就是端口被占用。


解决方案:

当前端口3306被其他进程占用,两种解决方案:换端口或者kill占用该端口的进程

  • 第一种:杀死3306端口进程
netstat -tanlp # 查看所有已被占用端口和所在进程ID

kill 101427 # 杀死当前进程
netstat -tanlp # 占用3306端口的进程已被删除

重新执行运行mysql的命令即可。

docker run -p 3306:3306 --name mysql \
-v /mydata/mysql/log:/var/log/mysql \
-v /mydata/mysql/data:/var/lib/mysql \
-v /mydata/mysql/conf:/etc/mysql \
-e MYSQL_ROOT_PASSWORD=root \
-d mysql:5.7
  • 第二种:换端口号重新启动mysql

打开挂载到宿主机的配置文件

vi /mydata/mysql/conf/my.cnf

修改端口号
添加 port=3300

[client]
default-character-set=utf8[mysql]
default-character-set=utf8[mysqld]
port=3300
init_connect='SET collation_connection = utf8_unicode_ci'
init_connect='SET NAMES utf8'
character-set-server=utf8
collation-server=utf8_unicode_ci
skip-character-set-client-handshake
skip-name-resolve

重启mysql

# 需要先将之前没有启动成功的mysql删除掉
docker rm mysql
# 重新启动
docker run -p 3300:3300 --name mysql \
-v /mydata/mysql/log:/var/log/mysql \
-v /mydata/mysql/data:/var/lib/mysql \
-v /mydata/mysql/conf:/etc/mysql \
-e MYSQL_ROOT_PASSWORD=root \
-d mysql:5.7

最后别忘记更改mysql的连接权限将localhost改成%

# 进入mysql
docker exec -it mysql mysql -u [用户名] -p [密码]
# 选择mysql数据库
use mysql;
# 更改root(或其他不一定都是root)用户,host字段值改为 %
grant all privileges on *.* to 'root'@'%' identified by '你的密码' with grant option;
# 刷新
flush privileges;
# 查看是否更改成功
select host, user from user;
+-----------+---------------+
| host      | user          |
+-----------+---------------+
| %         | root          |
| localhost | mysql.session |
| localhost | mysql.sys     |
+-----------+---------------+
3 rows in set (0.00 sec)

消灭问题

Docker安装mysql:Error starting userland proxy: listen tcp4 0.0.0.0:3306: bind: address already in use相关推荐

  1. docker出现Error starting userland proxy: listen tcp4 0.0.0.0:3306: bind: address already in use的解决方法

    目录 1. 问题所示 2. 分析原理 3. 解决方法 1. 问题所示 出现如下问题 (base) gaokaoli@kkjz-ThinkStation-P330:~$ sudo docker star ...

  2. Error starting userland proxy: listen tcp4 0.0.0.0:8005: bind: address alrea

    Error starting userland proxy: listen tcp4 0.0.0.0:8005: bind: address alrea 上面的错误已经说的很清楚了,我们的proxy代 ...

  3. docker守护式安装tomcat(汤姆猫)报错:Error starting userland proxy: listen tcp 0.0.0.0:8888: bind: address alrea

    用docker安装tomcat的时候,运行镜像,安装tomcat容器出现报错 [root@localhost ~]# docker run -it -p 8888:8080 tomcat docker ...

  4. 服务器重启后发现docker-compose的nginx重启失败: Error starting userland proxy: listen tcp 0.0.0.0:80: bind: addres

    服务器重启后执行docker-compose up -d报错: Starting nginx ... php is up-to-date Starting nginx ... errorERROR: ...

  5. Error starting userland proxy: listen tcp 0.0.0.0:8080: bind: address already in use.

    文章目录 一.现象 二.解决方案 一.现象 [root@localhost app]# docker run -p 8080:8080 -p 9326:9326 --name eblog --link ...

  6. Error starting userland proxy: listen tcp 0.0.0.0:5601: bind: address already in use

    问题出现原因:5601端口被绑定 解决办法:

  7. Centos8安装Docker,使用Docker安装MySQL、Oracle并修改实例名

    centos8安装Docker 1.安装依赖 # 首先我们设置 Docker 仓库 yum install -y yum-utils device-mapper-persistent-data lvm ...

  8. [转]Docker学习之四:使用docker安装mysql

    本文转自:https://blog.csdn.net/qq_19348391/article/details/82998391 Docker学习之一:注册Docker Hub账号 Docker学习之二 ...

  9. Docker安装Mysql(docker-compose.yml)

    Docker安装Mysql(docker-compose.yml) 前置条件 请先安装Docker 创建docker-compose.yml文件 version: '2' services:db:im ...

  10. 群晖NAS下docker安装MySql

    群晖NAS下docker安装mysql 8.0.31 目前我使用的是在黑群晖 6.2DM 下的 docker 内刷入一个官方的 MySQL 版本是8.0.31 (推荐选择 Debian 的发行版, 因 ...

最新文章

  1. Matlab使用笔记
  2. 我的C++笔记(数据的共享与保护)
  3. 初识linux之文件管理
  4. 通过Java代码装配bean
  5. Spring boot自定义启动字符画(banner)
  6. 关于vue中Cannot read property 'length' of undefined 导致:数据不显示问题【自己经验参考】
  7. 用DirectX Audio和DirectShow播放声音和音乐(3)
  8. C++ 限定名称查找
  9. Enterprise Library 4.0 - May 2008 发布了
  10. MAC系统下jmeter安装教程
  11. 2012年第19周限时免费应用点评
  12. 本人常用软件(工具)
  13. 淘宝电商需求文档的书写
  14. java 判断网络类型_javaexcel判断类型
  15. Julia教程:Julia语言入门
  16. 愚公移山和加特林打僵尸(递归)
  17. 编写代码实现对多边形图案填充
  18. 看到一篇详细的关于Python之Numpy教程分享给和我一样在编程上的小白
  19. 【项目管理工具】Jira使用和配置
  20. Pixelmator Pro 教程,认识 Pixelmator Pro 界面

热门文章

  1. base scroll横向滚动_微信小程序实践:2.3 可滚动的容器组件之 scroll-view
  2. redis 模糊删除keys
  3. 稳定状态模型 (三):Volterra 模型
  4. 未来已来 云上安全SaaS化势不可挡
  5. 如何下载jQuery
  6. 文件系统错误故障排除
  7. 集集自助服务密码重置
  8. 计算机专业英语unit6,计算机专业英语郭敏 计算机专业英语Unit6
  9. web前端基础 html5+css3(七.PS切图与项目实战(学成在线))
  10. 黑帽SEO网站优化常用的14种技巧