云界洞见——基于移动云云数据库MySQL应用实践

news2024/12/27 11:28:48

目录

    • 简介
    • 1 新手入门
      • 1.1 创建MySQL实例
      • 1.2 公网连接MySQL实例
    • 2 操作指南
      • 2.1 创建数据库
      • 2.2 数据备份设置
      • 2.3 日志管理
      • 2.4 监控告警
      • 2.5 代码审计
    • 3 应用场景
    • 4 总结

如今,大型企业如金融企业和银行等,在下一代的微服务架构转型要求下,需要基础软件和数据平台能够实现原生的云化,以满足微服务架构的需求。微服务,也就是一种面向服务的,有特定边界的松散耦合的架构。

主要特点包括,每一个微服务是一个独立的自治系统,可以不依赖外部组件独立运行;对应用只暴露接口,用户可以灵活的调整过每个微服务的使用;业务粒度足够小。

在企业架构“云化”的过程中,数据库的云化是最为重要也是难度较大的一个部分,其中的移动云MySQL数据库提供专业数据库管理控制平台,支持用户执行几乎所有必需任务而无需编程,减少日常运维工作量,从而专注于开发应用和业务发展。

简介

云数据库MySQL是一款开箱即用、性能卓越、安全可靠的在线数据库服务。产品具有实例秒级开通、支持百万QPS、符合安全企业级标准等特点并提供异地高可用、可弹性伸缩、智能运维等云原生高级特性。支持MySQL数据库主流版本,满足全行业数据库需求。
在这里插入图片描述
我为什么选择移动云云数据库 MySQL ?

  • MySQL,一款高并发、高吞吐、高可靠的关系型数据库,主要面向TP场景。
  • 移动云数据库MySQL,提供完善的基础设施、网络安全保障、数据安全保障以及全面的系统维护服务,您可以专注于业务创新。
  • 云原生架构,实例秒级开通,计费管理灵活完善。上百种规格随心选择,实例弹性扩容。
  • 上百种业务功能,支持账号权限&数据库管理、存储/传输介质加密、SSL加密、网络隔离以及监控与告警功能,同时支持数据备份恢复、数据库代理以及多可用区等高级功能。
  • 专业DBA经验沉淀,事务、锁、SQL优化等深度分析,智能调优。

1 新手入门

1.1 创建MySQL实例

在使用云数据库 MySQL 之前,您需要注册移动账号并且购买云数据库MySQL服务
点击跳转

步骤1:进入移动云官网首页,选择【产品】>【数据库】>【关系型数据库】>【云数据库MySQL】,进入云数据库MySQL的产品首页。
在这里插入图片描述
进入云数据库MySQL的产品首页,选择合适的参数类型进行确认订单,完成订购后,系统会生成订单信息。用户可以去订单管理系统中,查看本次订购是否成功。
在这里插入图片描述
完成订购后需要进行云主机访问设置,确保云主机实例、虚拟私有云VPC、安全组、数据库实例,均在同一地域/可用区内,配置完成后即可进行连接MySQL实例。

1.2 公网连接MySQL实例

公网连接适用于开发或辅助管理数据库,对于正式的业务场景建议您采用内网方式连接,避免数据库被入侵或攻击等不可控因素而导致连接不可用。

  • 进入公网连接界面
    选择直连端口进行公网连接,进入控制台的【连接管理】模块,单击【绑定公网IPV4地址】按钮或者单击【公网连接策略】页签。
    在这里插入图片描述
  • 选择数据库代理端口进行公网连接
    进入控制台的【数据库代理】模块,单击【公网连接策略】>【绑定公网IPv4】按钮。
    在这里插入图片描述
  • 绑定公网IPv4地址
    选择目标实例,单击【目标实例ID/名称】或【管理】按钮,进入实例控制台功能模块,单击【绑定公网IPv4】按钮,选择目标IPv4地址。
    在这里插入图片描述
  • 绑定IPv4地址成功,如下图所示
    在这里插入图片描述
  • 创建公网白名单,设置允许登录数据库实例IPv4地址
    1、开启公网IPv4白名单功能,单击【创建公网白名单】按钮,输入允许访问数据库实例IPv4地址
    在这里插入图片描述
    在这里插入图片描述
    连接MySQL实例,以navicat为例。单击【新建】按钮,输入公网IP地址、数据库账号和密码和端口,点击【打开】按钮,连接数据库实例。
    在这里插入图片描述
  • 查看实例的基本信息
    在这里插入图片描述

2 操作指南

2.1 创建数据库

