欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

阿里云ACA课程试验—掌握云数据库RDS与云存储OSS

程序员文章站 2022-06-06 22:39:30
...

数据库上云迁移的实现

注:以下演示以阿里云数据库RDS和云存储OSS操作为例;没有服务器的同学,可以参加阿里云高校计划,每天8点免费领取ECS服务器。
活动链接:
https://developer.aliyun.com/adc/college/

通过数据传输服务,将ECS上自建MySQL数据库迁移到RDS数据库。

一、查询源数据库

  1. 远程登录到MySQL源数据库 ECS实例。
  2. 运行如下命令,登录到ECS实例的MySQL数据库:
mysql -u root -p

阿里云ACA课程试验—掌握云数据库RDS与云存储OSS

  1. 查看源数据库bakery、其中的表customer和product,以及表中的数据。

1)执行如下命令,查看数据库信息。

mysql> show databases;

阿里云ACA课程试验—掌握云数据库RDS与云存储OSS

2)执行如下命令,切换数据库为bakery:

mysql> use bakery;

3)执行如下命令,查看表中数据:

mysql> show columns from customer;

mysql> show columns from product;

mysql> select * from customer;

mysql> select * from product;

阿里云ACA课程试验—掌握云数据库RDS与云存储OSS

二、建立目标数据库

  1. 登录到阿里云RDS管理控制台

  2. 进入云数据库RDS实例 的管理控制台

阿里云ACA课程试验—掌握云数据库RDS与云存储OSS

  1. 创建数据库账号

阿里云ACA课程试验—掌握云数据库RDS与云存储OSS

  1. 创建数据库

1)点击左侧栏的 数据库管理 ,进入数据库管理页面。

2)在右侧的 数据库管理 页面,点击右侧的 创建数据库 ,进入创建页面。

阿里云ACA课程试验—掌握云数据库RDS与云存储OSS

三、数据库迁移

  1. 进入数据迁移管理页面:

1)点击页面右上角的 导入数据库 。进入 数据迁移服务 的管理页面。

阿里云ACA课程试验—掌握云数据库RDS与云存储OSS

​ 2)点击左侧栏 数据迁移 ,进入数据迁移的管理页面。

​ 3)点击 数据迁移 右上角的 创建迁移任务

  1. 完成 源库信息 的配置信息和 目标库信息 的配置信息后,授权白名单并进入下一步 。

  2. 配置迁移任务的 迁移类型及列表:

阿里云ACA课程试验—掌握云数据库RDS与云存储OSS

  1. 完成预检查后购买迁移任务的配置

阿里云ACA课程试验—掌握云数据库RDS与云存储OSS

四、查阅迁移结果

  1. 进入RDS管理控制台。在实例列表界面中,点击右上角的登录数据库,进入数据库登录界面。

阿里云ACA课程试验—掌握云数据库RDS与云存储OSS

  1. 填写登录信息后进入数据库管理页面,验证数据库是否迁移成功

阿里云ACA课程试验—掌握云数据库RDS与云存储OSS

上传图片至OSS云存储

一、查看图片分享网站

  1. 远程登录到ECS服务器

  2. 进入网站系统的根目录

# cd /alidata/www/default 
  1. 查看图片
# ls

阿里云ACA课程试验—掌握云数据库RDS与云存储OSS

  1. 查看网站首页的源码
cat index.html

阿里云ACA课程试验—掌握云数据库RDS与云存储OSS

二、上传图片文件
  1. 在ECS实例的 /alidata/www/default 目录中,执行如下命令,进入 cfg.json 的编辑页面,并修改OSS的配置信息。
# vim cfg.json
  • idAK ID 值;
  • secretAK Secret
  • endpoint地域 相对应的 外网Endpoint 。例如:分配的 地域为 华东1(杭州),则输入 oss-cn-hangzhou.aliyuncs.com
  • bucketOSS资源 Bucket 名称
  • object_dirOSS资源 Object路径
    阿里云ACA课程试验—掌握云数据库RDS与云存储OSS
  1. 上传图片
python oss_upload.py 01.png

阿里云ACA课程试验—掌握云数据库RDS与云存储OSS

三、使用OSS存储图片分享网站

1.进入alidata/www/default目录

# cd /alidata/www/default

2.删除当前目录中的所有“.png”文件并查看是否删除干净

# rm -rf *.png
# ls

3.打开ECS 外网地址

阿里云ACA课程试验—掌握云数据库RDS与云存储OSS

4.进入OSS管理控制台,复制四张图片的URL地址

