Minio的MySQL通知 实现全过程
- 前言
- 版本问题
- 操作步骤
- 新建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通知 实现全过程相关推荐
- MinIO存储桶通知指南
MinIO存储桶通知指南 存储桶(Bucket)如果发生改变,比如上传对象和删除对象,可以使用存储桶事件通知机制进行监控,并通过以下方式发布出去: Notification Targets AMQP ...
- Java连接并操纵MySQL数据库的全过程
文章目录 一.安装MySQL 二.Navicat连接MySQL 三.Java连接MySQL (一).使用 JDBC 连接 MySQL 数据库. 1. 下载驱动包 2.解压 3.在IDEA中导入jar包 ...
- MySQL数据库环境使用全过程
在使用MySQL之前,需要建立数据库的环境来创建数据表,首先我们需要安装该数据库环境,即MySQL. 1.下载MySQL MySQL的官方网站是http://www.mysql.org/,如图2-9所 ...
- MySQL彻底卸载全过程
1.卸载面板中的数据库 2.删除目录C:\Program Files (x86)\MySQL. 3.清除注册表HKEYLOCAL_MACHINE\SYSTEM\ControlSet001\Servic ...
- MySQL 二进制安装全过程
一.前言 介绍:业务环境安装 MySQL 不会使用 yum 直接安装,一般都会通过二进制来安装,今天就记录一下业务环境二进制安装 MySQL 过程. 环境:CentOS 7 安装:MySQL 5.7+ ...
- mysql服务端执行sql_服务器执行MySQL耗时问题解决全过程
正文 大概过程 在测试环境Docker容器中,在跨进程调用服务的时候,A应用通过Dubbo调用B应用的RPC接口,发现B应用接口超时错误,接着通过debug和日志,发现具体耗时的地方在于一句简单SQL ...
- 数据库 MySQL (学习全过程)(B站动力节点杜老师)(DAY 1)
数据库 MySQL (B站动力节点杜老师) Day one 删库跑路: 1.运行安装包 点击remove 2. 删除 program file 里的 mysql 3. 和 program date里的 ...
- 安装kubeflow过程中minio和mysql Pod一直是pending状态
问题如图 查看详细 kubectl -n kubeflow describe pod minio-d56488484-5drv8 发现pvc没有绑定 解决: 查看pvc kubectl -n kube ...
- mysql 通知_mySql查询-系统公告发布接收人情况
-- display_name NZ分部所有用户 SELECT user_code,display_name FROM scy_user WHERE ou_id=1627 AND is_deleted ...
最新文章
- 【PC工具】图片批量添加水印工具,绿色免安装工具软件
- python点击按钮浏览本地文件_Python button选取本地图片并显示的实例
- C++和C#编写调用COM组件
- android: 调用摄像头拍照
- Lodash常用用法总结
- flex 添加右键链接
- python自动化测试框架结构_基于Python的HTTP接口自动化测试框架实现
- mac上SVN简单几个命令
- C# ASP.NET MVC:使用Cookie记住账号密码
- OpenGL学习(二)用户与交互
- 联想G450 Linux wifi,联想g450无线网卡驱动,详细教您无线网卡安装教程
- js去除字符串头尾空格
- Android 之简易涂鸦板
- Unity 常见英文单词
- centos7.7 安装google浏览器
- 【附源码】计算机毕业设计JAVA学生公寓管理系统
- php riak,Riak的分布式数据库模型 - 分布式数据库相关理论 Part3
- iTOP-RK3568开发板Ubuntu系统修改dns
- POJ 1066 Treasure Hunt 解题报告
- 淘点点能否不孚众望扛起阿里O2O的大任?