Docker 部署 MariaDB 数据库 与 Adminer 数据库管理工具

文章目录

  • MariaDB
    • mariadb.cnf
    • 开启 binlog
  • Adminer
  • docker-compose.yml
  • Adminer 连接 MariaDB

MariaDB

MariaDB是一个流行的开源关系型数据库管理系统(RDBMS),它是MySQL的一个分支和替代品。

  • 官网:https://mariadb.com/
  • 镜像:https://hub.docker.com/_/mariadb
docker pull mariadb
  • 创建缩主机目录
mkdir mariadb && cd mariadb
mkdir data conf logs
  • 部署服务并拷贝 mariadb.cnf
docker run -d --name mariadb -e MARIADB_ROOT_PASSWORD="4NuMDwIzp05BdKp7Bdmf" mariadb
# 将 mariadb.cnf 配置复制出来
docker cp mariadb:/etc/mysql/mariadb.cnf ./

mariadb.cnf

[client-server]

port = 3306
socket = /run/mysqld/mysqld.sock

# 不再自动创建登录权限
sql_mode=NO_AUTO_CREATE_USER

# 生成日志
general_log=1
general_log_file=/var/log/mysql/mysql.log

# 无论是否超时,未被索引的记录也会记录下来
log_queries_not_using_indexes=1
# 全局开启慢查询功能
slow_query_log=1
# 慢查询阈值(秒),SQL 执行超过这个阈值将被记录在日志中
long_query_time=1
# 慢查询仅记录扫描行数大于此参数的 SQL
min_examined_row_limit=500
# 指定慢查询日志存储文件的地址和文件名
slow_query_log_file=/var/log/mysql/slow.log

# 取消 ONLY_FULL_GROUP_BY
sql_mode='STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION'
# 开启定时事件
event_scheduler=1
# 表名大小写不敏感
lower_case_table_names=1
# 设置字符集
character_set_server=utf8mb4
collation_server=utf8mb4_bin

# 默认使用的存储引擎
default_storage_engine=InnoDB

开启 binlog

[client-server]
# binlog功能
log_bin=/var/lib/mysql/mysql-bin
# binlog 文件格式
binlog_format=ROW
# 表无论有没有主键约束或者唯一约束binlog都会记录所有前后镜像
binlog_row_image=FULL
# binlog 文件保留时间7天(默认0天)
expire_logs_days=7
# binlog 单个文件的最大值大小(默认1G)
max_binlog_size=512m
# 开启 binlog 后需要创建 function 或 procedure 时要开启
log_bin_trust_function_creators=1
# 服务id,以区分主库和备库
server-id=1

Adminer

Adminer是一个轻量级的开源数据库管理工具,设计用于管理MySQL、MariaDB、SQLite、PostgreSQL等多种关系型数据库。

  • 官网:https://www.adminer.org/
  • 插件:https://www.adminer.org/en/plugins/
  • 镜像:https://hub.docker.com/_/adminer
docker pull adminer

docker-compose.yml

  • 创建缩主机目录
mkdir mariadb && cd mariadb
mkdir data conf logs
services:
  mariadb:
    image: mariadb
    container_name: mariadb
    restart: always
    ports:
      - 3306:3306
    environment:
      MARIADB_ROOT_PASSWORD: "4NuMDwIzp05BdKp7Bdmf"
      MARIADB_DATABASE: "demo"
      MARIADB_USER: "test"
      MARIADB_PASSWORD: "mariadb123456"
    volumes:
      - /etc/localtime:/etc/localtime
      - ./mariadb/data:/var/lib/mysql
      - ./mariadb/conf:/etc/mysql/conf.d
      - ./mariadb/logs:/var/log/mysql
  adminer:
    image: adminer
    container_name: adminer
    restart: always
    ports:
      - 8080:8080
    depends_on:
      - mariadb

Adminer 连接 MariaDB

  • http://localhost:8080/

  • 支持的数据库

在这里插入图片描述

  • 连接 MariaDB
    在这里插入图片描述
  • 登录成功
    在这里插入图片描述

注意: 服务器不要填 127.0.0.1,要填缩主机IP地址,否则连接不上。

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

GPU算力是什么,哪些行业需要用到GPU算力?

近两年,计算能力已成为推动各行各业发展的关键因素。而GPU(图形处理器)算力,作为现代计算技术的重要分支,正逐渐在多个领域展现出其强大的潜力和价值。尚云将简要介绍GPU算力的定义和基本原理,并探讨其在哪…

对于CDA一级考试该咋准备??!

一、了解考试内容和结构 CDA一级考试主要涉及的内容包括:数据分析概述与职业操守、数据结构、数据库基础与数据模型、数据可视化分析与报表制作、Power BI应用、业务数据分析与报告编写等。 CDA Level Ⅰ 认证考试大纲:https://edu.cda.cn/group/4/thread/174335 …

从架构设计的角度分析ios自带网络库和AFNetworking

总结(先说明文章分析出的一些‘认知’) 从本文中,我们可以总结出一些框架设计上的“认知”: 对于通用的常规配置信息方面的设计,我们可以通过定义一个“类似于NSURLSessionConfiguration、NSURLRequest”的类来完成设…

Python | Leetcode Python题解之第203题移除链表元素

题目: 题解: # Definition for singly-linked list. # class ListNode: # def __init__(self, val0, nextNone): # self.val val # self.next next class Solution:def removeElements(self, head: ListNode, val: int) -> Li…

ArkTS自定义组件

一、自定义组件基本结构 // 定义自定义组件 ButtonCom.ets Component export struct BtnCom{State msg: string "按钮";build() {Row(){Text(this.msg).onClick(() > {this.msg "测试"})}} } // 引入自定义组件 import {BtnCom} from "./Butto…

