Tencent Cloud SDK
Tencent CloudGitHub
简体中文
简体中文
  • 欢迎
  • 常见问题
  • Python
  • 概述
  • 安装
  • 入门
  • 最佳实践
    • 无服务器云函数
      • 无服务器云函数间调用
      • 定时调用无服务器云函数
      • 原生调用无服务器云函数
        • 绑定到无服务器云函数
        • 使用例程组织无服务器云函数
    • 无服务器数据库
      • 创建和管理无服务器数据库
    • 其他 Tencent Cloud 产品
      • 选择最佳的访问凭据类型
  • API 文档
    • 无服务器云函数
      • 类和方法
        • Client 类
          • easy_invoke 方法
          • routine_invoke 方法
          • select_function 方法
          • select_routine 方法
          • bind_function 方法
          • bind_routine 方法
          • schedule_invoke 方法
          • run_schedule 方法
          • invoke 方法
          • create_function 方法
          • delete_function 方法
          • publish_function_version 方法
          • copy_function 方法
          • update_function_code 方法
          • update_function_configure 方法
          • get_function_result_by_request_id 方法
          • get_function_results 方法
          • list_functions 方法
          • list_function_versions 方法
          • get_function_info 方法
          • create_trigger 方法
          • delete_trigger 方法
          • create_namespace 方法
          • delete_namespace 方法
          • list_namespaces 方法
          • update_namespace 方法
          • get_function_code_download_url 方法
          • download_function_code 方法
          • create_layer 方法
          • delete_layer 方法
          • get_layer_info 方法
          • list_layers 方法
          • list_layer_versions 方法
          • submit_monitor_indicator 方法
        • FunctionSchedule 类
          • cancel 方法
        • FunctionResultFuture 类
          • get_request_id 方法
        • FunctionTrigger 类
          • get_trigger_kind 方法
          • get_trigger_context 方法
          • use_timer 方法
          • use_object_storage_bucket 方法
          • use_message_queue_topic 方法
        • FunctionCode 类
          • get_code_source 方法
          • get_code_context 方法
          • use_object_storage_bucket 方法
          • use_local_zip_archive 方法
          • use_git_repository 方法
        • LayerContent 类
        • fetch_client 函数
        • use_routine_dispatcher 函数
      • 数据类型
        • FunctionResult 类型
        • FunctionInfo 类型
        • FunctionInfoEx 类型
        • FunctionVersionInfo 类型
        • NamespaceInfo 类型
        • LayerInfo 类型
        • FunctionConfigure 类型
        • FunctionResultFilter 类型
        • FunctionFilter 类型
        • ObjectStorageBucketTriggerFilter 类型
        • MessageQueueTopicTriggerFilter 类型
        • LayerFilter 类型
        • FunctionRuntime 枚举器
        • FunctionType 枚举器
        • FunctionResultType 枚举器
        • FunctionTriggerKind 枚举器
        • FunctionCodeSource 枚举器
        • LayerContentSource 枚举器
        • LayerStatus 枚举器
      • 异常
        • InvokeError 异常
        • StatusError 异常
    • 无服务器数据库
      • 类和方法
        • Client 类
          • create_instance 方法
          • delete_instance 方法
          • list_instances 方法
          • set_instance_extranet 方法
        • fetch_client 函数
      • 数据类型
        • InstanceInfo 类型
        • InstanceConfigure 类型
        • DatabaseCharset 枚举器
    • 其他 Tencent Cloud 产品
      • 类和方法
        • Waitable 类
          • wait_for_done 方法
          • has_done 方法
          • set_result 方法
        • ErrorManager 类
          • add_handler 方法
          • remove_handler 方法
          • has_handler 方法
          • clear_all_handler 方法
        • UniversalClient 类
          • action 方法
          • action_for_product 方法
          • select_action 方法
          • get_product_id 方法
          • set_product_id 方法
          • set_access_endpoint 方法
          • set_access_proxies 方法
          • get_last_response_metadata 方法
        • Proxies 类
          • use_proxy_server 方法
          • add_proxy_server 方法
          • remove_proxy_server 方法
      • 数据类型
        • ResponseMetadata 类型
        • ProxyAuth 类型
        • ProxyType 枚举器
        • ErrorHandlerResult 枚举器
        • WaitableStatus 枚举器
      • 异常
        • Error 异常
        • NotFoundError 异常
        • ExistedError 异常
        • OccupiedError 异常
        • ClientError 异常
        • RequestError 异常
        • ResponseError 异常
        • ActionError 异常
        • ActionResultError 异常
  • GitHub 存储库
  • Issues 跟踪器
  • PyPI 项目主页
