Docker安装并使用Mysql的详细教程(实测可用!)

 更新时间:2023年01月18日 15:43:50   作者:REMLILI  
在日常的工作中经常会需要将数据存在服务器,经常用到的数据库是mysql,下面这篇文章主要给大家介绍了关于Docker安装并使用Mysql的详细教程,文中通过实例代码介绍的非常详细,需要的朋友可以参考下

一个容器=完整Linux

一、Docker安装Mysql

1、启动Docker

启动:sudo systemctl start docker
		service docker start
停止:systemctl stop docker
重启:systemctl restart docker

2、查询mysql

docker search mysql

3、安装mysql

1.默认拉取最新版本mysql

docker pull mysql

2.拉取指定版本mysql_5.7

sudo docker pull mysql:5.7

4、查看镜像

docker images

5、本地创建挂载目录-v

二、Docker启动\使用Mysql

1、启动mysql容器(创建镜像实例)

1.指定版本

sudo 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

2.最新版本

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:latest

3.命令含义:容器=完整Linux

		docker run:在docker中启动一个容器实例
		-d:该容器在后台运行
		-p 3306:3306:容器与主机映射端口为,主机3306,容器3306
		--name mysql:容器运行后的名称
		-v /mysqldata/mysql/log:/var/log/mysql:将容器/var/log/mysql目录下的数据,备份到主机的 /mysqldata/mysql/log目录下
		-v /mysqldata/mysql/data:/var/lib/mysql:将容器/var/lib/mysql目录下的数据,备份到主机的 /mysqldata/mysql/data目录下
		-v /mysqldata/mysql/conf:/etc/mysql:将容器/etc/mysql目录下的数据,备份到主机的 mysqldata/mysql/conf目录下
		-e MYSQL_ROOT_PASSWORD=root:设置当前mysql实例的密码为root
		mysql:5.7:需要运行的容器名称以及版本号

2、在var/lib/docker/containers/下查看容器

cd /var/lib/docker/containers/

3、查看mysql进程获取name——mysql名称

docker ps -a

4、进入mysql容器—并登陆mysql

格式:docker exec -it   mysql名称   bash

进入mysql容器操作台命令:docker exec -it mysql bash

登录mysql命令:mysql -u root -p

		输入密码:

5、开启远程访问权限

命令:use mysql;

命令:select host,user from user;

命令:ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '123456';

命令:flush privileges;

把root用户的密码改成 mysql_native_password 模式,即可远程连接


		#创建一个账号-admin,用来进行远程访问;
		CREATE USER 'admin'@'%' IDENTIFIED BY '123456';
		 
		 
		 赋予所有权限给之前创建的账号:admin
		GRANT ALL ON *.* TO 'admin'@'%';
		 
		 
		 确认使用密码{123456}登录此账号{admin}
		 密码尽量复杂,安全性更高。
		ALTER USER 'admin'@'%' IDENTIFIED WITH mysql_native_password BY '123456';

		 刷新权限
		FLUSH PRIVILEGES;

6、查看docker日志

命令:docker logs -f --tail 10 a4dac74d48f7

7、常用命令

查看进程

命令:docker ps -a

关闭docker中mysql容器

命令:docker stop mysqlserver

8、 重启docker中mysql重启

重启docker

命令:systemctl restart docker

关闭docker

命令:systemctl stop docker

自动重启容器

sudo docker update mysql --restart=always

9、移除原来的container ID(就是长长的那串数字)

docker rm + container ID 

10、退出容器

三、Mysql设置

1、进入容器:

命令:	docker exec -it mysql bash

命令:mysql -u root -p

2、定位容器位置:

命令:whereis mysql
显示:mysql: /usr/bin/mysql /usr/lib/mysql /etc/mysql /usr/share/mysql

3、退出容器:

exit

4、找到配置文件夹:一级一级的进入

命令:cd /mydata/
命令:cd mysql/
命令:cd conf/

