Amazon云有mysql吗_云中的MySQL 亚马逊RDS初体验

【51CTO 12月10日外电头条】Amazon的RDS服务(Relational Database Service,关系数据库服务)给我们带来了云中的MySQL数据库服务器,让“数据库作为服务”的概念成为现实,为现有的MySQL应用步入云中提供了一台快速的自动升降梯。

我们知道,Amazon的EC2实例中可以运行MySQL,同时它还提供SimpleDB服务(51CTO编辑注:EC2是Amazon的招牌云计算服务,而SimpleDB则是其之前一直提供的云端数据库服务,可以对结构化数据实时查询),那么为什么还要选择SimpleDB呢?

关于SimpleDB,它的名字给出了***的理由。SimpleDB的本意就是成为一个简单的数据库。如果你只需要基本的读写和查询功能,那么SimpleDB是个非常好的选择,但它并不是一个关系数据库。

那么在EC2实例中运行MySQL呢?这不是与RDS提供了相同的功能吗?没错,但RDS是直接使用MySQL的关键部件。与EC2实例不同,RDS并不需要配置操作系统,也不需要管理。简单地说,RDS几乎就是一个纯粹的MySQL数据库,不多也不少。

快速建立DB Instance

从用户和开发者的角度来看,Amazon RDS和一个远程MySQL数据库没什么两样。Amazon将RDS的云中MySQL服务器称做DB Instance,通过基于Web的API进行创建和管理,其余的操作可以通过标准的MySQL通信协议完成。

创建DB Instance时需要指定一些属性来确定数据库实例的行为和能力。例如Class属性决定了所创建的DB Instance可用的内存和处理能力。Amazon以ECU(Elastic Compute Unit)作为其计算能力单位(1个ECU差不多相当于1个1.0GHz 2007 Xeon处理器),你可以创建1.7GB内存和1 ECU的小型(Small)DB Instance,直到拥有68GB内存和26 ECU的超级大型(Quadruple Extra Large)DB Instance。

创建DB Instance时还需要定义可用的存储,存储范围为5GB到1024GB,你可以将更大的数据分配给多个DB Instance,Amazon RDS数据库的***工作上限是每个表1TB。

使用RDS工作

使用Amazon RDS时需要两样东西:命令行工具和兼容MySQL的客户端应用。前者是Amazon提供的Java应用套装,负责处理DB Instance的管理比如创建、参数调整、删除等等,可以从Amazon网站下载。后者可以是任何与MySQL服务器进行通信的应用。当然,你还需要注册Amazon Web Services来获得AWS Access ID和AWS Secret Access Key。

ab3a9cdfa6641aac50006d3041d9f240.gif 

图:Amazon RDS DB Instance创建之后,就可以像任何一种远程MySQL数据库那样进行管理,比如使用MySQL Administrator工具。

下载了命令行工具之后就可以开始设置环境变量。我们可以通过下面的命令行创建一个小型的DB Instance(1 ECU和20GB):

rds-create-db-instance --db-instance-identifier rginstance --allocated-storage 20 ---db-instance-class db.m1.small --enging MySQL5.1 --master-username rgrehan --master-user-password mypassword --db-name ADBTest --headers

这将产生一个名为rginstance的DB Instance,管理员的名字是rgrehan,密码为123456。在这个DB Instance中将创建名为ADBTest的数据库,***存储为20GB。

如果你不喜欢命令行工具,Amazon已经发布了支持各种编程语言的库,可用于Java、C#、PHP、VB.NET和Perl等。RDS的管理功能均表现为Web服务,因此这些库基本上都是通过远程调用的Web服务包。

按照使用付费

Amazon Web Services的一项基本原则是按照使用情况收费,同样RDS也完全是根据MySQL应用的具体使用情况来计算费用。

DB Instance分为几种类别,每一种都有自己的价格。一个小型DB Instance是每小时11美分,超级大型DB Instance是每小时3美元10美分,其余的在两者之间。费用是按照DB Instance的寿命来计算的,即使它不响应任何MySQL命令。因此你要记住只有终止数据库实例才能停止计费,但你不会丢失数据。你可以要求在终止数据库时创建快照,在以后需要的时候再恢复,当然Amazon会为保存快照收取费用,但这很便宜,每GB每月只要15美分。

【编辑推荐】

【51CTO.com译稿,非经授权请勿转载。合作站点转载请注明原文译者和出处为51CTO.com,且不得修改原文内容。】

原文:First look: Amazon RDS gives you a MySQL server in the cloud作者:Rick Grehan

【责任编辑:杨赛 TEL:(010)68476606】

点赞 0

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
好的,关于MySQL数据库备份文件的下载,可以使用Python的boto3库来实现从RDS上下载备份文件。 首先,需要安装boto3库,可以使用pip安装: ``` pip install boto3 ``` 然后,需要在AWS控制台上创建一个IAM用户,并生成该用户的Access Key和Secret Access Key,并将该用户加入RDS的访问策略组中。 接着,可以使用以下Python代码来下载MySQL备份文件: ``` python import boto3 # 配置AWS访问密钥 aws_access_key_id = 'your_access_key_id' aws_secret_access_key = 'your_secret_access_key' # 创建rds client对象 client = boto3.client('rds', aws_access_key_id=aws_access_key_id, aws_secret_access_key=aws_secret_access_key, region_name='your_rds_region') # 获取最近的mysql备份文件 response = client.describe_db_log_files( DBInstanceIdentifier='your_db_instance_id', FilenameContains='mysql', FileLastWritten=0 ) # 下载mysql备份文件 if len(response['DescribeDBLogFiles']) > 0: file = response['DescribeDBLogFiles'][0] filename = file['LogFileName'] download_response = client.download_db_log_file_portion( DBInstanceIdentifier='your_db_instance_id', LogFileName=filename ) with open('mysql_backup.sql', 'wb') as f: f.write(download_response['LogFileData']) ``` 需要将上面代码中的 `your_access_key_id`,`your_secret_access_key`,`your_rds_region`,`your_db_instance_id` 替换成自己的AWS访问密钥、RDS所在区域和实例ID。 这样,就可以通过Python从RDS上下载MySQL备份文件了。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值