RDS入门——Excel文件转存到RDS数据库实践

本文涉及的产品
数据管理 DMS,安全协同 3个实例 3个月
推荐场景:
学生管理系统数据库
云服务器 ECS,每月免费额度200元 3个月
云数据库 RDS MySQL Serverless,0.5-2RCU 50GB
简介: 本实验将帮助您快速掌握RDS产品的实例开通,熟悉RDS产品的常用功能与基础操作,完成云上数据库搭建。

背景知识

云数据库RDS

阿里云关系型数据库RDS(Relational Database Service)是一种安全稳定可靠、高性价比、可弹性伸缩的在线数据库服务。RDS支持MySQL、SQL Server、PostgreSQL和MariaDB引擎,并且提供了容灾、备份、恢复、监控、迁移等方面的全套解决方案,帮助您解决数据库运维的烦恼。

image.png

本次实验使用的是RDS for MySQL。

产品地址:https://www.aliyun.com/product/rds/mysql?spm=a2c6h.13148508.J_4VYgf18xNlTAyFFbOuOQe.38.3c3f4f0exvTWff#introduction

完成开通后通过右侧进入控制台

image.png

可对创建的实例进行管理

image.png


数据管理DMS

数据管理DMS(Data Management)是一款支撑数据全生命周期的一站式数据管理平台。DMS提供全域数据资产管理、数据治理、数据库设计开发、数据集成、数据开发和数据消费等功能,致力于帮助企业高效、安全地挖掘数据价值,助力企业数字化转型。

产品地址:https://www.aliyun.com/product/dms?spm=5176.28446652.J_4VYgf18xNlTAyFFbOuOQe.58.290e5526tSRIcX

产品优势:

image.png

产品使用及教程:https://help.aliyun.com/zh/dms/


场景描述

我们平时会将一些结构化的数据放在Excel表格中进行存储,但当数据量达到一定规模,在进行复杂的关联查询时,Excel运行起来就不太友好,这时我们可以选择将Excel中的数据导入到数据库中进行处理,以提高数据存取的效率。本次实验将带领您,把Excel的数据通过数据管理服务DMS(Data Management Service)导入到RDS MySQL数据库中。

image.png


实验流程

实验开始,需要创建一个RDS for MySQL的实例,再创建数据库和账号,通过DMS对该实例进行接管,DMS拥有MySQL客户端的功能,可以在SQL窗口进行创建存储Excel数据的表,然后通过DMS的数据导入功能将Excel表格数据导入RDS数据库中。最后,会带领大家操作ECS连接RDS实例,并通过命令行,做一些简单的增删改查的操作。


Excel文件转存到RDS数据库

搜索框搜索RDS,点击搜索结果中的云数据库RDS,进入RDS管理控制台。

image.png

点击创建实例的按钮,进入实例创建页面。

image.png

进入实例创建页面后,进行创建实例。
选择对应的参数进行配置实例,参数选择如下所示:

image.png

image.png

image.png

配置完成后点击确认,进入实例配置页面,在实例描述框中填写rdstest ,其他配置按照默认即可。

image.png

确认订单页面,选择去支付。

image.png

进入RDS实例管理界面。

实例创建过程耗时3分钟左右,若实例ID暂不可跳转,请耐心等待,过程中可以刷新页面,等待实例状态变为运行中,单击实例ID 。

image.png

在账号管理界面,单击创建账号,创建 高权限账号,账号为aliyuntest,密码自己设置。

image.png

image.png

image.png

显示账号已激活 ,账号已创建完成。若一直处于创建中,请手动刷新页面。

image.png

点击数据库管理,在点击创建数据库,在页面中输入数据库(DB)名称,选择支持字符集 ,并书写对应的备注说明,点击创建按钮,进行提交。

image.png

MySQL8.0支持多种字符集,字符集的特点如下:

  • utf8mb4:支持4字节Unicode字符,可以表示大部分国家的字符,是现代web应用中广泛使用的字符集。

  • utf8:只支持3字节Unicode字符,较老的MySQL服务器和许多库如LAMP(Linux + Apache + MySQL + Python/PHP/Perl)默认采用该字符集。

  • latin1:最基本的字符集,其它的字符集都可以通过该字符集的不可改变子集表示。这个字符集支持大部分计算机常见的字符,包括所有西欧语言的字母、数字、标点符号以及一些特殊字符。它在日语、中文和俄语等非拉丁字母语言中不适用。

  • gb2312:早期中国字符集,支持除异体字之外的3500左右的中文汉字和基本的拉丁字母、数字、标点符号,以及一些特殊字符。

  • gbk:统一汉字编码,是中国的现代字符集,包含了中国国家标准GB 2312-1980的全部字符,支持包括繁体字、日本汉字和韩国汉字等在内的多种汉字。
    utf16:Unicode字符二进制编码的16位配对码,支持几乎所有语言的字符和符号。

