经验分享基础 docker 内配置 mysql 数据库远程环境

Posted 极智视界

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了经验分享基础 docker 内配置 mysql 数据库远程环境相关的知识,希望对你有一定的参考价值。

  本文详细介绍了在基础 docker 内配置 mysql 数据库远程环境的方法。

1、拉取基础镜像

docker pull nvidia/cuda:10.2-devel-ubuntu18.04

2、启容器

sudo docker run -it -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 --gpus all --privileged --net=bridge --ipc=host --pid=host --name container_name -v /path/to/your/device:/path/to/your/host nvidia/cuda:10.2-devel-ubuntu18.04 /bin/bash

3、安装 mysql

apt update 

# 查询一下看用 apt 能直接安装什么版本的 mysql 
apt-cache madison mysql-server

  安装 mysql:5.7.35-0ubuntu0.18.04.1

apt install mysql-server=5.7.35-0ubuntu0.18.04.1

4、配置 mysql

4.1 更新用户密码

# 启动 mysql 服务 
service mysql start 

# 进入 mysql 
mysql -u root -p 

# 进入 mysql databases 
mysql> use mysql; 

# 查看 root 用户权限 
mysql>select host,user from user; 

# 把host修改成 “%”,这样其他ip可通过远程访问数据库 
mysql>update user set host='%' where user='root';

# 更新root用户密码 
mysql>ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '123456'; 

# 刷新权限 
flush privileges;

4.2 开放3306端口

  查询 mysql 端口:

mysql> SHOW GLOBAL VARIABLES LIKE 'PORT';

# 验证 3306 端口是否打开 
netstat -an|grep 3306

  若输出类似于如下,说明没有打开:

~$ netstat -an|grep 3306 
tcp    0    0 127.0.0.1:3306     0.0.0.0:*          LISTEN 
tcp    0    0 127.0.0.1:55496    127.0.0.1:306      TIME_WAIT

  开放 mysql 的 3306 端口。

su 
cd /etc/mysql/mysql.conf.d 

vim mysqld.cnf

  注释掉 bind-address:

  打开 port:

  保存退出,重启 mysql 服务:

service mysql restart

  好了,看看 3306 端口是否打开,还是如下命令:

netstat -an|grep 3306

  正常会是这样,如下就是可以了。

  至此,docker 内 mysql 环境配置完成。


5、远程连接验证

  可以用 Navicat 进行远程连接验证,可以参考《【经验分享】ubuntu 配置 mysql 数据库容器与 win10 远程可视化》。


  收工~



扫描下方二维码即可关注我的微信公众号【极智视界】,获取更多AI经验分享,让我们用极致+极客的心态来迎接AI !

以上是关于经验分享基础 docker 内配置 mysql 数据库远程环境的主要内容,如果未能解决你的问题,请参考以下文章

原创大叔经验分享(96)docker启动MySQL报错

走进JavaWeb技术世界16:极简配置的SpringBoot

基于Docker搭建大数据集群基础组件配置

谁说数据库不适合Docker?解读MySQL DB Mesh的创造性实践

经验分享创建 docker 容器后修改挂载目录的方法

经验分享ubuntu 配置 mysql 数据库容器与 win10 远程可视化