LighthouseDB轻量数据库服务基于腾讯云自研的新一代云原生数据库 TDSQL-C,融合了传统数据库、云计算与新硬件技术的优势,100%兼容 MySQL,实现超百万级 QPS 的高吞吐,128TB 海量分布式智能存储,保障数据安全可靠。
LighthouseDB 产品特性● 100%兼容 MySQL:100%兼容开源数据库引擎 MySQL。
● 超高性能:单节点百万 QPS 的超高性能,满足高并发场景
● 快速恢复:计算节点实现无状态,支持本地和跨设备的秒级故障切换和恢复,支持基于快照的秒级备份和回档
● 管理简单:开箱即用,默认模板提供简化操作
● 数据高可靠:集群支持安全组和 VPC 网络隔离。自动维护数据和备份的多个副本,保障数据安全可靠,可靠性达99.9999999%。
● 超高性价比:提供固定规格套餐,共享式资源超低价格即可购买使用轻量数据库,性能远高于自建数据库
选购配置介绍产品官网:https://cloud.tencent.com/product/lighthousedb
打开产品官网,然后点击立即选购按钮。
然后进入选购界面,大家可以根据自己的需要选择适合自己的配置。
选购配置完成后,可以进入产品控制台,界面如下:
这里第一次进入可以修改数据库密码,方便后续操作。
点击左下角的登录按钮,会打开数据库管理页面,选择实例、数据库账户、密码点击登录按钮。
创建数据库这时会进入数据库管理界面。我们点击库管理。
然后进入数据库管理界面。点击新建数据库按钮
弹出数据库新建界面,这里设置数据库名称、字符集、排序规则,然后点击确定按钮。
创建成功后可以看到新创建的数据库DBDemo出现在最下面的列表。
创建数据表数据库创建后,我们可以新建数据表,界面如下:
然后切换到列信息标签页,添加数据表字段
创建表sql如下“:
CREATE TABLE `T_User` ( `Id` bigint NOT NULL AUTO_INCREMENT COMMENT '主键自增', `Name` varchar(20) DEFAULT '' COMMENT '姓名', `Age` int DEFAULT NULL COMMENT '年龄', `Address` varchar(100) DEFAULT '' COMMENT '住址', `Hobby` varchar(100) DEFAULT '' COMMENT '兴趣爱好', `Birthday` date DEFAULT NULL COMMENT '出生日期', PRIMARY KEY (`Id`)) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=utf8 COMMENT='用户表'SQL预览界面
SQL变更预览界面,确认没问题,我们点击确定按钮。
创建表成功后,我们可以新增一行记录。界面如下:
点击提交按钮会进入执行预览界面,确认后点击执行数据就插入成功了。当然也可以进行数据导入的方式。
创建视图这里创建一个V_User的视图,查询年龄大于30的用户。
点击提交,进入新建视图确认的弹窗,然后点击确定按钮,视图就可以创建了。
视图创建后,可以执行sql语句,查看视图的数据。
创建函数创建一个简单的求和函数
界面如下:
创建函数语句如下:
CREATE DEFINER=`root`@`%` FUNCTION `func_sum`(num1 INT, num2 INT) RETURNS int DETERMINISTIC COMMENT '新建求和函数'BEGIN DECLARE total INT; SET total = num1 + num2; RETURN total;END执行函数界面
开启远程访问首先回到控制台界面,点击开启公网。
然后本地cmd 去ping域名获取公网ip
注意:数据库端口就是开启公网域名后的端口,不是默认的3306端口。
特别注意:外网访问仅用于开发或辅助管理数据库,业务访问请使用内网访问。
然后可以使用navicat进行访问
成功访问后。
C#集成案例测试首先创建一个控制台程序LighthouseDBDemo ,net框架为4.7.2
然后安装第三方框架,这里主要需要mysql驱动和Dapper数据库orm框架。
打开nuget管理界面,安装mysql驱动,版本选择最新版8.0.31,
安装Dapper 框架这里也选择最新版本2.1.28,主要是用来查询和新增。
代码如下
这里主要体现了测试数据库连接、查询、新增操作,具体代码如下:
using Dapper;using MySql.Data.MySqlClient;using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Threading.Tasks;namespace LighthouseDBDemo{ Program { static void Main(string[] args) { string connectionStr = string.Format("data source={0};user id={1};password={2};database={3};port={4};pooling=false;charset=utf8;", "公网IP地址", "root", "12345678","DBDemo", "27452"); ConnectionTest(connectionStr); GetSelectList(connectionStr); InsertDemo(connectionStr); Console.ReadKey(); } /// <summary> /// 判断数据库服务器是否连接成功 /// </summary> /// <param name="conStr"></param> /// <returns></returns> public static void ConnectionTest(string conStr) { try { using (MySqlConnection connection = new MySqlConnection(conStr)) { connection.Open(); connection.Close(); Console.WriteLine("数据库连接成功!"); } } catch (Exception ex) { Console.WriteLine("数据库连接失败!原因:"+ex.Message); } } /// <summary> /// 查询测试 /// </summary> /// <param name="conStr"></param> /// <returns></returns> public static void GetSelectList(string conStr) { string sql = "select name from T_User "; try { using (MySqlConnection connection = new MySqlConnection(conStr)) { var list = connection.Query<string>(sql).ToList(); if (list.Any()) { foreach (var item in list) { Console.WriteLine(item); } } } } catch(Exception ex) { Console.WriteLine("查询失败!原因:" + ex.Message); } } /// <summary> /// 数据插入测试 /// </summary> /// <param name="conStr"></param> public static void InsertDemo(string conStr) { string sql = "INSERT INTO `DBDemo`.`T_User` (`Name`, `Age`, `Address`, `Hobby`, `Birthday`) VALUES ('小刘', 28, '江苏徐州', '听歌', '1996-08-05') "; try { using (MySqlConnection connection = new MySqlConnection(conStr)) { int count = connection.Execute(sql); if (count > 0) { Console.WriteLine("数据插入成功!"); } } } catch (Exception ex) { Console.WriteLine("查询失败!原因:" + ex.Message); } } }}然后运行项目,执行效果界面如下:
打开数据库客户端查看
测试数据是ok,这个只是一个简单的demo,大家可以根据实际需要进行调整。