总之,选择什么字符集要根据自己的实际情况进行综合考虑,例如需要支持哪些语言、字符等。utf8mb4通常是最好的选择,如果面临扩展部署考虑,则可考虑 utf16的使用,中文网站中,唯一建议不适用latin字符集。

显示如下界面,表示数据库已创建完成。

image.png

在左侧导航栏中,单击白名单与安全组。

单击default分组右侧的修改。全部开放:将0.0.0.0/0加入白名单中,点击确定。

image.png

白名单说明:

  • 多个IP地址用英文逗号隔开,且逗号前后不能有空格。

  • 单个实例最多添加1000个IP地址或IP段。如果IP地址较多,建议将零散的IP合并为IP段,例如10.10.10.0/24。

  • 如果第3步获取的白名单模式是通用模式,则无额外注意事项。如果是高安全模式,需注意:

    • 把公网IP或经典网络ECS实例私网IP添加至经典网络分组。

    • 把专有网络ECS实例私网IP添加至专有网络分组。

添加后,所有的应用服务器都能访问RDS实例。

在实例基本信息页面上单击 登录数据库 ,跳转DMS界面。

image.png

在DMS界面,输入创建的 数据库账号 、 数据库密码。

image.png

完成以上信息填写后,单击左下角的测试链接,测试连通性无问题后,点击 登录。

image.png

在DMS控制台,单击 首页,点击常用功能,选择SQL窗口,进入SQL执行窗口。

image.png

将以下SQL复制到SQL窗口,创建goods表,用于存储Excel表格中的数据。