由 GitBook 提供支持
在本页
  • 概述
  • 指导
  • 创建数据库
  • 列出数据库
  • 访问数据库
  • 删除数据库

这有帮助吗?

导出为 PDF
  1. 最佳实践
  2. 无服务器数据库

创建和管理无服务器数据库

借助 Tencent Cloud SDK for Python,您可以以面向对象编程的方式创建和管理无服务器数据库资源。

上一页无服务器数据库下一页其他 Tencent Cloud 产品

最后更新于5年前

这有帮助吗?

概述

与传统数据库资源不同,无服务器数据库是一款按需分配资源的数据库产品。无服务器数据库将根据您的请求量、实际存储数据大小来自动分配资源,无需关注底层计算和存储资源,开箱即用,仅需为实际使用的资源量付费。

在向下阅读本文之前,您需要确保已阅读 并理解一些基本概念。

在本文中我们将向您详细介绍,如何使用 Tencent Cloud SDK for Python 提供的无服务器数据库产品客户端以面向对象编程的方式快速创建并管理一个或多个无服务器数据库实例。

指导

在下文中,我们将通过几个连续的步骤向您演示:

创建数据库

导入模块

在创建无服务器数据库资源前,我们需要导入 Tencent Cloud SDK for Python 相关命名空间和模块:

from tencent.cloud.serverless import database

请注意,这需要您的运行环境已安装 tencent-cloud-sdk-serverless-database 组件包,通常情况下该组件包包括在最新的 Tencent Cloud SDK 中。

创建客户端

接着,我们需要创建一个无服务器数据库产品客户端,这将允许我们访问无服务器数据库产品:

client = database.fetch_client()

在上文示例代码中,我们使用 fetch_client 函数获得一个与当前超线程相关的无服务器数据库产品客户端实例。因便捷性和安全性原因,该函数仅支持使用环境凭据和文件凭据:

创建数据库

现在,我们需要在 ap-shanghai-2 数据中心可用区创建一个名为 default 的无服务器数据库实例:

instance_info: dict = client.create_instance(
    region_id = 'ap-shanghai',
    zone_id = 'ap-shanghai-2',
    instance_name = 'default',
    instance_configure = {
        'database': {
            'version': '10.4',
            'charset': database.DatabaseCharset.UTF8
        },
        'vpc': {
            'id': 'vpc-f7qfb64q',
            'subnet_id': 'subnet-aieh8myj'
        }
    }
)

在上文示例代码中,我们创建的无服务器数据库配置如下:

配置项

成员

值

数据库版本

database.version

10.4

数据库字符集

database.charset

UTF-8

实例私有网络

vpc.id

vpc-f7qfb64q

实例私有网络子网

vpc.subnet_id

subnet-aieh8myj

打印唯一标识符

最后,我们打印输出所创建的无服务器数据库实例的唯一标识符:

print(instance_info['id'])

与无服务器数据库实例名称不同,无服务器数据库实例唯一标识符是不可重复的。

列出数据库

借助 Tencent Cloud SDK for Python 所提供的无服务器数据库产品客户端,我们可以非常方便地列出给定数据中心园区内已创建的无服务器数据库实例的详细信息:

for info in client.list_instances('ap-shanghai'):
    print(info)

访问数据库

有时候我们的业务或工作负载可能因开发调试等原因,需要通过公网访问无服务器数据库实例。默认设置下无服务器数据库实例不允许通过公网访问,但我们可以轻松改变这一设置:

client.set_instance_extranet(
    region_id = 'ap-shanghai',
    instance_id = instance_info['id'],
    instance_extranet = True
)

在上文示例代码中,参数 instance_extranet 代表给定无服务器数据库实例是否允许通过公网访问,如果该参数被忽略,默认为 True。

设置成功后,您需要通过调用实例方法 list_instances 检索公网访问地址。

删除数据库

一个无服务器数据库实例已不再使用?没关系,我们可以利用 Tencent Cloud SDK for Python 所提供的无服务器数据库产品客户端将其快速删除(销毁):

client.delete_instance(
    region_id = 'ap-shanghai',
    instance_id = instance_info['id']
)

之后,被删除的无服务器数据库实例资源将在短时间内销毁回收。

参数 instance_configure 的数据类型为 ,该数据类型包含所创建的无服务器数据库实例配置信息。

变量 info 的数据类型为 ,其包含一个无服务器数据库实例的详细信息。

无服务器数据库有哪些优势?
入门篇
选择最佳的访问凭据类型
InstanceConfigure
InstanceConfigure 类型
create_instance 方法
InstanceInfo
InstanceInfo 类型
list_instances 方法
set_instance_extranet 方法