为满足数据分类分层的需要,通过控制台、SQL语句或者OpenAPI为云数据库MySQL实例创建不同名称的数据库,并授权给不同的账号

为了保证数据库的数据一致性和安全性,数据表需要设置主键,否则可能会产生因为没有主键而引发的主备延时,从而影响您数据备份等功能的使用。

  • 控制台创建数据库
    单击【管理控制台】按钮,进入云数据库MySQL控制台(或直接从控制台总览进入MySQL控制台)
    在这里插入图片描述
    针对创建的数据库进行参数设置,然后点击 确定即可创建成功,
    在这里插入图片描述

2.2 数据备份设置

通过对移动云云数据库MySQL的使用,可以实现自动备份MySQL 数据,自动备份可以确保在数据丢失或损坏的情况下,能够迅速恢复到最近的备份点。这可以防止由于硬件故障、软件错误、人为操作失误或恶意攻击导致的数据丢失。
步骤1:在实例列表页面,找到目标实例。单击目标【实例ID/名称】或【管理】按钮,进入实例控制台功能模块。
步骤2:从左侧导航栏中进入【备份恢复】页面,单击【数据备份设置】>【编辑备份设置】按钮,即可编辑自动物理备份设置。
在这里插入图片描述
进入编辑备份设置之后,即可进行 备份周期的选择,既可以设置全量备份的时间,也可以选择增量备份的时间,默认全量备份策略:每周进行一次全备,默认为实例创建日的次日;
在这里插入图片描述
目前仅库级别的逻辑备份支持设置备份周期及时间,暂不支持单库中部分表和多库中部分表设置逻辑备份周期及时间。

  • binlog 日志备份设置
    云数据库 MySQL 实例在执行事务时会生成二进制日志文件,当Binlog文件写满 512MB 会进行一次切割,切割后的 Binlog 文件会被上传至备份空间对象存储EOS中,然后控制台的日志列表会显示上传到 EOS 的 Binlog 文件。
    步骤:从左侧导航栏中进入【备份恢复】页面,单击【Blinlog备份设置】>【编辑Binlog设置】按钮,即可设置本地Binlog文件保留规则
    在这里插入图片描述

规则:
1、本地Binlog日志文件设置系统默认是60分钟后,把Binlog日志文件从存储空间删除,转储至备份空间。
2、保留时长设置和文件保留个数设置满足一个设置条件,则触发删除机制。
同时也可以针对已备份的binloig日志进行备份
在这里插入图片描述

2.3 日志管理

日志文件记录了影响MySQL实例的各类活动,便于进行快速故障定位。使用移动云数据库MySQL , 通过控制台的日志管理页面,可以查看与下载MySQL实例常见的日志,如错误日志、慢日志明细、慢日志统计、主备切换日志、操作日志和备份恢复日志。

  • 慢查询日志
    慢查询日志(Slow Query Log)是MySQL中用于记录执行时间超过阈值的SQL查询的日志。通过深入研究慢查询日志,你可以识别性能瓶颈、定位慢查询,并进行优化。以下是有关慢查询日志的启用、解析和优化的详细信息:
    本地进行慢查询 日志查看,需要进行的操作:
# 设置慢查询开启状态
slow_query_log =1
# 慢查询日志存放的位置
slow_query_log_file=/application/mysql/data/localhost-slow.log
# 询超过多少秒才记录   默认10秒 修改为1秒
long_query_time = 1

同时,移动云云数据库MySQL 支持进行数据订阅,通过数据订阅功能,可以实时订阅源库的增量数据,轻松帮助业务实现轻量级缓存更新、业务异步解耦、含ETL逻辑的数据实时同步等场景。
在这里插入图片描述

2.4 监控告警

通过数据库管理控制台提供的“监控与告警”功能或移动云监控平台,直观地查看实例运行的各项监控指标,包括实例引擎监控指标及系统资源监控指标。
包括一些常见的监控指标如CPU使用率,内存使用率,实例每秒的事务数等,实例平均每秒的SQL执行次数,实例每秒读写的IO数等等。同时,也可以查看系统性能监控告警的活动图,针对需要监控的指标进行自定义监控等,同时支持时间自定义筛选。

针对云数据库MySQL的各种指标进行监控:

CPU使用率:
在这里插入图片描述
内存使用率
在这里插入图片描述
针对需要重点监控的指标数据,可以进行自定义筛选并进行重点监控
在这里插入图片描述

2.5 代码审计

