集合集合,新的5分钟他来咯。🎉
这期是在阿里云百炼上怎么实现5分钟解锁数据分析与可视化能力呢?
就现在,看过来⛳
🧮 在阿里云百炼,通过自定义MCP部署MySQL的MCP服务,轻松查询和管理数据库中的数据,助您快速洞察数据背后的规律,赋能业务决策!
本文以碳排放数据库为例,详细介绍在阿里云百炼平台如何结合MySQL的MCP实现高效的数据分析与可视化能力,并通过QuickChart等可视化工具将复杂的数据转化为直观的图表。
1、先拥有一个可公网访问的MySQL数据库,如没有,可参考本案例中,先注册一个阿里云MySQL数据库。
2、通过自定义MCP的方式部署MySQL的MCP。
3、构建智能体,引用MySQL的MCP。
4、结合图表等信息来显示对应的MySQL数据。
1. 拥有公网访问MySQL数据库
本文以云数据库 RDS MySQL版为例,先构建一个MySQL,并存入一些测试数据。如您已有数据库,可直接跳到第二步,构建自定义MCP。
1、登录云数据库 RDS MySQL官网,选择免费试用或点击购买。
2、开通成功以后,我们点击管理控制台,等数据库创建成功。
3、在账号管理当中创建一个新的账号,设置账号密码登信息。
4、创建新的数据库
5、设置当前数据库在外网是可以访问到的,点击开通外网地址。
6、复制外网的MySQL地址,便于后期在MCP当中配置。
2. 自定义MySQL MCP
1、在阿里云百炼中创建自定义mysql-mcp服务
操作路径是:应用 👉 MCP管理 👉 创建MCP服务 👉 选择npx安装方式, 填写安装代码 👉 提交部署。
{ "mcpServers": { "mysql": { "command": "npx", "args": [ "mysql-mcp-server" ], "env": { "MYSQL_HOST": "rm-***************.mysql.rds.aliyuncs.com", "MYSQL_PORT": "3306", "MYSQL_USER": "zh*****", "MYSQL_PASSWORD": "zh**********", "MYSQL_DATABASE": "mcp_test" } } } }
MYSQL_HOST:对应的是刚刚创建数据库复制的外网地址
MYSQL_PORT:为数据库的端口号,默认端口号为3306,如果您修改过端口号请按照实际设置
MYSQL_USER:上述创建的用户名
MYSQL_PASSWORD:是上述设置用户名的密码
MYSQL_DATABASE:为数据库名称,在连接的时候一定要创建对应的数据库,所有操作都是在这个数据库当中完成的
2、部署成功以后,我们打开对应的MCP服务,测试工具。
分别介绍一下这几个工具的作用:
list_databases:查看所有数据库。
list_tables:查看指定数据库当中的所有表,输入:information_schema。
describe_table:用于获取表(table)的详细信息,输入:INNODB_CMP,information_schema。
execute_query:执行只读 SQL 查询的功能或方法。
输入:select * from INNODB_CMP,information_schema。
3. 在智能体当中引入MySQL MCP
1、应用管理中新建智能体,选择模型,如qwen-max。
2、选择刚刚创建的自定mysql-mcp的MCP服务。
3、然后选择QuickChart的MCP服务,如没开通Quick Chart,可在MCP广场或者右侧菜单中直接选择开通。
4. 准备数据(如有数据库可跳过该步骤)
1、在新建的mcp_test库当中导入数据,运行下面的SQL语句
我们以这份公开的数据库为例,2021年北京碳排放清单数据,来源于 中国碳核算数据库(CEADs)的公开数据
SET NAMES utf8mb4; SET FOREIGN_KEY_CHECKS = 0; -- ---------------------------- -- Table structure for beijing2021 -- ---------------------------- DROP TABLE IF EXISTS `beijing2021`; CREATE TABLE `beijing2021` ( `Emission_Inventory` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL, `Raw_Coal` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL, `CleanedCoal` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL, `Other_Washed_Coal` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL, `Briquettes` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL, `Coke` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL, `Coke_Oven_Gas` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL, `Other_Gas` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL, `Other_Coking_Products` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL, `Crude_Oil` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL, `Gasoline` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL, `Kerosene` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL, `Diesel_Oil` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL, `Fuel_Oil` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL, `LPG` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL, `Refinery_Gas` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL, `Other_Petroleum_Products` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL, `Natural_Gas` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL, `Scope_2_Heat` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL, `Scope_2_Electricity` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL, `Other_Energy` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL, `Process` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL, `Scope_1_Total` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL ) ENGINE = InnoDB AUTO_INCREMENT = 51 CHARACTER SET = utf8mb3 COLLATE = utf8mb3_general_ci ROW_FORMAT = Dynamic; -- ---------------------------- -- Records of beijing2021 -- ---------------------------- INSERT INTO `beijing2021` VALUES ('unit', 'Mt CO2', 'Mt CO2', 'Mt CO2', 'Mt CO2', 'Mt CO2', 'Mt CO2', 'Mt CO2', 'Mt CO2', 'Mt CO2', 'Mt CO2', 'Mt CO2', 'Mt CO2', 'Mt CO2', 'Mt CO2', 'Mt CO2', 'Mt CO2', 'Mt CO2', 'Mt CO2', 'Mt CO2', 'Mt CO2', 'Mt CO2', 'Mt CO2'); INSERT INTO `beijing2021` VALUES (NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL); INSERT INTO `beijing2021` VALUES ('TotalEmissions', '2.00219847443411', '0', '0', '0.178065160549272', '0.00287658904128091', '0', '0', '0', '0', '14.0492587861176', '15.0628126027991', '4.04269383183075', '0.019326756197559', '1.30650821092116', '2.14647396026786', '0.329403244547503', '39.9907722431506', '0', '0', '0', '0.7500386', '79.8804284598569'); INSERT INTO `beijing2021` VALUES ('Farming, Forestry, Animal Husbandry, Fishery and Water Conservancy', '0.0279480581772554', '0', '0', '0', '0', '0', '0', '0', '0', '0.057656896045355', '0', '0.0522855481426033', '0', '0.00156543039889907', '0', '0', '0.00216072899519941', '0', '0', '0', '0', '0.141616661759312'); INSERT INTO `beijing2021` VALUES ('Coal Mining and Dressing', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0'); INSERT INTO `beijing2021` VALUES ('Petroleum and Natural Gas Extraction', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0.0027026631864278', '0', '0', '0', '0', '0.0027026631864278'); INSERT INTO `beijing2021` VALUES ('Ferrous Metals Mining and Dressing', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0.000292674599215', '0', '0.000297999021176722', '0', '0', '0.00277069594341419', '0', '0', '0', '0', '0', '0', '0.00336136956380591'); INSERT INTO `beijing2021` VALUES ('Nonferrous Metals Mining and Dressing', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0'); INSERT INTO `beijing2021` VALUES ('Nonmetal Minerals Mining and Dressing', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0'); INSERT INTO `beijing2021` VALUES ('Other Minerals Mining and Dressing', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0.000878023797645', '0', '0.00387398727529739', '0', '0', '0.00831208783024257', '0', '0', '0', '0', '0', '0', '0.013064098903185'); INSERT INTO `beijing2021` VALUES ('Logging and Transport of Wood and Bamboo', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0'); INSERT INTO `beijing2021` VALUES ('Food Processing', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0.0058534919843', '0', '0.00983396769883183', '0', '0.000246801615228651', '0.0554139188682838', '0', '0.00738727937623598', '0', '0', '0', '0', '0.0787354595428803'); INSERT INTO `beijing2021` VALUES ('Food Production', '0.000216621944963924', '0', '0', '0', '0.00000130730278189462', '0', '0', '0', '0', '0.006731515781945', '0', '0.00864197161412494', '0', '0.000740404845685953', '0.0637260066985264', '0', '0.0127926057490916', '0', '0', '0', '0', '0.0928504339371197'); INSERT INTO `beijing2021` VALUES ('Beverage Production', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0.003804769789795', '0', '0.00297999021176722', '0', '0.000246801615228651', '0.0360190472643845', '0', '0.0158556240270431', '0', '0', '0', '0', '0.0589062329082184'); INSERT INTO `beijing2021` VALUES ('Tobacco Processing', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0.000720710183047412', '0', '0', '0', '0', '0.000720710183047412'); INSERT INTO `beijing2021` VALUES ('Textile Industry', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0.000878023797645', '0', '0.000297999021176722', '0', '0', '0.00831208783024257', '0', '0.000180177545761853', '0', '0', '0', '0', '0.00966828819482615'); INSERT INTO `beijing2021` VALUES ('Garments and Other Fiber Products', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0.00526814278587', '0', '0.000595998042353444', '0', '0', '0.0498725269814554', '0', '0.00198195300338038', '0', '0', '0', '0', '0.0577186208130593'); INSERT INTO `beijing2021` VALUES ('Leather, Furs, Down and Related Products', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0.00058534919843', '0', '0', '0', '0', '0.00554139188682838', '0', '0', '0', '0', '0', '0', '0.00612674108525838'); INSERT INTO `beijing2021` VALUES ('Timber Processing, Bamboo, Cane, Palm Fiber & Straw Products', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0.00175604759529', '0', '0.000595998042353444', '0', '0', '0.0166241756604851', '0', '0', '0', '0', '0', '0', '0.0189762212981286'); INSERT INTO `beijing2021` VALUES ('Furniture Manufacturing', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0.00526814278587', '0', '0.000595998042353444', '0', '0.000246801615228651', '0.0498725269814554', '0', '0.000720710183047412', '0', '0', '0', '0', '0.0567041796079549'); INSERT INTO `beijing2021` VALUES ('Papermaking and Paper Products', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0.00409744438901', '0', '0.00208599314823705', '0', '0', '0.0387897432077987', '0', '0.00252248564066594', '0', '0', '0', '0', '0.0474956663857117'); INSERT INTO `beijing2021` VALUES ('Printing and Record Medium Reproduction', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0.009658261774095', '0', '0.00417198629647411', '0', '0.000246801615228651', '0.0914329661326683', '0', '0.00324319582371336', '0', '0', '0', '0', '0.108753211642179'); INSERT INTO `beijing2021` VALUES ('Cultural, Educational and Sports Articles', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0.001463372996075', '0', '0.000297999021176722', '0', '0.000246801615228651', '0.013853479717071', '0', '0.000360355091523706', '0', '0', '0', '0', '0.016222008441075'); INSERT INTO `beijing2021` VALUES ('Petroleum Processing and Coking', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0.00058534919843', '0', '0.000595998042353444', '0', '0.661921932043242', '0.00554139188682838', '0', '0.0396390600676077', '0', '0', '0', '0', '0.708283731238461'); INSERT INTO `beijing2021` VALUES ('Raw Chemical Materials and Chemical Products', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0.009072912575665', '0', '0.0080459735717715', '0', '0.000740404845685953', '0.0459387476859707', '0', '0.00378372846099892', '0', '0', '0', '0', '0.067581767140092'); INSERT INTO `beijing2021` VALUES ('Medical and Pharmaceutical Products', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0.00995093637331', '0', '0.00238399216941378', '0', '0.000493603230457302', '0.0503844329459033', '0', '0.0254050339524213', '0', '0', '0', '0', '0.0886179986715057'); INSERT INTO `beijing2021` VALUES ('Chemical Fiber', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0.000292674599215', '0', '0', '0', '0', '0.00148189508664422', '0', '0.000720710183047412', '0', '0', '0', '0', '0.00249527986890663'); INSERT INTO `beijing2021` VALUES ('Rubber Products', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0.002634071392935', '0', '0.00163899461647197', '0', '0.000370202422842977', '0.0133370557797979', '0', '0.000360355091523706', '0', '0', '0', '0', '0.0183406793035716'); INSERT INTO `beijing2021` VALUES ('Plastic Products', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0.002634071392935', '0', '0.00163899461647197', '0', '0.000370202422842977', '0.0133370557797979', '0', '0.000360355091523706', '0', '0', '0', '0', '0.0183406793035716'); INSERT INTO `beijing2021` VALUES ('Nonmetal Mineral Products', '0.145967336238932', '0', '0', '0', '0.000782028524129359', '0', '0', '0', '0', '0.010828960170955', '0', '0.176415420536619', '0', '0.000493603230457302', '0.102515749906325', '0', '0.0241437911320883', '0', '0', '0', '0.7500386', '1.21118548973951'); INSERT INTO `beijing2021` VALUES ('Smelting and Pressing of Ferrous Metals', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0.00058534919843', '0', '0', '0', '0', '0.00554139188682838', '0', '0.0158556240270431', '0', '0', '0', '0', '0.0219823651123015'); INSERT INTO `beijing2021` VALUES ('Smelting and Pressing of Nonferrous Metals', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0.00058534919843', '0', '0', '0', '0', '0.00554139188682838', '0', '0.000720710183047412', '0', '0', '0', '0', '0.0068474512683058'); INSERT INTO `beijing2021` VALUES ('Metal Products', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0.022535944139555', '0.00151757199592963', '0.00834397259294822', '0', '0.000740404845685953', '0.213343587642893', '0', '0.00486479373557003', '0', '0', '0', '0', '0.251346274952581'); INSERT INTO `beijing2021` VALUES ('Ordinary Machinery', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0.016682452155255', '0', '0.00208599314823705', '0', '0.00197441292182921', '0.157929668774609', '0', '0.0030630182779515', '0', '0', '0', '0', '0.181735545277882'); INSERT INTO `beijing2021` VALUES ('Equipment for Special Purposes', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0.01873117434976', '0', '0.00655597846588789', '0', '0.000246801615228651', '0.177324540378508', '0', '0.00198195300338038', '0', '0', '0', '0', '0.204840447812765'); INSERT INTO `beijing2021` VALUES ('Transportation Equipment', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0.016097102956825', '0', '0.0336738893929696', '0', '0.000246801615228651', '0.152388276887781', '0', '0.0353147989693232', '0', '0', '0', '0', '0.237720869822127'); INSERT INTO `beijing2021` VALUES ('Electric Equipment and Machinery', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0.014926404559965', '0', '0.00178799412706033', '0', '0.000493603230457302', '0.141305493114124', '0', '0.00180177545761853', '0', '0', '0', '0', '0.160315270489225'); INSERT INTO `beijing2021` VALUES ('Electronic and Telecommunications Equipment', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0.010828960170955', '0', '0.000893997063530166', '0', '0', '0.102515749906325', '0', '0.00378372846099892', '0', '0', '0', '0', '0.118022435601809'); INSERT INTO `beijing2021` VALUES ('Instruments, Meters, Cultural and Office Machinery', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0.008487563377235', '0', '0.000297999021176722', '0', '0', '0.0803501823590115', '0', '0.000360355091523706', '0', '0', '0', '0', '0.089496099848947'); INSERT INTO `beijing2021` VALUES ('Other Manufacturing Industry', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0.001463372996075', '0', '0.00864197161412494', '0', '0', '0.013853479717071', '0', '0.000180177545761853', '0', '0', '0', '0', '0.0241390018730327'); INSERT INTO `beijing2021` VALUES ('Scrap and waste', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0.000292674599215', '0', '0.000297999021176722', '0', '0', '0.00277069594341419', '0', '0.000180177545761853', '0', '0', '0', '0', '0.00354154710956777'); INSERT INTO `beijing2021` VALUES ('Production and Supply of Electric Power, Steam and Hot Water', '1.7584294721808', '0', '0', '0', '0.00209325321436966', '0', '0', '0', '0', '0.0117069839686', '0', '0.0364790496207164', '0.00506931310099908', '0.142590845076481', '0.345723727224162', '0.329403244547503', '28.5767129945502', '0', '0', '0', '0', '31.2082088834838'); INSERT INTO `beijing2021` VALUES ('Production and Supply of Gas', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0.00409744438901', '0', '0.000595998042353444', '0', '0', '0.0387897432077987', '0', '0.0787375874979298', '0', '0', '0', '0', '0.122220773137092'); INSERT INTO `beijing2021` VALUES ('Production and Supply of Tap Water', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0.003804769789795', '0', '0.0026819911905905', '0', '0.000740404845685953', '0.0360190472643845', '0', '0.000900887728809265', '0', '0', '0', '0', '0.0441471008192652'); INSERT INTO `beijing2021` VALUES ('Construction', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0.216871878018315', '0', '0.452316398724769', '0', '0.013462701430532', '0', '0', '0.0518574958847857', '0', '0', '0', '0', '0.734508474058402'); INSERT INTO `beijing2021` VALUES ('Transportation, Storage, Post and Telecommunication Services', '0.000585184755396305', '0', '0', '0', '0', '0', '0', '0', '0', '0.901730440181415', '15.0427806524529', '2.41194161727654', '0.0142574430965599', '0.0522853753232288', '0', '0', '0.553146622771048', '0', '0', '0', '0', '18.9767273358571'); INSERT INTO `beijing2021` VALUES ('Wholesale, Retail Trade and Catering Services', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0.51042450103096', '0', '0.122205866960523', '0', '0.0601125273177241', '0', '0', '1.17327584439328', '0', '0', '0', '0', '1.86601873970248'); INSERT INTO `beijing2021` VALUES ('Others', '0', '0', '0', '0', '0', '0', '0', '0', '0', '1.05099448578107', '0.0185143783503415', '0.676618306437121', '0', '0.0375703295735776', '0', '0', '5.54875205967207', '0', '0', '0', '0', '7.33244955981418'); INSERT INTO `beijing2021` VALUES ('Urban', '0.069051801136764', '0', '0', '0', '0', '0', '0', '0', '0', '11.0982208022328', '0', '0', '0', '0.186599303548769', '0', '0', '3.37505869050147', '0', '0', '0', '0', '14.7289305974198'); INSERT INTO `beijing2021` VALUES ('Rural', '0', '0', '0', '0.178065160549272', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0.141514908060476', '0', '0', '0.419181425068685', '0', '0', '0', '0', '0.738761493678432'); SET FOREIGN_KEY_CHECKS = 1;
2、点击SQL查询。
3、将上述的SQL语句粘贴到里面并点击执行。
5. 用智能体进行数据分析
1、查询当前数据库当中有多少表。
2、帮我计算一下每一个行业的平均碳排放量,平均值前10的行业显示图表。
3、查询显示 beijing2021表当中,前10条汽油相关的数据,并生成一个分析报告,分析报告当中包括折线图信息。
🌴注意注意:
可直接点击阿里云百炼 MCP服务使用教程合集链接跳转回合集文章页面。
可直接点击下面链接直接进控制台创建:
👉阿里云百炼详情了解可点击此官网链接:阿里云百炼官网介绍
👉阿里云百炼控制台页面可点击此链接直接进入:阿里云百炼控制台
如果在创建过程中有任何的疑问都可以在评论区中留言探讨或是加入我们的官方支持群(群号:120480015429)进行交流反馈!