5、创建配置文件:cnf

命令:vi my. cnf
命令:i

粘贴内容:
	[client]
	default-character-set=utf8
	[mysql]
	default-character-set=utf8
	[mysqld]
	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
	
按键:ESC
命令::wq

6、重启容器

命令:docker restart mysql
命令:docker exec -it mysql /bin/bash

7、进入文件夹

目录:cd /etc/mysql/
展示:ls
查看文件:cat my. cnf

四、Mysql外部连接

    IP:虚拟机IP地址——云主机地址
    端口:
    名称:
    密码:

总结

到此这篇关于Docker安装并使用Mysql的文章就介绍到这了,更多相关Docker安装使用Mysql内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Docker部署UI自动化测试环境的实现步骤

    Docker部署UI自动化测试环境的实现步骤

    本文主要介绍了Docker部署UI自动化测试环境的实现步骤,通过Docker可以快速创建、部署和测试脚本,提高测试效率,具有一定的参考价值,感兴趣的可以了解一下
    2023-08-08
  • SpringCloud基于Docker和Docker-Compose的项目部署过程

    SpringCloud基于Docker和Docker-Compose的项目部署过程

    本文介绍了如何卸载旧版本Docker、更新系统、安装Docker及其依赖,并设置国内镜像源以加快下载速度,详细说明了如何安装Docker Compose、配置镜像加速器,并展示了如何使用Docker Compose部署SpringCloud项目,提供了更新和重启容器的方法
    2024-10-10
  • 解决docker加载新的镜像后repository和tag名称都为none的问题

    解决docker加载新的镜像后repository和tag名称都为none的问题

    这篇文章主要介绍了解决docker加载新的镜像后repository和tag名称都为none的问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-11-11
  • docker部署rustdesk远程控制服务器的实现

    docker部署rustdesk远程控制服务器的实现

    RustDesk是一款体验优秀的远程控制软件,本文主要介绍了docker部署rustdesk远程控制服务器的实现,具有一定的参考价值,感兴趣的可以了
    2024-05-05
  • Docker安装RabbitMQ并安装延时队列插件

    Docker安装RabbitMQ并安装延时队列插件

    本文主要介绍了Docker安装RabbitMQ并安装延时队列插件,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2022-05-05
  • CentOS修改docker镜像存储位置并进行数据迁移的操作方法

    CentOS修改docker镜像存储位置并进行数据迁移的操作方法

    本文详细介绍了在CentOS上修改Docker镜像存储位置并进行数据迁移的步骤,包括停止Docker服务、创建新的存储目录、复制现有数据、修改Docker配置、重启Docker服务、验证配置、清理旧数据(可选)以及检查容器和镜像,感兴趣的朋友一起看看吧
    2025-01-01
  • docker上安装使用mysql镜像

    docker上安装使用mysql镜像

    本文主要给大家介绍了如何在docker中安装并运行MySQL镜像,属于个人尝试,这里总结下分享给大家,有需要的小伙伴可以参考下
    2017-02-02
  • 在Docker容器之间如何进行通信

    在Docker容器之间如何进行通信

    本文介绍了Docker网络模式,包括桥接网络、主机网络、容器网络和基于容器名称的通信,通过这些网络模式,容器之间可以方便地进行通信,实现跨网络通信
    2024-11-11
  • Docker Compose快速部署多容器服务实战的实例详解

    Docker Compose快速部署多容器服务实战的实例详解

    使用 Docker Compose 可以轻松、高效的管理容器,它是一个用于定义和运行多容器 Docker 的应用程序工具,本文给大家介绍Docker Compose快速部署多容器服务实战,感兴趣的朋友一起看看吧
    2022-02-02
  • docker常用命令解读之volume篇

    docker常用命令解读之volume篇

    这篇文章主要介绍了docker常用命令解读之volume篇说明,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-03-03

最新评论