CREATE TABLE `goods` (
  `id` bigint(20) NOT NULL COMMENT '书籍编号',
  `name` varchar(32) NOT NULL COMMENT '书籍名称',
  `price` decimal(10,0) NOT NULL COMMENT '单价',
  `stock` int(10) unsigned NOT NULL COMMENT '库存',
  `author` varchar(128) DEFAULT NULL COMMENT '作者',
  `publishing_house` varchar(32) DEFAULT NULL COMMENT '出版社',
  `publishing_date` date DEFAULT NULL COMMENT '出版日期',
  `type` varchar(16) DEFAULT NULL COMMENT '类型',
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='商品信息';

单击执行 ,页面返回执行成功标志,消息通知执行成功。

image.png

可点击刷新按钮,将会出现新创建的goods表。

image.png

将已准备好的Excel表格数据,通过OSS的bucket地址进行下载到公共资源中。

image.png

数据导入。在DMS控制台上,选择常用功能--->数据导入。

image.png

单击上传文件,将商品管理文件进行上传。

image.png

预检查阶段,需显示全部通过,单击执行变更。

image.png

单击确定执行。

image.png

界面显示执行成功,即为文件上传成功。

image.png

再回到SQL窗口,选择数据库,单击确认,进行连接数据库。

打开新的SQL窗口。

image.png

SQL窗口中,输入SQL,单击执行,查询goods表中的全量数据。

select * FROM `goods`;

查询出的数据为全量的数据,与Excel表格中的数据进行对比,可发现数据一致。

SQL窗口中,点击+号,新增SQL执行窗口,输入SQL,单击执行,在goods表中查询teye字段为‘计算机’类型的数据。

select * FROM `goods` WHERE type='计算机';

image.png

接下来通过ECS连接数据库,需要输入MySQL的命令行进行连接。

【说明】 mysql -h 主机名 -u 用户名 -p 密码 -P 端口 。

  • -h : 该命令用于指定客户端所要登录的MySQL主机名。

  • -u : 所要登录的用户名。

  • -p : 告诉服务器将会使用一个密码来登录。

  • -P:一般默认为3306。

开通外网地址,点击实例功能栏左侧数据库连接,点击开通外网地址。

image.png

开通外网地址以后,将外网地址进行复制,后续步骤会进行使用该地址。

打开ECS远程连接,输入如下命令链接数据库:

mysql -h 数据库外网地址 -P3306 -u aliyuntest -p

image.png

输入密码,不回显是正常现象,如下所示即登录成功

image.png

执行如下SQL语句,查看所有数据库。

show databases;

image.png

返回结果如下,您可查看到MySQL数据库中的数据库,其中commodity数据库是之前创建数据库的步骤中创建好的,后续实验所有操作都在commodity数据库中执行。

执行如下SQL语句,选择数据库commodity。

use commodity;

image.png

执行如下SQL语句,查看所有的表。

show tables;

image.png

执行如下SQL语句,查询goods表中所有数据。

select * from goods;

image.png

goods表中的数据为通过DMS导入的Excel表格中的数据。

执行如下SQL语句,创建一个名为book_types的表。

CREATE TABLE IF NOT EXISTS `book_types` (
  `type_id` int unsigned NOT NULL AUTO_INCREMENT COMMENT '书籍类型ID',
  `book_type` varchar(32) NOT NULL DEFAULT '' COMMENT '书籍类型',
  PRIMARY KEY (`type_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

image.png

执行如下SQL语句,在book_types表中插入数据。

INSERT INTO `book_types` (`type_id`, `book_type`) VALUES (1, '计算机');
INSERT INTO `book_types` (`type_id`, `book_type`) VALUES (2, '历史');
INSERT INTO `book_types` (`type_id`, `book_type`) VALUES (3, '小说');
INSERT INTO `book_types` (`type_id`, `book_type`) VALUES (4, '科幻');

执行如下SQL语句,查询book_types表中的所有数据。

select * from book_types;

image.png

执行如下SQL语句,删除book_types表中type_id等于1的数据,并进行查看。

delete from book_types where type_id=1;
select * from book_types;

image.png

执行如下SQL语句,更新book_types表中type_id为2数据book_type为python,并进行查看。

update book_types set book_type='python' where type_id=2;

image.png

至此实验结束。

证书如下:

image.png


实验总结

在本次实验中,我们学习了在阿里云上创建并管理一个RDS for MySQL实例的过程。首先,我们创建了一个RDS实例,并设定了数据库和账号的相关信息。使用DMS工具接管该实例后,我们发现DMS具备了MySQL客户端的功能,可以方便地在SQL窗口中执行数据库操作。

接下来,我们在DMS中创建了用于存储Excel数据的表,并利用DMS的数据导入功能将Excel表格中的数据批量导入到RDS数据库中。这一步骤使得数据导入变得简单快捷,大大提高了效率。

最后,我们通过配置ECS与RDS实例的连接,演示了如何使用命令行进行一系列简单的增删改查操作。这让我们更深入地理解了如何与RDS实例进行交互,并通过命令行对数据库进行操作。

通过本次实验,我们掌握了创建RDS实例、使用DMS进行数据导入和管理、以及通过ECS连接RDS实例并进行数据操作的方法和技巧。这些技能对于日后在阿里云上进行数据库管理和应用开发非常有帮助。总体而言,本次实验为我们提供了一个全面的学习和实践平台,让我们更好地了解了阿里云的数据库服务和相关工具。

相关实践学习
基于CentOS快速搭建LAMP环境
本教程介绍如何搭建LAMP环境,其中LAMP分别代表Linux、Apache、MySQL和PHP。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
相关文章
|
24天前
|
SQL 数据可视化 关系型数据库
轻松入门MySQL:深入探究MySQL的ER模型,数据库设计的利器与挑战(22)
轻松入门MySQL:深入探究MySQL的ER模型,数据库设计的利器与挑战(22)
106 0
|
24天前
|
存储 关系型数据库 MySQL
轻松入门MySQL:数据库设计之范式规范,优化企业管理系统效率(21)
轻松入门MySQL:数据库设计之范式规范,优化企业管理系统效率(21)
|
24天前
|
关系型数据库 MySQL 数据库
轻松入门MySQL:精准查询,巧用WHERE与HAVING,数据库查询如虎添翼(7)
轻松入门MySQL:精准查询,巧用WHERE与HAVING,数据库查询如虎添翼(7)
|
1月前
|
监控 数据处理 索引
使用Python批量实现文件夹下所有Excel文件的第二张表合并
使用Python和pandas批量合并文件夹中所有Excel文件的第二张表,通过os库遍历文件,pandas的read_excel读取表,concat函数合并数据。主要步骤包括:1) 遍历获取Excel文件,2) 读取第二张表,3) 合并所有表格,最后将结果保存为新的Excel文件。注意文件路径、表格结构一致性及异常处理。可扩展为动态指定合并表、优化性能、日志记录等功能。适合数据处理初学者提升自动化处理技能。
23 1
|
1月前
|
安全 Java 数据库连接
jdbc解析excel文件,批量插入数据至库中
jdbc解析excel文件,批量插入数据至库中
21 0
|
20天前
|
存储 关系型数据库 MySQL
MySQL基础入门:数据库操作全攻略
MySQL基础入门:数据库操作全攻略
50 0
|
24天前
|
SQL 关系型数据库 MySQL
轻松入门MySQL:深入学习数据库表管理,创建、修改、约束、建议与性能优化(3)
轻松入门MySQL:深入学习数据库表管理,创建、修改、约束、建议与性能优化(3)
|
4天前
|
SQL Java 数据库连接
Java从入门到精通:2.3.2数据库编程——了解SQL语言,编写基本查询语句
Java从入门到精通:2.3.2数据库编程——了解SQL语言,编写基本查询语句
|
4天前
|
SQL Java 数据库连接
Java从入门到精通:2.3.1数据库编程——学习JDBC技术,掌握Java与数据库的交互
ava从入门到精通:2.3.1数据库编程——学习JDBC技术,掌握Java与数据库的交互
|
4天前
|
存储 网络协议 关系型数据库
Python从入门到精通:2.3.2数据库操作与网络编程——学习socket编程,实现简单的TCP/UDP通信
Python从入门到精通:2.3.2数据库操作与网络编程——学习socket编程,实现简单的TCP/UDP通信