linux下用docker安装mysql及导入文件

目录

  • 1. 非root用户设置docker权限
  • 2. user账号安装mysql
  • 2. root账号打开防火墙
  • 3. 启动mysql容器
    • 3.1 在指定工作目录下建立文件夹
    • 3.2 配置文件
    • 3.3 开启mysql容器
  • 4. 进入容器
    • 4.1 通过容器进入mysql
    • 4.1 设置账号
    • 4.2 建立数据库
    • 4.3 导入文件
  • 5. windows连接数据库
  • 参考文件

1. 非root用户设置docker权限

# 1.使用root权限给user账户开权限
# (1)创建名为docker的一个用户组
sudo groupadd docker# 查看docker组的用户
cat /etc/group|grep docker# (2)非root用户加入刚创建用户组
sudo usermod -aG docker $USER其中,usermod是一个Linux系统命令,用于修改用户的属性和组关联;-aG是usermod命令的选项,其中-a表示追加(Append),-G表示指定用户所属的附加组;docker是要将用户添加到的用户组的名称;$USER是一个环境变量,表示当前用户的用户名。或用:
sudo gpasswd -a ithing docker# (3)切换当前会话的有效组
newgrp docker# (4) 重启docker服务
systemctl restart docker# 2.使用user账户测试是否可用
docker run hello-world

2. user账号安装mysql

# 安装docker
docker pull mysql:8.0.28# 查看镜像中是否存在
docker images

2. root账号打开防火墙

# 查看防火墙
systemctl status firewalld
# 查看3306端口状态
firewall-cmd --zone=public --query-port=3306/tcp
# 如果是no,表示关闭,打开3306端口
firewall-cmd --zone=public --add-port=3306/tcp --permanent
# 防火墙重载
firewall-cmd --reload
# 再次查看3306状态(yes)
firewall-cmd --zone=public --query-port=3306/tcp

3. 启动mysql容器

3.1 在指定工作目录下建立文件夹

mkdir -p mydata/mysql/log mydata/mysql/data mydata/mysql/conf mydata/mysql/database_input_file_dir

3.2 配置文件

  新建mydata/mysql/conf/my.cnf文件,我是从参考文件中摘取的,具体含义请导参考文件3中细读。

[client]
default-character-set=utf8mb4[mysql]
default-character-set=utf8mb4[mysqld]
init_connect="SET collation_connection = utf8mb4_unicode_ci"
init_connect="SET NAMES utf8mb4"
character-set-server=utf8mb4
collation-server=utf8mb4_unicode_ci
skip-character-set-client-handshake
skip-name-resolve

3.3 开启mysql容器

docker run -p 3306:3306 --name mysql \
--privileged=true \
-v /user_mount/user_mount/Pipeline/mydata/mysql/log:/var/log/mysql \
-v /user_mount/user_mount/Pipeline/mydata/mysql/data:/var/lib/mysql \
-v /user_mount/user_mount/Pipeline/mydata/mysql/conf:/etc/mysql \
-v /user_mount/user_mount/Pipeline/mydata/mysql/database_input_file_dir:/var/lib/mysql-files \
-v /etc/localtime:/etc/localtime \
--restart=always -e MYSQL_ROOT_PASSWORD=123456 -d mysql:8.0.28

4. 进入容器

# 查看Docker运行中的容器是否有mysql
docker ps # 常用命令,对现在的image进行停止、删除
docker stop fa0dc115171d
docker rm fa0dc115171d

4.1 通过容器进入mysql

# 进入Mysql容器内部
docker exec -it mysql /bin/bash# 进入mysql服务
root@aa22e995c23c:/# mysql -u root -p 

在这里插入图片描述

4.1 设置账号

  见参考文件5

4.2 建立数据库

  见参考文件5

4.3 导入文件

  实际文件目录:/disk_win/user/Database/mysql/database_input_file_dir
  sql语句中目录:/var/lib/mysql-files
  原因是在3.3中进行了镜像路径设置;
具体示例:

load data infile '/var/lib/mysql-files/a.csv' 
into table a character set utf8 
fields terminated by ',' optionally enclosed by '"' escaped by '"' 
lines terminated by '\n' IGNORE 1 LINES;

5. windows连接数据库

  见参考文件5

参考文件

(1) docker权限设置:让非root用户可以操作docker–》附带:linux新增用户添加root权限
(2) Docker 安装 Mysql 容器 (完整详细版)
(3) Docker实操:安装MySQL5.7详解(保姆级教程)
(4) docker安装mysql 8.0.20 版本 超详细教程
(5) Linux中mysql的安装、远程访问、基础操作、文件导入

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/760730.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【说好的情怀呢】

友情提示: 抄本篇文章答案之前,请务必提前下载好 反诈APP。 多年情怀粉,今日粉转黑.... 问题: Q1: 将附件中 ip_china.csv.zip文件加载为 Hive 内部表,保持格式与 csv header一致,表需要开启压缩 Q2: 将…

k8s系列之十四安装Istio

Istio 是一个开源的服务网格(Service Mesh),用于连接、管理和保护微服务。它提供了一组功能强大的工具,包括流量管理、安全性、监控和跟踪等,以帮助在微服务架构中更好地管理服务之间的通信。 一些主要的 Istio 功能包…

浅谈业务逻辑漏洞

1.业务逻辑漏洞:业务逻辑漏洞就是指攻击者利用业务/功能上的设计缺陷,获取敏感信息或破坏业务的完整性。一般出现在密码修改、越权访问、密码找回、交易支付金额等功能处。 逻辑漏洞的破坏方式并非是向程序添加破坏内容,而是利用逻辑处理不严密或代码问题或固有不足…

ubuntu内存不足,用Swap扩展增加虚拟内存