5.返回ECS服务器的**/alidata/www/default**目录下,并进入服务器访问首页 index.html 的编辑界面

# cd /alidata/www/default
# vim index.html

6.替换图片链接为复制的URL地址

7.刷新 ECS实例的 外网地址

![](https://imgconvert.csdnimg.cn/aHR0cHM6Ly9hZTAxLmFsaWNkbi5jb20va2YvSGVjNDk5OWI2ZmYyNTRkYTNiZTEzY2EzMjE4ZGQ0MjhmNy5qcGc?x-oss-process=image/format,png)

使用云存储OSS的API上传和下载和删除文件

使用OSS Python SDK 调用 OSS API,将用户本地的小文件上传到OSS云存储Object路径中。

一、调用OSS API上传文件

1.远程登录到ECS服务器

2.配置AccessKeyID, AccessKeySecret 和 Endpoint 信息

cd aliyun-lab
vim configure.json

configure.json 文件用于提供调用 OSS API 时所需的公共参数。

  • idAK ID 值;
  • secretAK Secret
  • endpoint地域 相对应的 外网Endpoint 。例如:分配的 地域为 华东1(杭州),则输入 oss-cn-hangzhou.aliyuncs.com

阿里云ACA课程试验—掌握云数据库RDS与云存储OSS

3.在 aliyun-lab 路径下,执行命令

vim object_upload.py

通过调用 OSS API,上传本地文件 (__file_name:本地文件路径) 到 bucket 中,并重命名 object (__object_name:Bucket中Object名称) 。在代码的 #调用OSS API的put_object()上传文件 下方,添加如下的代码,

with open(__file_name,'rb') as fileobj:

             bucket.put_object(__object_name, fileobj)

4.执行如下命令,运行脚本程序。将本地文件 lab.txt 上传到本实验分配 OSS bucket 的 Object 路径下,并重命名为 lab_object.txt

python object_upload.py <oss bucket名称> lab.txt <oss object路径>/lab_object.txt

5.输入命令 cat lab.txt ,查看上传到OSS指定路径的文件内容:Hello first object!

6.至此,文件上传成功。

二、调用OSS API下载文件

1.在 ECS 的 aliyun-lab 目录下,执行命令 vim object_download.py ,修改脚本文件 object_download.py 。通过调用 OSS API,下载 OSS的 bucket 中名称为 __object_name 的 object 到本地,并重命名为 __local_name 。在代码的 #调用OSS API的get_object_to_file()下载object 下方。

bucket.get_object_to_file(__object_name, __local_name)

2.执行如下命令,将 OSS 存储的文件 lab_object.txt 下载到本地,并重命名为 lab_local.txt 。下载成功后,执行命令 ls ,列出当前目录下所有的文件,可以看到文件lab_local.txt 已经保存在当前目录下。请注意替换 <oss bucket 名称><oss object路径>实验资源 提供的信息。

python object_download.py <oss bucket 名称> <oss object路径>/lab_object.txt lab_local.txt

阿里云ACA课程试验—掌握云数据库RDS与云存储OSS

3.执行命令 cat lab_local.txt 和 cat lab.txt ,分别查看原文件与下载后的文件,对比两个文件中的内容,可以发现两个文件中的内容一致,证明 object 下载并成功保存到本地。

阿里云ACA课程试验—掌握云数据库RDS与云存储OSS

三、调用OSS API删除Object

1.在ECS服务器访问终端界面,然后,执行 vim object_delete.py ,修改脚本文件 object_delete.py 。此脚本通过调用 OSS API ,删除 OSS Bucket 中的 object。在代码的 #调用OSS API batch_delete_objects(),批量删除objects 下方。添加如下的代码,完成修改后,保存脚本。

result = bucket.batch_delete_objects([__object_name])

阿里云ACA课程试验—掌握云数据库RDS与云存储OSS

  1. 执行命令 python object_delete.py <Bucket 名称> <Object路径>/lab_object.txt 。删除 bucket 中的指定路径的 object 。

阿里云ACA课程试验—掌握云数据库RDS与云存储OSS

,保存脚本。

result = bucket.batch_delete_objects([__object_name])

[外链图片转存中…(img-ke8LxrWa-1593021032036)]

  1. 执行命令 python object_delete.py <Bucket 名称> <Object路径>/lab_object.txt 。删除 bucket 中的指定路径的 object 。

[外链图片转存中…(img-tgF1xNGN-1593021032039)]

3.至此,完成object的删除

相关标签: ECS