• 前言
  • 版本问题
  • 操作步骤
    • 新建alias
    • 修改MySQL通知的配置
    • 重启minio服务
    • 对bucket开启通知
    • 测试是否成功

前言

找了很久,网上的教程都不能直接用,还是自己实现之后写一篇吧。
假设你已经开启了minio服务且能正常使用,这部分请自行百度。

版本问题

MinIO 要求 MySQL version 5.7.8 及以上。我使用的是8.0.22。
mc版本的影响是通知所用关键字表达方式不同。
在RELEASE.2020-04-10T03-34-42Z之前的用这一种方式。

host         (hostname)           MySQL server hostname (used only if `dsn_string` is empty)
port         (port)               MySQL server port (used only if `dsn_string` is empty)
username     (string)             database username (used only if `dsn_string` is empty)
password     (string)             database password (used only if `dsn_string` is empty)
database     (string)             database name (used only if `dsn_string` is empty)

在RELEASE.2020-04-10T03-34-42Z之后的用这二种方式。

dsn_string   (string)             <user>:<password>@tcp(<host>:<port>)/<database>

我使用的是RELEASE.2020-10-03T02-54-56Z。

操作步骤

新建alias

在cmd输入

mc alias set minio http://192.168.0.111:9000 minioadmin minioadmin

其中,minio是你自己为服务取的名字,http://192.168.0.111:9000是minio服务的地址。后面是minio服务的用户名和密码。
显示“Added ‘minio’ successfully.”

修改MySQL通知的配置

查询当前配置,在cmd输入:

mc admin config get minio notify_mysql

显示如下:

修改配置:

mc admin config set minio notify_mysql table=“yourtablename” dsn_string=“yourmysqlname:yourmysqlpassword@tcp(yourmysqlip:yourmysqlport)/yourdatabasename”

显示如下,提示需要重启minio服务:

重启minio服务

重启服务,发现报错,错误如下:
Error: Error 1071: Specified key was too long; max key length is 3072 bytes
需要把MySQL的database的Collation改成ascii_general_ci。在MySQL中输入:

ALTER DATABASE COLLATE=ascii_general_ci;

再次重启minio服务。
发现cmd里面多了一行arn:minio:sqs::_:mysql。

再次查询当前配置,在cmd输入:

mc admin config get minio notify_mysql

显示如下:

对bucket开启通知

在cmd输入:

# Create bucket named `images` in myminio
mc mb myminio/images
# Add notification configuration on the `images` bucket using the MySQL ARN. The --suffix argument filters events.
mc event add myminio/images arn:minio:sqs::myinstance:mysql --suffix .jpg
# Print out the notification configuration on the `images` bucket.
mc event list myminio/images

测试是否成功

往bucket放入一个文件:

mc cp test.txt minio\test

可以看到MySQL里面生成了一条记录:

参考:
https://zhuanlan.zhihu.com/p/203141334
https://docs.min.io/cn/minio-bucket-notification-guide.html

Minio的MySQL通知 实现全过程相关推荐

  1. MinIO存储桶通知指南 ​​​​​​​

    MinIO存储桶通知指南 存储桶(Bucket)如果发生改变,比如上传对象和删除对象,可以使用存储桶事件通知机制进行监控,并通过以下方式发布出去: Notification Targets AMQP ...

  2. Java连接并操纵MySQL数据库的全过程

    文章目录 一.安装MySQL 二.Navicat连接MySQL 三.Java连接MySQL (一).使用 JDBC 连接 MySQL 数据库. 1. 下载驱动包 2.解压 3.在IDEA中导入jar包 ...

  3. MySQL数据库环境使用全过程

    在使用MySQL之前,需要建立数据库的环境来创建数据表,首先我们需要安装该数据库环境,即MySQL. 1.下载MySQL MySQL的官方网站是http://www.mysql.org/,如图2-9所 ...

  4. MySQL彻底卸载全过程

    1.卸载面板中的数据库 2.删除目录C:\Program Files (x86)\MySQL. 3.清除注册表HKEYLOCAL_MACHINE\SYSTEM\ControlSet001\Servic ...

  5. MySQL 二进制安装全过程

    一.前言 介绍:业务环境安装 MySQL 不会使用 yum 直接安装,一般都会通过二进制来安装,今天就记录一下业务环境二进制安装 MySQL 过程. 环境:CentOS 7 安装:MySQL 5.7+ ...

  6. mysql服务端执行sql_服务器执行MySQL耗时问题解决全过程

    正文 大概过程 在测试环境Docker容器中,在跨进程调用服务的时候,A应用通过Dubbo调用B应用的RPC接口,发现B应用接口超时错误,接着通过debug和日志,发现具体耗时的地方在于一句简单SQL ...

  7. 数据库 MySQL (学习全过程)(B站动力节点杜老师)(DAY 1)

    数据库 MySQL (B站动力节点杜老师) Day one 删库跑路: 1.运行安装包 点击remove 2. 删除 program file 里的 mysql 3. 和 program date里的 ...

  8. 安装kubeflow过程中minio和mysql Pod一直是pending状态

    问题如图 查看详细 kubectl -n kubeflow describe pod minio-d56488484-5drv8 发现pvc没有绑定 解决: 查看pvc kubectl -n kube ...

  9. mysql 通知_mySql查询-系统公告发布接收人情况

    -- display_name NZ分部所有用户 SELECT user_code,display_name FROM scy_user WHERE ou_id=1627 AND is_deleted ...

最新文章

  1. 【PC工具】图片批量添加水印工具,绿色免安装工具软件
  2. python点击按钮浏览本地文件_Python button选取本地图片并显示的实例
  3. C++和C#编写调用COM组件
  4. android: 调用摄像头拍照
  5. Lodash常用用法总结
  6. flex 添加右键链接
  7. python自动化测试框架结构_基于Python的HTTP接口自动化测试框架实现
  8. mac上SVN简单几个命令
  9. C# ASP.NET MVC:使用Cookie记住账号密码
  10. OpenGL学习(二)用户与交互
  11. 联想G450 Linux wifi,联想g450无线网卡驱动,详细教您无线网卡安装教程
  12. js去除字符串头尾空格
  13. Android 之简易涂鸦板
  14. Unity 常见英文单词
  15. centos7.7 安装google浏览器
  16. 【附源码】计算机毕业设计JAVA学生公寓管理系统
  17. php riak,Riak的分布式数据库模型 - 分布式数据库相关理论 Part3
  18. iTOP-RK3568开发板Ubuntu系统修改dns
  19. POJ 1066 Treasure Hunt 解题报告
  20. 淘点点能否不孚众望扛起阿里O2O的大任?

热门文章

  1. 解决office2007每次打开提示向程序发送命令时出现错误
  2. Linux Bash Shell编程快速入门
  3. 商业版《隋唐演义》三:收购瓦岗寨
  4. Spring Boot CLI设置和HelloWorld示例
  5. linux设备模型的主要功能,第 14 章 Linux 设备模型
  6. mysql 格式化_mysql中格式化数字详解
  7. 【问题记录】 Linux分区磁盘占满,导致ssh登陆闪退
  8. asp.net单一登录
  9. Dockerfile 文件结构、docker镜像构建过程详细介绍
  10. js designMode contentEditable 编辑在线网页