当前位置: 首页 > news >正文

How to install mysql 5.7 with podman in Ubuntu 24.04

How to install mysql 5.7 with podman in Ubuntu 24.04

概述

今天我们介绍一下如何在Ubuntu server 22.04以Podman方式安装。

配置卷

名称位置用途
mysql-5.7 conf/data/docker/mysql-5.7/conf/conf.dmysql-5.7配置目录
mysql-5.7 conf/data/docker/mysql-5.7/conf/mysql.conf.dmysql-5.7配置目录
mysql-5.7 data/data/docker/mysql5.7/datamysql-5.7数据目录
sudo mkdir -p /data
sudo chown ylzx:ylzx -R /data
mkdir -p /data/docker/mysql-5.7/conf/conf.d
mkdir -p /data/docker/mysql-5.7/conf/mysql.conf.d
mkdir -p /data/docker/gitlab/data

运行

考虑到mysql5.7官方镜像的特殊性,不能直接挂载本地目录做为卷,需要完成以下步骤以后才可以挂载上本地目录卷。

  • 步骤 1

运行一个不挂载卷的容器

podman run  --detach \
--restart always \
--publish 13306:3306 \
--name mysql-5.7 \
--volume /usr/share/zoneinfo/Asia/Shanghai:/etc/localtime \
--env MYSQL_ROOT_PASSWORD=Gah6kuP7ohfio4 \
mysql:5.7.44
  • 步骤 2

podman cp命令复制出容器中的目录到本地,命令如下:

podman cp mysql-5.7:/etc/mysql/conf.d /data/docker/mysql-5.7/conf/conf.d
podman cp mysql-5.7:/etc/mysql/mysql.conf.d /data/docker/mysql-5.7/conf/mysql.conf.d
  • 步骤3

挂载卷运行,命令如下

podman run  --detach \
--restart always \
--publish 13306:3306 \
--name mysql-5.7 \
--volume /data/docker/mysql-5.7/conf/conf.d:/etc/mysql/conf.d \
--volume /data/docker/mysql-5.7/conf/mysql.conf.d:/etc/mysql/mysql.conf.d \
--volume /data/docker/mysql-5.7/data:/var/lib/mysql \
--volume /usr/share/zoneinfo/Asia/Shanghai:/etc/localtime \
--env MYSQL_ROOT_PASSWORD=Gah6kuP7ohfio4 \
mysql:5.7.44

查看

lwk@qwfys:~$ podman ps -a
CONTAINER ID  IMAGE                              COMMAND          CREATED         STATUS                PORTS                                         NAMES
191b58ff003f  docker.io/gitlab/gitlab-ce:latest  /assets/wrapper  2 hours ago     Up 2 hours (healthy)  0.0.0.0:10022->22/tcp, 0.0.0.0:19000->80/tcp  gitlab
295b77ee2d0f  docker.io/library/mysql:5.7.44     mysqld           31 minutes ago  Up 31 minutes         0.0.0.0:13306->3306/tcp                       mysql-5.7
ylzx@scyl043:/data/docker/mysql-5.7/conf$ 

访问页面

经过上述安装以后,mysql就安装好了,我们可以直接使用了。

在没有mysql客户端的时候,我们也可以用docker容器做为客户端来验证一下,上述安装有没有成功。示例如下:

lwk@qwfys:~$ podman run -it --rm mysql:5.7.44 mysql \--host=192.168.0.4 \--port=13306 \--user=root \--password \--database=mysql
Enter password: 
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -AWelcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 6
Server version: 5.7.44 MySQL Community Server (GPL)Copyright (c) 2000, 2023, Oracle and/or its affiliates.Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| performance_schema |
| sys                |
+--------------------+
4 rows in set (0.00 sec)mysql> exit
Bye
lwk@qwfys:~$

spring boot项目中使用的话,可以用下述方式访问mysql 5.7数据库

spring:datasource:hikari:jdbc-url: jdbc:mysql://192.168.0.4:13306/mysql?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=false&serverTimezone=Asia/Shanghaiusername: rootpassword: Gah6kuP7ohfio4

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • CMake基本语法大全
  • c++同人小游戏之斗罗大陆4
  • 书生浦语实训营-InternVL 多模态模型部署微调实践
  • (最新)华为 2024 届秋招-硬件技术工程师-单板硬件开发—机试题—(共12套)(每套四十题)
  • Unity(2022.3.41LTS) - 脚本
  • react + ts + material-ui V5版本的table封装
  • 本地部署aniportrait
  • 【unity实战】使用新版输入系统Input System+Rigidbody实现第三人称人物控制器
  • 【2024 CCF编程能力等级认证(GESP)Python 】一级大纲
  • 【图像去噪】论文精读:Multi-level Wavelet-CNN for Image Restoration(MWCNN)
  • 在Supabase创建用户登录并获取token的操作实践
  • 图像尺寸测量仪的精度概念解析
  • 掌握SQL数据分割技巧:垂直与水平分割全解析
  • 学习关系型数据库:在Ubuntu和FreeBSD下安装firebird
  • elementui图标偶尔乱码问题
  • .pyc 想到的一些问题
  • Angular 响应式表单之下拉框
  • Docker下部署自己的LNMP工作环境
  • Github访问慢解决办法
  • Vue2.x学习三:事件处理生命周期钩子
  • 利用DataURL技术在网页上显示图片
  • 前端设计模式
  • 数据库写操作弃用“SELECT ... FOR UPDATE”解决方案
  • 我的zsh配置, 2019最新方案
  • 2017年360最后一道编程题
  • ​ssh-keyscan命令--Linux命令应用大词典729个命令解读
  • # Swust 12th acm 邀请赛# [ E ] 01 String [题解]
  • #### golang中【堆】的使用及底层 ####
  • #免费 苹果M系芯片Macbook电脑MacOS使用Bash脚本写入(读写)NTFS硬盘教程
  • $.ajax()参数及用法
  • $.ajax,axios,fetch三种ajax请求的区别
  • (1)常见O(n^2)排序算法解析
  • (12)Linux 常见的三种进程状态
  • (7) cmake 编译C++程序(二)
  • (Redis使用系列) SpirngBoot中关于Redis的值的各种方式的存储与取出 三
  • (力扣题库)跳跃游戏II(c++)
  • (四)Controller接口控制器详解(三)
  • (原創) 博客園正式支援VHDL語法著色功能 (SOC) (VHDL)
  • (正则)提取页面里的img标签
  • (转)IOS中获取各种文件的目录路径的方法
  • .NET MVC第五章、模型绑定获取表单数据
  • .net与java建立WebService再互相调用
  • .php结尾的域名,【php】php正则截取url中域名后的内容
  • .secret勒索病毒数据恢复|金蝶、用友、管家婆、OA、速达、ERP等软件数据库恢复
  • ??在JSP中,java和JavaScript如何交互?
  • [ C++ ] STL priority_queue(优先级队列)使用及其底层模拟实现,容器适配器,deque(双端队列)原理了解
  • [ C++ ] STL_stack(栈)queue(队列)使用及其重要接口模拟实现
  • [120_移动开发Android]008_android开发之Pull操作xml文件
  • [1204 寻找子串位置] 解题报告
  • [AIGC] Redis基础命令集详细介绍
  • [android] 请求码和结果码的作用
  • [BZOJ3223]文艺平衡树
  • [C#]无法获取源 https://api.nuge t.org/v3-index存储签名信息解决方法
  • [CSS]一文掌握
  • [FBCTF2019]RCEService1