Linux增大Swap分区,可以增加虚拟内存,以解决电脑卡机,内存不足等问题 top可以查看cpu的使用情况 lscpu可以查看本机配置的cpu硬件情况 查看内存使用情况 free -h (下面显示"交换"或者Swap等字样说明系统已经启动了Swap&#xff…

GUROBI案例实战(六)——排产排程问题(2)

更多可参考:https://github.com/Gurobi/modeling-examples/blob/master/food_manufacturing/food_manufacture_1.ipynb 一、问题简介 (1) 某厂商生产一种香皂的原材料有植物油脂和非植物油脂,其中植物油脂有两种,非植物油脂有三种&#xff…

【Java - 框架 - SpringMVC】(01) SpringMVC框架的简单创建与使用,快速上手

"SpringMVC"框架的简单创建与使用,快速上手; 环境 Java版本"1.8.0_202";Spring Boot版本"2.5.9";Windows 11 专业版_22621.2428;IntelliJ IDEA 2021.1.3(Ultimate Edition)&#xff1…

Protobuf 的介绍与使用(入门级)

背景 在移动互联网时代,手机流量、电量是最为有限的资源,而移动端的即时通讯应用无疑必须得直面这两点。 解决流量过大的基本方法就是使用高度压缩的通信协议,而数据压缩后流量减小带来的自然结果也就是省电:因为大数据量的传输必…

提升效率!商务电子邮件在WorkPlace中如何高效运用?安全保障!

高效和安全的沟通是任何组织成功的核心。在我们关于电子邮件类型的系列文章的第二期中,我们将重点关注商业电子邮件在促进无缝交互中的关键作用。当你身处重要的工作场环境时,本系列的每篇文章都提供了电子邮件的不同维度的视角。 “2024年,全…

算法系列--递归

一.如何理解递归 递归对于初学者来说是一个非常抽象的概念,笔者在第一次学习时也是迷迷糊糊的(二叉树遍历),递归的代码看起来非常的简洁,优美,但是如何想出来递归的思路或者为什么能用递归这是初学者很难分析出来的 笔者在学习的过程中通过刷题,也总结出自己的一些经验,总结来…

C语言例3-39:赋值时类型转换可能出现错误的例子

进行数据类型转换时,需要注意以下几点: 强制类型转换获得的是一个所需类型的中间量,原来表达式的类型并不发生变化。例如(double)a只是将变量a的值转换成一个double型的中间量,但其数据类型并未转换为double型表达式计算过程中&a…

Java开发---上海得帆(一面)

面试感受 这是我的第一次面试,我感觉我这次面试的很差,很糟糕,十分的糟糕,万分的糟糕。第一次面试,面试了半个小时。我去真的好紧张,脑子里一篇空白。脑子空白还不是最惨的,最惨的是那个八股文…

游戏客户端开发

1、LOL里面用到的是什么同步机制? 2、网络不好的情况下人物会出现瞬移等情况,怎样避免? 3、游戏里面有没有涉及数据存储,如存档之类的?、 4、如果让你设计存档,会如何着手? 5、以二进制方式…

反光衣AI检测识别算法---豌豆云

工服反光衣穿戴AI检测识别算法是一项基于人工智能视觉智能分析的创新技术。 它通过使用现场摄像头对工地进行全天候、不间断的监测,旨在提高工地安全管理水平。 这个系统的核心功能是自动检测和识别潜在的危险行为,例如未穿戴工服、反光衣、安全带或未…

聊一聊基础

基础 1、面向对象编程是什么? 面向对象编程在解决问题的时候,会先抽象出对象,再使用对象去解决问题。 面向过程把解决问题的过程拆成一个个方法,通过一个个方法的执行解决问题。 面向对象编程有三大特性,继承、封装…

containerd管理命令ctr常用操作 —— 筑梦之路

Containerd ctr、crictl、nerdctl客户端命令——筑梦之路_crictl login-CSDN博客 镜像常用操作 1. 拉取镜像 ctr images pull docker.io/library/nginx:alpine 注意:containerd支持oci标准的镜像,所以可以直接使用docker官方或dockerfile构建的镜像 需…

RabbitMQ--04--Spring Cloud Stream(消息驱动)

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 1.Spring Cloud Stream1. 基本介绍https://spring.io/projects/spring-cloud-stream#overview 2.Spring Cloud Stream 解决的痛点问题3.设计思想Stream为什么可以统…

2024网络安全-自学笔记

前言 一、什么是网络安全 网络安全可以基于攻击和防御视角来分类,我们经常听到的 “红队”、“渗透测试” 等就是研究攻击技术,而“蓝队”、“安全运营”、“安全运维”则研究防御技术。 无论网络、Web、移动、桌面、云等哪个领域,都有攻与防…

新火种AI|国产手机抢滩“AI+折叠屏”赛道,行业洗牌大战就此开启?

作者:小岩 编辑:彩云 从2023年到2024年,随着新一波人工智能浪潮的加速,消费电子产品也迎来了全新的话题——AI。更重要的是,这场战争看似没有硝烟,但各大厂商都已经暗自角力了许久,特别是手机…

Java二阶知识点总结(八)Linux和Docker

Linux 1、常用命令: cat:查看文件内容cd:切换目录ifconfig或ip addr:用于查看网络接口的地址和参数pwd:显示当前目录的绝对路径ls/ll:查看当前目录下的所有文件touch:创建文件mkdir&#xff1…

Windows 11 鼠标右键可选择 cmd 命令行选项

** Windows 11 鼠标右键可选择 cmd 命令行选项 ** 在文件夹内打开命令行,只能使用 Windows 自带的 PowerShell , 作为一个 cmd 重度使用用户来说很是折磨,需要打开 cmd 然后切换盘符再 cd 。。。 现在咱们自己创建一个可以打开 cmd 的方法…