mysql创建工作经历表_国内首款 Serverless MySQL 数据库重磅发布!
12 月 20 日的 Techo 大会上,腾讯云重磅发布了自研云原生数据库 TDSQL-C Serverless(原 CynosDB Serverless),这是国内首款计算和存储全 Serverless 架构的云原生 MySQL, TDSQL-C Serverless能够让企业用户像使用水、电、煤一样使用云数据库,用户不需为数据库的闲时进行付费,而是按照数据库资源响应单元实际使用量进行计费,将腾讯云云原生技术普惠用户。
作为 Serverless 生态中的重要一环,TDSQL-C Serverless 的发布也补齐了 Serverless 架构里 MySQL 数据库的空缺。因此,Serverless Framework 同步发布了 TDSQL-C Serverless 组件。这样,腾讯云就拥有了一套Serverless 全栈的核心解决方案,包括 Serverless API网关、腾讯云的 Serverless 函数计算服务、Serverless 对象存储和数据库。在数据存储层可以通过 TDSQL-C Serverless 直接对数据库连接并进行 SQL 操作。
TDSQL-C Serverless(MySQL 数据库),具备完全自动化的扩容能力,能够随着用户业务的请求数的增加和减少,智能化“膨胀”和“缩小”,实现资源的自动“吞吐”。从此以后,开发者可以真正的完成 Serverless 应用的开发,专注于业务本身,免除运维,按需付费,享受 Serverless 架构带来的众多优势。
另外,TDSQL-C Serverless 数据库在试用期间完全免费。
服务特性
自动驾驶(Autopilot):
数据库根据业务负载自动启动停止,无感扩缩容,扩缩容过程不会断开连接。
按使用计费(Utility Pricing):
按实际使用的计算和存储量计费,不用不付费,按秒计量,按小时结算。
适用场景
开发、测试环境等低频数据库使用场景。
物联网(IoT)、边缘计算等不确定负载场景。
中小企业建站等 SaaS 应用场景。
下面的教程将以 Node.js 开发语言的函数,指导您如何快速创建 TDSQL-C Serverless MySQL 实例,并在云函数中进行调用:
操作步骤
配置环境变量
配置私有网络: 通过 Serverless Framework VPC 组件 创建 VPC 和 子网,支持云函数和数据库的网络打通和使用。
配置 Serverless DB: 通过 Serverless Framework Cynosdb 组件 创建 MySQL 实例,为云函数项目提供数据库服务。
编写业务代码: 通过 Serverless DB SDK 调用数据库,云函数支持直接调用 Serverless DB SDK,连接 PostgreSQL 数据库进行管理操作。
部署应用: 通过 Serverless Framework 部署项目至云端,并通过云函数控制台进行测试。
移除项目: 可通过 Serverless Framework 移除项目。
1. 配置环境变量
在本地建立目录,用于存放代码及依赖模块。本文以 test-MySQL 文件夹为例。
mkdir test-MySQL && cd test-MySQL
由于目前 TDSQL-C Serverless 只支持 ap-beijing-3,ap-guangzhou-4,ap-shanghai-2 和 ap-nanjing-1 四个区域,所以这里还需要配置下,只需要在项目根目录下创建 .env 文件,然后配置 REGION 和 ZONE 两个环境变量:
# .env
REGION=xxx
ZONE=xxx
2. 配置私有网络
在 test-MySQL 目录下创建文件夹 VPC。
mkdir VPC && cd VPC
同时在 VPC 中新建 serverless.yml 文件,使用 VPC 组件完成私有网络和子网的创建。
serverless.yml 示例内容如下,全量配置参考产品文档
#serverless.yml
org: mysql-app
app: mysql-app
stage: dev
component: vpc # (required) name of the component. In that case, it's vpc.
name: mysql-app-vpc # (required) name of your vpc component instance.
inputs:
region: ${env:REGION}
zone: ${env:ZONE}
vpcName: serverless-mysql
subnetName: serverless-mysql
3. 配置 Serverless DB
在 test-MySQL 下创建文件夹 DB,并在 DB 文件夹下新建 serverless.yml 文件,并输入以下内容,通过 Serverless Framework 组件完成云开发环境配置。
serverless.yml 示例内容如下,全量配置参考产品文档
# serverless.yml
org: mysql-app
app: mysql-app
stage: dev
component: cynosdb
name: mysql-app-db
inputs:
region: ${env:REGION}
zone: ${env:ZONE}
vpcConfig:
vpcId: ${output:${stage}:${app}:mysql-app-vpc.vpcId}
subnetId: ${output:${stage}:${app}:mysql-app-vpc.subnetId}
4. 编写业务代码与配置文件
在 test-MySQL 下创建文件夹 src,用于存放业务逻辑代码和相关依赖项。并在 src 文件夹下创建文件 index.js,输入如下示例代码。在函数中通过 SDK 连接数据库,并在其中完成 MySQL 数据库的调用。
exports.main_handler = async (event, context, callback) => {
var mysql = require('mysql2');
var connection = mysql.createConnection({
host : process.env.HOST,
user : 'root',
password : process.env.PASSWORD
});
connection.connect();
connection.query('SELECT 1 + 1 AS solution', function (error, results, fields) {
if (error) throw error;
console.log('The solution is: ', results[0].solution);
});
connection.end();
}
安装所需依赖模块:
npm install mysql2
完成业务代码编写和依赖安装后,创建 serverless.yml 文件,示例文件如下:
org: mysql-app
app: mysql-app
stage: dev
component: scf
name: mysql-app-scf
inputs:
src: ./
functionName: ${name}
region: ${env:REGION}
runtime: Nodejs10.15
timeout: 30
vpcConfig:
vpcId: ${output:${stage}:${app}:mysql-app-vpc.vpcId}
subnetId: ${output:${stage}:${app}:mysql-app-vpc.subnetId}
environment:
variables:
HOST: ${output:${stage}:${app}:mysql-app-db.connection.ip}
PASSWORD: ${output:${stage}:${app}:mysql-app-db.adminPassword}
5. 快速部署
完成创建后,项目目录结构如下:
./test-MySQL
├── vpc
│ └── serverless.yml # vpc 配置文件
├── db
│ └── serverless.yml # db 配置文件
├── src
│ ├── serverless.yml # scf 组件配置文件
│ ├── node_modules # 项目依赖文件
│ └── index.js # 入口函数
└── .env # 环境变量文件
使用命令行在 test-MySQL 下,执行以下命令进行部署。
sls deploy
部署时需要扫码授权,如果没有腾讯云账号,请 注册新账号。
如果是子账号,请参考子账号权限配置完成授权
返回结果如下所示,即为部署成功。
mysql-app-vpc:
region: xxx
zone: xxx
vpcId: xxxx-xxx
...
mysql-app-db:
dbMode: xxxx
region: xxxx
zone: xxxx
...
mysql-app-scf:
functionName: xxxx
description: xxx
...
59s › test-MySQL › "deploy" ran for 3 apps successfully.
部署成功后,您可通过 云函数控制台,查看并进行函数调试,测试成功如下图所示:
移除项目
在 test-MySQL 目录下,执行以下命令可移除项目。
sls remove
返回如下结果,即为成功移除。
serverless ⚡ framework
4s › test-MySQL › Success
除了通过组件一键创建所有资源外,您也可以通过控制台完成 Serverless 版本 MySQL 数据库的创建,并在云函数中正常使用 SDK 的方式完成调用。
One More Thing
立即体验腾讯云 Serverless Demo,领取 Serverless 新用户礼包
mysql创建工作经历表_国内首款 Serverless MySQL 数据库重磅发布!相关推荐
- cad模型轻量化_国内首款:新一代基于云架构的三维CAD产品CrownCAD正式公测!
4月15号,华天软件控股子公司华云三维科技有限公司研发的国内首款.完全自主可控的新一代基于云架构的三维CAD产品CrownCAD正式上线公测. 公测地址:http://www.crowncad.com ...
- 物联网平台 源码_国内首个智慧交通物联网平台发布
"智慧锥桶"工作示意图. 在近日召开的2020世界交通运输大会上,国内首个智慧交通物联网平台发布.该平台通过全系列物联网硬件设施,包括智慧锥桶.事故车盒.执法一体化快速封路器等和智 ...
- 比MySQL快6倍 深度解析国内首个云原生数据库POLARDB的“王者荣耀”
随着移动互联网.电子商务的高速发展,被使用最多的企业级开源数据系统MySQL面临着巨大挑战--为迎接"双11"的高并发要提前做好分库分表;用户不断激增要将读写分离才能应对每天上亿次 ...
- postgis数据库优化_国内首个 Serverless 数据库来了,技术架构全揭秘!
头图 | CSDN 下载自东方 IC本文为企业投稿 省却成本,缩短产品上市时间,减少运维与开发团队之间的摩擦是 Serverless 最核心的所在,从 AWS 发布「Lambda」让「Serverle ...
- python aiompq集群_国内首款基于AIO(异步IO)支持集群的高性能开源WebSocket服务器 宝贝鱼 CshBBrain V4.0 发布...
国内首款基于AIO的开源WebSocket服务器 宝贝鱼 (CshBBrainAIO)正式发布.基于AIO的开源WebSocket服务器 宝贝鱼 依然采用分层的体系结构,协议层和业务层 与 基于NIO ...
- mysql 创建表格time类型_记一次关于 Mysql 中 text 类型和索引问题引起的慢查询的定位及优化...
最近有用户反馈产品有些页面加载比较慢,刚好我在学习 Mysql 相关知识,所以先从 Mysql 慢查询日志开始定位: step1:通过慢查询日志定位具体 SQL 首先通过 SHOW VARIABLES ...
- mysql 创建用户并授权_教你MySQL-8.0.x数据库授权
Mysql安装成功后,默认的root用户密码为空,你可以使用以下命令来创建root用户的密码: [root@host]# mysqladmin -u root password "new_p ...
- 北斗通信运营商_国内首个“北斗+5G”应用方案发布 配套5G产品将于年底量产上市...
北京合众思壮科技股份有限公司研发的各类北斗导航应用终端 郭超凯 摄 北京合众思壮科技股份有限公司研发的各类北斗导航应用终端 郭超凯 摄 中新网郑州9月10日电 (郭超凯)中国卫星导航与位置服务第八届年 ...
- mysql创建零件供应商表_● 建立一个供应商、零件数据库。其中“供应商”表 S(Sno,Sname,Zip,City)分别表示: 供应商代码、 供应 - 赏学吧...
● 建立一个供应商.零件数据库.其中"供应商"表 S(Sno,Sname,Zip,City)分别表示: 供应商代码. 供应商名. 供应商邮编. 供应商所在城市, 其函数依赖为: S ...
- 国内首款研发自动化产品PingCode Flow发布
2019年11月,Workile跳出过去在泛协作领域的成绩积累,开辟研发产品线,致力于深度解决我国上千万产研从业者的工作痛点. 随后一年中,Agile.Testhub.Wiki.Plan纷纷问世,形 ...
最新文章
- 在jupyter notebook中同时安装python2和python3
- ie网络集合代理无法启动_网络故障诊断70例!经典老文了!
- Apache Tomcat Configuration Reference
- 软件质量的理解 摘录
- python 预测算法_Python 与金融数据使用机器学习算法预测交易策略
- dubbo官方文档_狂神说SpringBoot17:Dubbo和Zookeeper集成
- 【项目总结】达能益力--官网
- 华为Mate 50系列明年初发布:麒麟990/骁龙8 Gen1加持
- 记录一次nginx 配置https 强制http转发到https
- linux如何挂载windows下的共享文件
- 数据分析2 - 基础篇
- web漏洞扫描器原理_基于指纹识别的漏洞扫描设计
- TaggedInputSplit cannot be cast to org.apache.hadoop.mapreduce.lib.input.FileSplit
- 不那么完美的 RSS 订阅方案 — feedly + RSSHub Radar
- SAP中PR/PO创建技巧之缺省值个人设置
- 该内存不能为written或read的解决方案(比较全)
- ABIDE数据集预处理项目
- 每日随笔:笔记本WiFi突然连接不上重启才好的问题解决方式
- Ubuntu18.04使用校园网上网的问题(以锐捷客户端为例)
- 系统日志及数据库日志
热门文章
- 一文细数73个Vision transformer家族成员
- 视频+课件|基于多视图几何方式的三维重建
- 递归和循环两种方式求解连续数的相加
- [Swift]LeetCode609. 在系统中查找重复文件 | Find Duplicate File in System
- 属性变量,实例变量,全局变量
- 28.开始画面和异形窗口
- C# StringBuilder 和 String 的区别?(简单易懂不抽象)
- C#中实现拖拽功能,补全中
- 适合自己的才是最好的
- 在页面中直接设计TreeView的节点而不使用Web.Sitemap文件在运行时出错信息