C

科技技术前后端 2024-04-28 10:54:40

LighthouseDB介绍

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,大家可以根据实际需要进行调整。

0 阅读:2

科技技术前后端

简介:感谢大家的关注