SQL审计是确保企业数据安全的关键措施,对于数据安全要求高的行业,启用此功能尤为必要。它能够详尽记录主实例与只读实例中所有的数据操纵语言(DML)和数据定义语言(DDL)操作,为追踪、检索和分析提供便利,从而有效监控和审计用户行为。
【产品】>【数据库】>【关系型数据库】>【云数据库MySQL】进入云数据库MySQL介绍页
在这里插入图片描述

3 应用场景

云数据库MySQL在电子政务。医疗医药、金融领域、电子商务等方面应用 都较为广泛。依赖移动云数据库MySQL进行云构建是企业的最佳选择之一。
在这里插入图片描述

云数据库与其他云服务之间的关系: 虚拟私有云VPC:使用VPC实现对云数据库MySQL实例的网络隔离和访问控制。
对象存储:存储云数据库MySQL实例的自动和手动备份数据。
云监控:云监控平台提供全方位的监控与告警服务,可以向用户展示购买的云数据库MySQL实例使用状况及系统健康状况等,便于您及时处理系统突发故障。
云主机ECS:云数据库MySQL集群实例内网访问,需要使用云主机连接。
统一身份认证服务:统一身份认证服务(IAM)为云数据库MySQL提供了鉴权功能。

4 总结

移动云云数据库MySQL与原生数据库引擎使用方法一致,无需二次学习,上手即用,可以配合同一地域的弹性云服务器一起使用,通过内网通信,缩短应用响应时间,同时也节省了公网流量费用,产品具有实例秒级开通、支持百万QPS、符合安全企业级标准等特点并提供异地高可用、可弹性伸缩、智能运维等云原生高级特性
点击跳转官方入口,即可加入体验
https://ecloud.10086.cn/portal/product/database
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1700317.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

C++的数论相关算法

数论是数学的一个分支,主要研究整数的性质和关系。在计算机科学中,数论算法对于密码学、优化问题和算法分析等方面都具有重要作用。C作为一种高效的编程语言,非常适合用来实现这些算法。下面我们将介绍几个C中的数论相关算法,包括…

linux入门到精通-第十九章-libevent(开源高性能事件通知库)

