关联MySQL数据源
本文介绍如何创建外部存储,建立日志服务与MySQL数据库的关联。
前提条件
已采集数据到日志服务。具体操作,请参见数据采集。
已存储数据到MySQL数据库。
背景信息
日志服务外部存储功能支持日志服务与阿里云RDS MySQL数据库、在阿里云ECS上自建的MySQL数据库关联,您还可以将查询分析结果写入MySQL数据库中,便于进一步处理结果。创建外部MySQL存储的最佳实践,请参见关联Logstore与MySQL数据库进行查询分析。
操作步骤
设置白名单。
创建ExternalStore。
安装日志服务CLI。更多信息,请参见CLI概述。
创建配置文件/home/config.json。
在/home/config.json文件中添加如下脚本,并根据实际情况替换参数配置。
{ "externalStoreName":"sls_join_meta_store", "storeType":"rds-vpc", "parameter":{ "region":"cn-qingdao", "vpc-id":"vpc-m5eq4irc1pucp*******", "host":"localhost", "port":"3306", "username":"user", "password":"****", "db":"scmc", "table":"join_meta" } }
参数
说明
externalStoreName
ExternalStore名称,必须小写。
storeType
数据源类型,固定为rds-vpc。
region
地域。详细说明如下:
如果是RDS MySQL数据库,则配置region为RDS实例所在地域。
如果是专有网络下ECS上自建的MySQL数据库,则配置region为ECS实例所在地域。
重要RDS实例或ECS实例必须与日志服务Project处于同一地域。
vpc-id
VPC ID。详细说明如下:
如果是专有网络下的RDS MySQL数据库,则配置vpc-id为RDS实例所属专有网络的ID。
如果是专有网络下的ADB MySQL数据库,则配置vpc-id为ADB实例所属专有网络的ID。
如果是专有网络下ECS上自建的MySQL数据库,则配置vpc-id为ECS实例所属专有网络的ID。
如果数据库host可以通过公网访问,则vpc-id无需提供
host
数据库地址。详细说明如下:
如果是专有网络下的RDS MySQL数据库,则配置host为RDS实例的内网地址(内网域名或内网IP地址)。
如果是专有网络下的ADB MySQL数据库,则配置host为ADB实例的内网地址(内网域名或内网IP地址)。
如果是专有网络下ECS上自建的MySQL数据库,则配置host为ECS的私网IP地址。
如果数据库通过公网可以访问,则配置对应的公网域名或公网IP地址。
port
端口号。详细说明如下:
如果是RDS MySQL数据库,则配置port为RDS实例的端口号。
如果是专有网络下ECS上自建的MySQL数据库,则配置port为ECS上MySQL的服务端口。
username
数据库用户名。
password
数据库密码。
db
数据库。
table
数据库表。
创建ExternalStore。
其中project_name为日志服务Project名称,请根据实际情况替换。
aliyunlog log create_external_store --project_name="log-rds-demo" --config="file:///home/config.json"
相关操作
更新MySQL外部存储。
aliyunlog log update_external_store --project_name="log-rds-demo" --config="file:///home/config.json"
删除MySQL外部存储。
aliyunlog log delete_external_store --project_name="log-rds-demo" --store_name=sls_join_meta_store
获取RDS实例的VpcCloudInstanceId。
使用RDS实例所在的阿里云账号登录RDS控制台。
打开DescribeDBInstanceAttribute调试页面。
配置DBInstanceId,然后单击发起调用。
在返回结果中,获取VpcCloudInstanceId。