腾讯云云数据库MySQL产品认证课程笔记(一)——MySQL介绍

课程地址:云数据库 MySQL 产品认证——腾讯云云数据库MySQL介绍

1. 云数据库概述

云数据库是部署和虚拟化在云计算环境中的数据库,它极大地增强了数据库的存储能力,消除了人员、硬件软件的重复配置,让软、硬件升级变得更加容易。

云数据库特点:

  • 高可扩展性;
  • 高可用性;
  • 采用多租户形式;
  • 支持资源有效分发;
  • 容灾功能,保护企业数据;

云数据库可满足不同企业的个性化存储需求。针对中小企业,云数据库可满足它们“前期0投入,后期免维护”的要求。

2. 腾讯云云数据库MySQL概述

云数据库MySQL是腾讯云基于开源数据库 MySQL专业打造的高性能分布式数据存储服务,让用户能够在云中更轻松地设置、操作和扩展关系数据库。

腾讯云云数据库MySQL产品定位

腾讯云云数据库MySQL的基本特性:

  • 易于使用的托管部署: 在几分钟内完成部署;
  • 强同步复制:大幅度提高MySQL的数据一致性;
  • 专项内核优化:云数据库MySQL性能远超基于开源MySQL的自建数据库;
  • 数据容灾:支持同城多可用区灾备、跨城灾备;
  • 全流程运维服务:降低运维成本;
  • 全面的日常监控:可在管理控制台中查看各种指标参数;
  • 完善的保障机制:腾讯云提供99.9996%数据可靠性和99.95%服务可用性,并且拥有完善的数据自动备份和无损恢复机制;
  • 数据迁移:借助数据传输服务DTS可完成数据迁移工作;
  • 自定义告警:资源阈值告警;

腾讯云云数据库MySQL的优点:

  • 便宜易用
    • 提供灵活的计费方式;
    • 支持读写分离;
    • 强大的硬件提供性能保障;
  • 高安全性
    • DDoS防护;
    • 数据库攻击防护;
  • 高可靠性
    • 数据加密;
    • 数据库审计;
  • 高可用性
    • 实时热备;
    • 自动容灾;

相较于自建数据库的优势:

  • 方便管理海量数据库;
  • 数据导入与备份回档;
  • 专业的监控与告警;
  • 多种接入方式;

3. 腾讯云云数据库MySQL架构

云数据库MySQL支持四种架构。

3.1 高可用版本架构

高可用版架构

高可用版本采用一主一备的高可用模式。

主节点和备节点通过复制协议进行数据同步,可实现实时热备,提供宕机自动检测和故障自动转移。

主备复制方式:

  • 异步(默认)
  • 半同步

可用性达到99.95%。

3.2 金融版本架构

金融版本架构

金融版本采用一主两备三节点模式。

主节点和备节点之间通过强同步复制方式,加上实时热备,确保数据的强一致性,提供金融级的可靠性和高可用性。

可用性达到99.99%。

3.3 单节点高IO版架构

单节点高IO版架构

单节点高IO版采用单个物理节点部署,性价比高。

底层存储使用本地NVMe SSD硬盘,提供强大的IO性能。目前应用于只读实例,实现读写分离,帮助业务分摊读压力。

3.4 基础版架构

基础版架构
基础版采用单个节点部署,价格低廉,性价比高。

适用于个人学习、微型网站、企业非核心系统及大中型企业开发与测试环境。(不建议用于业务正式环境)

4. 数据库实例

数据库实例

数据库复制方式:

数据库复制方式

5. TXSQL内核

TXSQL Logo

TXSQL是腾讯云数据库团队维护的 MySQL内核分支,100%兼容原生MySQL版本,TXSQL提供了类似于MySQL企业版的诸多功能,如企业级透明数据加密、审计、线程池、加密函数、备份恢复等功能。
对InnoDB存储引擎、査询优化、复制性能等方面进行了大量优化,提升了云数据库MySQL的易用性和可维护性。

相关优化示例:

5.1 删除含大量数据的表

当用户删除一个含大量数据的表时,文件系统IO会达到峰值,过程会持续1~2秒,导致无法响应其它数据库实例的请求。

TXSQL

5.2 复制优化

  • Slave中锁拆分;
  • Slave中IO优化;
  • 并行复制;

5.3 查询优化

  • 将分页以及聚集操作下推到存储引擎执行;
  • 提高了查询执行效率;

5.4 存储引擎优化

  • 事务系统做了深度优化;
  • 写性能得到大幅提升;
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
要在Android Studio中连接腾讯云MySQL数据库,需要进行以下步骤: 1. 在腾讯云控制台中创建一个MySQL数据库实例,并创建一个数据库和一个或多个表。 2. 在腾讯云数据库实例的安全组中添加一个入站规则,允许来自Android应用程序的IP地址和端口访问数据库。 3. 在Android Studio项目中添加MySQL数据库的Java连接器依赖项。常见的MySQL连接器依赖项是mysql-connector-java。 4. 在Android Studio项目中创建一个Java类,并在该类中编写连接腾讯云MySQL数据库的Java代码。以下是一个示例代码: ```java import java.sql.*; public class MySQLConnection { static final String JDBC_DRIVER = "com.mysql.jdbc.Driver"; static final String DB_URL = "jdbc:mysql://你的数据库IP地址:你的数据库端口号/你的数据库名称"; static final String USER = "你的数据库用户名"; static final String PASS = "你的数据库密码"; public static void main(String[] args) { Connection conn = null; Statement stmt = null; try{ Class.forName(JDBC_DRIVER); System.out.println("连接数据库..."); conn = DriverManager.getConnection(DB_URL,USER,PASS); System.out.println("实例化Statement对象..."); stmt = conn.createStatement(); String sql; sql = "SELECT id, name, age FROM user"; ResultSet rs = stmt.executeQuery(sql); while(rs.next()){ int id = rs.getInt("id"); String name = rs.getString("name"); int age = rs.getInt("age"); System.out.print("ID: " + id); System.out.print(", 名称: " + name); System.out.println(", 年龄: " + age); } rs.close(); stmt.close(); conn.close(); }catch(SQLException se){ se.printStackTrace(); }catch(Exception e){ e.printStackTrace(); }finally{ try{ if(stmt!=null) stmt.close(); }catch(SQLException se2){ } try{ if(conn!=null) conn.close(); }catch(SQLException se){ se.printStackTrace(); } } System.out.println("Goodbye!"); } } ``` 5. 编译并运行Java类,以确保它能够连接到腾讯云MySQL数据库并读取数据。 6. 现在可以在Android应用程序中使用相同的Java代码来连接腾讯云MySQL数据库。可以在Android应用程序中使用异步任务或线程来避免在主线程中执行长时间的数据库操作。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值