[Go Web] Kratos 使用的简单总结

文章目录 1.Kratos 简介2.传输协议3.日志4.错误处理5.配置管理6.wire 1.Kratos 简介 Kratos并不绑定于特定的基础设施,不限定于某种注册中心,或数据库ORM等,所以您可以十分轻松地将任意库集成进项目里,与Kratos共同运作。 API -&…

正版软件 | R-Drive Image:数据安全守护者,您的智能备份专家

在数字化时代,数据安全的重要性不言而喻。R-Drive Image 是一款功能强大的备份和恢复软件,为您提供了全面的解决方案,确保您的数据安全无忧。 精确备份,全面保护 R-Drive Image 能够创建硬盘驱动器的逐字节副本,无论是…

RabbitMQ 的经典问题

文章目录 前言一、防止消息丢失1.1 ConfirmCallback/ReturnCallback1.2 持久化1.3 消费者确认消息 二、防止重复消费三、处理消息堆积四、有序消费消息五、实现延时队列六、小结推荐阅读 前言 当设计和运维消息队列系统时,如 RabbitMQ,有几个关键问题需…

机器人控制系列教程之控制理论概述

经典控制理论 经典控制理论主要研究线性定常系统。所谓线性控制系统是指系统中各组成环节或元件的状态由线性微分方程描述的控制系统。如果描述该线性系统的微分方程系数是常数,则称为线性定常系统。描述自动控制系统输入量、输出量和内部量之间关系的数学表达式称为系统的数学…

夏令营1期-对话分角色要素提取挑战赛-第①次打卡

零基础入门大模型技术竞赛 简介: 本次学习是 Datawhale 2024 年 AI 夏令营第一期,学习活动基于讯飞开放平台“基于星火大模型的群聊对话分角色要素提取挑战赛”开展实践学习。 适合想 入门并实践大模型 API 开发、了解如何微调大模型的学习者参与 快来…

【RNN练习】LSTM-火灾温度预测

🍨 本文为🔗365天深度学习训练营 中的学习记录博客🍖 原作者:K同学啊 前期准备工作 import torch.nn.functional as F import numpy as np import pandas as pd import torch from torch import nn1. 导入数据 data pd.read_cs…

[Leetcode刷题] - 栅栏涂漆DP类问题

题目描述 这一类题目通常会问给定一组房子n和一组染料k去涂漆,并且会加入限制条件比如:某种颜色只能使用1次,相相邻房子不能涂同一种颜色,或者最多不能超过连续3个房子涂想通过颜色等等,让我们列举所有可能性总和&…

如何评估CRM客户系统的功能是否满足助贷机构的需求?

评估 CRM 客户系统的功能是否满足助贷机构的需求,可以从以下几个方面入手: 1. 客户信息管理 - 检查系统能否全面、准确地记录客户的基本信息,如个人身份、财务状况、贷款需求等。 - 确认是否支持多维度的客户分类和标签功能,以…

STM32第七课:KQM6600空气质量传感器

文章目录 需求一、KQM6600模块及接线方法二、模块配置流程1.环境2.配置时钟和IO3.配置串口初始化,使能以及中断4.中断函数 三、数据处理四、关键代码总结 需求 能够在串口实时显示当前的VOC(挥发性有机化合物),甲醛和Co2浓度。 …

css 流动边框

一、背景流动边框 实现原理&#xff1a; 用背景进行旋转&#xff0c;超出我们想显示的范围则hidden&#xff0c;就有以上的效果&#xff0c;可以用after或者before元素来实现也可以。 <!DOCTYPE html> <html lang"en"><head><meta charset&qu…

【开发环境】MacBook M2安装git并拉取gitlab项目,解决gitlab出现Access Token使用无效的方法

文章目录 安装Homebrew安装git打开IDEA配置git打开IDEA拉取项目 安装Homebrew /bin/zsh -c "$(curl -fsSL https://gitee.com/cunkai/HomebrewCN/raw/master/Homebrew.sh)"在iTerm等命令行工具打开后&#xff0c;输入上面的命令 之后根据中文提示完成Homebrew的下载…

web项目打包成可以离线跑的exe软件

目录 引言打开PyCharm安装依赖创建 Web 应用运行应用程序打包成可执行文件结语注意事项 引言 在开发桌面应用程序时&#xff0c;我们经常需要将网页集成到应用程序中。Python 提供了多种方法来实现这一目标&#xff0c;其中 pywebview 是一个轻量级的库&#xff0c;它允许我们…

PyScript:在浏览器中释放Python的强大

PyScript&#xff1a;Python代码&#xff0c;直接在网页上运行。- 精选真开源&#xff0c;释放新价值。 概览 PyScript是一个创新的框架&#xff0c;它打破了传统编程环境的界限&#xff0c;允许开发者直接在浏览器中使用Python语言来创建丰富的网络应用。结合了HTML界面、Pyo…

把飞书云文档变成HTML邮件:问题挑战与解决历程

一、背景 云文档转HTML邮件 基于公司内部的飞书办公套件&#xff0c;早在去年6月&#xff0c;我们就建设了将飞书云文档转译成HTML邮件的能力&#xff0c;方便同学们在编写邮件文档和发送邮件时&#xff0c;都能有较好的体验和较高的效率。 当下问题 要被邮件客户端识别&am…

【蓝桥杯省赛真题46】python数字币统计 中小学青少年组蓝桥杯比赛 算法思维python编程省赛真题解析

目录 python数字币统计 一、题目要求 1、编程实现 2、输入输出 二、算法分析 三、程序编写 四、程序说明 五、运行结果 六、考点分析 七、 推荐资料 1、蓝桥杯比赛 2、考级资料 3、其它资料 python数字币统计 第十四届蓝桥杯青少年组python比赛省赛真题 一、题目…