目录 参考什么是libevent应用核心实现libevent的地基event_base等待事件产生,循环监听event_loop退出循环监听event_base_loopexit创建事件工作流程 安装一(源码安装,推荐)现在源码配置编译安装验证安装 安装二(可能因…

【记忆空间】 史上最详细,移动固态硬盘,西数BLACK D30拆解,测评,外观与内饰解析。第一期:外观与内饰。

【记忆空间】 史上最详细,移动固态硬盘,西数BLACK D30拆解,测评,外观与内饰解析。第一期:外观与内饰。 外观实拍,正面,整体黑色,外壳是一个塑料的材质。 外观实拍:侧面…

Android Studio开发之路(十四)自定义Titlebar以及设置顶部状态栏颜色

一、描述 项目需求,我要做一个下图这样的titlebar,包括一个返回按钮,一个关闭按钮,一个文本框。默认的titlebar按钮设计不太满足我的需求,于是我打算自定义一个titlebar组件,应用到我的每一个页面 二、titlebar组件设…

新计划,不断变更!做自己,接受不美好!猪肝移植——早读(逆天打工人爬取热门微信文章解读)

时间不等人 引言Python 代码第一篇 做自己,没有很好也没关系第二篇结尾 引言 新计划: 早上一次性发几个视频不现实 所以更改一下 待后面有比较稳定的框架再优化 每天早上更新 早到8点 晚到10点 你刚刚好上班或者上课 然后偷瞄的看两眼 学习一下 补充知…

HCIP-Datacom-ARST自选题库__BGP判断【20道题】

1.传统的BGP-4只能管理IPV4单播路由信息,MP-BGP为了提供对多种网络层协议的支持,对BGP-4进行了扩展。其中MP-BGP对IPv6单播网络的支持特性称为BGP4,BGP4通过Next Hop属性携带路由下一跳地址信息。 2.BGP4通过Update报文中的Next Hop属性携带…

C++之运算符重载

在C中,运算符重载是一种特殊的函数,它允许程序员重新定义或重载大部分内置运算符,以便它们可以用于用户自定义的数据类型。通过运算符重载,可以使自定义类型的使用更加直观和自然。 不是所有运算符都可以被重载: .&a…

聊聊变异测试

软件质量保障 所寫即所思|一个阿里质量人对测试的所感所悟。 1. 介绍 有句话说:证实容易,证伪难。正如测试一样,证明缺陷存在容易,但证明不存在缺陷难。而变异测试颠覆了这一原则,如果我们知道存在缺陷&am…

ARM+FPGA+NVIDIA AI摄像头软硬件定制

拥有资深ISP图像技术团队,是英伟达、地平线等合作伙伴,我们的团队掌握目前市面上大部分车载平台的ISP图像画质服务能力,能自主开发图像ISP和增强算法。我们具有多名经验丰富光学设计专家,掌握车载模组光学设计能力,资深…

数据结构——链表——模板类实现双向链表——先完成再完美——持续更

链表:概念,实现,《数据结构》这里实现是基于模板的 C语言基础,指针,引用。模板。《CPrimer》有些进阶用法放在语言学习的目录 LeetCode应用,会更新在LeetCode150,目前这个系列先暂停&#xff0c…

遇见问题-VMware虚拟机打开运行一段时间后卡死

1.问题原因 因为Windows自带的虚拟化软件Hyper-V与VMware存在冲突。 2.关闭Hyper-V 1.打开【控制面板】-【程序和功能】-【启用或关闭Windows功能】3.关闭HV主机服务 1.右击计算机-》管理-》服务和应用名称-》服务-》找到HV主机服务-》右击属性停止服务 -》启动类型设置为禁…

NASA数据集——阿尔法喷气式大气实验二氧化碳和甲烷数据

Alpha Jet Atmospheric eXperiment Carbon Dioxide and Methane Data 阿尔法喷气式大气实验二氧化碳和甲烷数据 简介 Alpha Jet Atmospheric eXperiment (AJAX) 是美国国家航空航天局艾姆斯研究中心与 H211, L.L.C. 公司的合作项目,旨在促进对加利福尼亚、内华达…

asp.net core接入prometheus2-自定义指标

前提 了解一下asp.net core接入prometheus快速入门 https://blog.csdn.net/qq_36437991/article/details/139064138 新建.net 8空web项目 安装下面三个包 <PackageReference Include"OpenTelemetry.Exporter.Prometheus.AspNetCore" Version"1.8.0-rc.1&…

【软件设计师】计算机组成原理

1、数据的表示 1.1 进制转换 整型有4种进制形式&#xff1a; 1.十进制&#xff08;D&#xff09;&#xff1a; 都是以0-9这九个数字组成&#xff0c;不能以0开头。 2.二进制&#xff08;B&#xff09;&#xff1a; 由0和1两个数字组成。 3.八进制&#xff08;O&#xff09;&am…

Java的类路径究竟是什么?

回答 问了chatgpt这个问题&#xff0c;首先类路径的定义是&#xff1a; 是指一组路径&#xff0c;这些路径告诉Java虚拟机&#xff08;JVM&#xff09;和类加载器在哪里可以找到应用程序所需的类和资源文件。说白了就是在运行java程序的时候需要先将java源代码编译成class文件…

代码随想录——从前序与中序遍历序列构造二叉树(Leetcode105)

题目链接 递归 /*** Definition for a binary tree node.* public class TreeNode {* int val;* TreeNode left;* TreeNode right;* TreeNode() {}* TreeNode(int val) { this.val val; }* TreeNode(int val, TreeNode left, TreeNode right) {* …

nginx + confd + etcd 实现nginx动态白名单,防止请求host篡改注入攻击

众所周知&#xff0c;浏览器发送到后台请求header中携带的host是可能被修改的&#xff0c;为了防止这件事情发生&#xff0c;就很有必要给后台设置host请求白名单了&#xff0c;本次将介绍nginx如何配置&#xff0c;以及结合confd和etcd实现动态配置。 1. http/https请求的host…

flink cdc mysql整理与总结

文章目录 一、业务中常见的需要数据同步的场景CDC是什么FlinkCDC是什么CDC原理为什么是FlinkCDC业务场景flink cdc对应flink的版本 二、模拟案例1.阿里云flink sql2.开源flink sql(单机模式)flink 安装安装mysql3.flink datastream 三、总结 提示&#xff1a;以下是本篇文章正文…

MFC扩展库BCGControlBar Pro v34.1新版亮点:日历和计划表等功能升级

BCGControlBar库拥有500多个经过全面设计、测试和充分记录的MFC扩展类。 我们的组件可以轻松地集成到您的应用程序中&#xff0c;并为您节省数百个开发和调试时间。 BCGControlBar专业版 v34.1已正式发布了&#xff0c;这个版本包含了对Windows 10/11字体图标的支持、功能区和…

huggingface 笔记:查看GPU占用情况

0 准备部分 0.1 创建虚拟数据 import numpy as npfrom datasets import Datasetseq_len, dataset_size 512, 512 dummy_data {"input_ids": np.random.randint(100, 30000, (dataset_size, seq_len)),"labels": np.random.randint(0, 1, (dataset_size…