PolarDB梦工场

简介: PolarDB 是阿里云(Alibaba Cloud)提供的一种关系型数据库服务。它是一种全球性的分布式数据库系统,具有高可用性、弹性扩展和高性能的特点。PolarDB 基于阿里云自主研发的架构,采用了共享存储和分布式共识协议,以实现跨多个节点的数据同步和读写操作。

一.简单介绍

1.什么是 PolarDB?

PolarDB 是阿里云(Alibaba Cloud)提供的一种关系型数据库服务。它是一种全球性的分布式数据库系统,具有高可用性、弹性扩展和高性能的特点。PolarDB 基于阿里云自主研发的架构,采用了共享存储和分布式共识协议,以实现跨多个节点的数据同步和读写操作。

2.PolarDB 特性有哪些?

PolarDB 的一些特性包括:

  1. 性能优越: PolarDB 支持自动分库分表和动态水平扩展,可以提供弹性的性能和存储资源,以适应不断增长的业务需求。
  2. 高可用性: 构建在分布式架构上,PolarDB 具备自动故障切换和数据自动备份恢复的能力,提供高可用性和数据安全性。
  3. 兼容性: 兼容 MySQL 和 PostgreSQL,用户可以将其现有的 MySQL 或 PostgreSQL 数据库迁移到 PolarDB,而无需修改应用程序代码。
  4. 全球部署: 支持在多个地域进行部署,以提供更好的全球性能和可用性。

3.免费试用

话不多说,上链接!!!

免费试用链接

点击链接后,通过筛选 PolarDB MySQL 我们可以看到两个选项,我们选择 Serverless 类型的产品进行试用,点击立即试用,系统就会进入到 Serverless 资源选择页面,然后就可以进入集群管理控制台愉快的进行 PolarDB 的使用了。

二.准备阶段

1.控制台介绍

登录到云数据库 PolarDB 的控制台,我们可以看到左侧很多功能目录。

  • 基本信息: 展示 PolarDB 集群的基本信息,白名单与账号,以及集群配置等。
  • 性能监控: 监测 PolarDB 集群的各项指标,如 CPU,CPU 使用率等。
  • 配置与管理: PolarDB 建库建表,账号管理等。
  • 诊断与优化: 主要是管理日志,以及慢 SQL 查询相关信息。
  • 日志与审计: 对数据库上访问记录进行采集、分析和存储。

2.创建账号

在控制台左边的配置与管理栏,我们可以看到账号管理,点击账号管理,可以进入到 PolarDB 账号的管理页面。

点击创建账号,可以设置账号名,设置账号类型,高权限账号只能创建一个,普通账号可以设置多个,大家可以根据自己的需要进行设定,然后设置密码,点击确认后账号就创建成功了。

3.数据库账号

登录 PolarDB 的控制台,在左侧的配置与管理栏,可以看到数据库管理,点击后可以进入到数据库管理页面。

在这个页面,我们可以进行数据库的创建,点击创建数据库,可以进入到创建数据库的页面。

需要设置:

  • 数据库名称
  • 支持字符集
  • 授权账号和备注说明是非必填的,可以不填。

4.进入 SQL 控制台

通过点击配置与管理 ==>> 数据库管理 ==>> SQL 查询

点击 SQL 查询按钮,可以进入到 SQL 操作的控制台,开始进行 SQL 操作。

三.使用数据库

1.连接数据库

通过点击如图所示的 SQL 查询,相当于在连接创建的 kwan 数据库,点击 SQL 查询,就可以看到连接数据库成功,进入到 SQL 操作界面。

2.创建表

在数据库管理页面,我这边创建了一个库是 kwan,在 SQL 操作页面可以看到选择的是 kwan 这个数据库,如果大家看到是 mysql,那么执行 SQL 的时候,需要加上自己创建的数据库名,比如我这里是 kwan。

这里我们首先创建一个名为 test_table_kwan 的测试表。

-- 创建一个名为test_table_kwan的测试表

CREATETABLE kwan.test_table_kwan(

 id INTNOTNULLAUTO_INCREMENT,

 name VARCHAR(50)NOTNULL,

 age INTNOTNULL,

 PRIMARYKEY(id)

);

3.插入数据

创建表成功后,我们想表中插入几条数据。

向 test_table_kwan 表中插入 3 条数据。

-- 向test_table_kwan表中插入3条数据

INSERTINTO kwan.test_table_kwan(name, age)VALUES

('John',25),

('Mary',30),

('Bob',35);

4.查询验证

查询表数据,看看刚刚插入的数据是否插入成功。

SELECT*FROM kwan.test_table_kwan;

5.更改数据

查询到数据之后,我们希望修改 id 为 1 的值,将 name 修改为 Johnny,age 修改为 26。

UPDATE kwan.test_table_kwan

SET name ='Johnny', age =26

WHERE id =1;

6.验证查询

使用SELECT * FROM kwan.test_table_kwan;命令,可以查看到修改后的表数据。

SELECT*FROM kwan.test_table_kwan;

四.性能监测

1.Serverless 配置入口

进入 PolarDB 的控制台,在基本信息页面,可以看到数据库节点选项,这个是配置 PolarDB Serverless 弹性扩缩容的地方。通过点击 Serverless 设置按钮,可以进入 Serverless 设置的页面。

2.节点资源配置

进入设置页面后,可以看到如下配置选项: 我们可以根据自己需要进行合适的设置。

  • 单节点资源弹升上限
  • 单节点资源弹升下限
  • 只读节点个数扩展上限
  • 只读节点个数扩展下限
  • 是否开启无活动暂停
  • 定时执行

3.Serverless 监控指标

在控制台的性能监控栏,我们可以对性能进行监控,主要监控指标如下图所示:

  • CPU 数量
  • PCU CPU 使用率
  • PCU 内存使用率

4.非 Serverless 监控指标

对于非 Serverless 监控指标,也可以进行监测,指标数据如图所示:

  • 连接(每秒活跃连接数)
  • QPS(每秒请求数)
  • TPS(每秒事务数)
  • MPS(每秒数据操作数)
  • 存储空间
  • 每秒 Redo 日志写入量

5.监控与报警

对于一个优秀的数据库,监控与报警是很有必要。PolarDB 在这一块做的非常好,人性化的加入了报警规则的自定义,以及自定义指标进行监控,只关注想要关注的指标,非常的人性化和实用。

  • 添加报警规则
  • 添加指标监控
  • 修改监控频率

报警规则:

监控指标:

五.常见问题

1.提示无权限

问题描述:在控制台执行 SQL,提示如图所示的没有权限。

CREATETABLE test_table_kwan_01 (

 id INTNOTNULLAUTO_INCREMENT,

 name VARCHAR(50)NOTNULL,

 age INTNOTNULL,

 PRIMARYKEY(id)

);

解决方案:

1.可以看到当前选择的库是 mysql 库系统库,我们需要选择我们创建的 kwan 库进入即可

2.查询的时候带上库名

CREATETABLEkwan.test_table_kwan_01 (

 idINTNOTNULLAUTO_INCREMENT,

 nameVARCHAR(50) NOTNULL,

 ageINTNOTNULL,

 PRIMARYKEY (id)

);

2.创建存储过程

首先先创建一个表

--  建表  带注释+创建时间

DROPTABLE`dim_bl_week_info`;

 

--   新建表

CREATETABLE`dim_bl_week_info`

(

   `id`                  int(11)NOTNULLAUTO_INCREMENTCOMMENT'自增主键',

   `week_start_day`      date    DEFAULTNULLCOMMENT'周开始',

   `week_end_day`        date    DEFAULTNULLCOMMENT'周结束',

   `financial_year_week`int(32)DEFAULTNULLCOMMENT'第n财年周',

   `financial_year`      int(32)DEFAULTNULLCOMMENT'财年',

   PRIMARYKEY(`id`)

)ENGINE=InnoDB

 DEFAULTCHARSET= utf8;

存储过程:

-- 使用前先删除存储过程,因为创建存储过程后,存储过程会一直存在于mysql中

DROPPROCEDUREIFEXISTS test_procedure_insert_week;

-- 标记上面的命令执行结束  --  声明;;为结束标志

DELIMITER;;

 

-- 创建存储过程

CREATEPROCEDURE test_procedure_insert_week()

BEGIN

   DECLARE

       i DATE;

   DECLARE

       next_year DATE;

   DECLARE

       week_count INT;

   DECLARE

       yearINT;

   DECLARE

       last_day DATE;

   SET

       i ='1970-03-01';

   SET

       week_count =1;

   SET

       year=YEAR(i);

   WHILE

       i <'2999-03-01'

       DO

           SET

               next_year = STR_TO_DATE(CONCAT((year+1),'-03-01'),'%Y-%m-%d');

           SET

               i =IF(i >= next_year, next_year, i);--  日期

           SET

               year=IF(i >= next_year,year+1,year);--  财年

           SET

               week_count =IF(i >= next_year,1, week_count);

           SET

               last_day =IF(DATE_ADD(i,INTERVAL6 DAY)>= next_year, LAST_DAY(i),

                             DATE_ADD(i,INTERVAL6 DAY));

           INSERTINTO`kwan`.`dim_bl_week_info`(week_start_day, week_end_day, financial_year_week, financial_year)

           VALUES(i, last_day, week_count,year);

           SET

               i = DATE_ADD(i,INTERVAL7 DAY);

           SET

               week_count = week_count +1;

       ENDWHILE;

END;;

DELIMITER;;

--   调用无参的存储过程,当然也可以设置参数,调用时也需要传递参数

CALL test_procedure_insert_week();

直接在 SQL 控制台执行会有问题,DMS 有些存储过程的语法不支持。

解决方案:

可以在可编程对象里面进行创建存储过程,然后在 SQL 控制台调用存储过程。

### 2.清理及后续

目前我们使用的是试用产品,有必要关注试用的到期时间,以及释放方法,避免造成不必要的浪费,在不使用的时候,及时释放 PolarDB 集群资源,释放方式如图所示。


相关文章
|
关系型数据库 分布式数据库 数据库
PolarDB 入门
PolarDB 入门
482 0
|
4月前
|
Linux 数据库
Linux 环境 Polardb-X 数据库 单机版 rpm 包 安装教程
本文介绍在CentOS 7.9环境下安装PolarDB-X单机版数据库的完整流程,涵盖系统环境准备、本地Yum源配置、RPM包安装、用户与目录初始化、依赖库解决、数据库启动及客户端连接等步骤,助您快速部署运行PolarDB-X。
1473 2
Linux 环境 Polardb-X 数据库 单机版 rpm 包 安装教程
|
存储 关系型数据库 分布式数据库
PolarDB 安装与配置 | 学习笔记
快速学习 PolarDB 安装与配置
PolarDB 安装与配置 | 学习笔记
|
7月前
|
SQL 关系型数据库 MySQL
开源新发布|PolarDB-X v2.4.2开源生态适配升级
PolarDB-X v2.4.2开源发布,重点完善生态能力:新增客户端驱动、开源polardbx-proxy组件,支持读写分离与高可用;强化DDL变更、扩缩容等运维能力,并兼容MySQL主备复制及MCP AI生态。
开源新发布|PolarDB-X v2.4.2开源生态适配升级
|
1月前
|
Ubuntu 算法 关系型数据库
Debian/Ubuntu 环境 PolarDB-X 单机版 DEB 包安装综合指南
本文整合阿里云文档,详解Ubuntu 18.04与Debian 10下PolarDB-X单机版安装:因官方仅提供RPM包,需用alien转DEB,但二者压缩格式不同(Ubuntu用zstd,Debian 10不支持),必须在目标系统本地转换,不可复用。含依赖处理、配置初始化及启动验证全流程。
540 19
|
6月前
|
关系型数据库 MySQL Java
开源PolarDB-X备份恢复操作实操
作者介绍: 付文革,航天壹进制(江苏)信息科技有限公司产品研发,专注于数据库备份,主攻MySQL相关数据库以及各种国产分布式数据库的备份恢复,主要使用Java 、Python、Shell等编程语言 航天壹进制(江苏)信息科技有限公司(简称航天壹进制)作为中国航天科工集团有限公司旗下上市公司航天工业发展股份有限公司的全资下属企业,专注于数据安全领域,自主研发并提供数据保护与业务连续性管理产品、解决方案及服务。
|
4月前
|
Ubuntu Linux 数据库
Linux 环境 Docker 安装 Polardb-X 数据库 容器 教程
本文介绍如何通过 Docker 快速部署 Polardb-X 数据库容器,实现一键启动。涵盖镜像拉取、容器运行、登录验证等步骤,操作简便,适用于快速开发与测试环境。附往期7篇主流系统安装教程。
1046 5
|
4月前
|
Ubuntu Java Linux
Linux 环境 Ubuntu 18.04.6 操作系统安装 Polardb-X 数据库 单机版 deb 包 教程
本文介绍在 Ubuntu 18.04 操作系统上通过DEB包安装PolarDB-X单机版的完整流程,涵盖环境准备、RPM转DEB、依赖安装、初始化配置及服务启动等步骤,助力快速部署运行。
446 7
|
负载均衡 监控 关系型数据库
利用ProxySQL构建PolarDB-X三节点高可用集群
作者介绍: 廖银华,重庆市中冉数字科技有限公司系统分析师; 邓海林,重庆市中冉数字科技有限公司项目经理; 何龙建,重庆远通电子技术开发有限公司信息系统项目管理师 作者聚焦数据治理中台架构设计与AI+业务深度融合实践,在数据质量、智能分析及高效数据处理等领域积累了扎实的实战经验,精通打造高效安全、稳定可扩展的数据中台解决方案
|
SQL 关系型数据库 分布式数据库
PolarDB开源数据库入门教程
PolarDB是阿里云推出的云原生数据库,基于PostgreSQL、MySQL和Oracle引擎构建,具备高性能、高扩展性和高可用性。其开源版采用计算与存储分离架构,支持快速弹性扩展和100%兼容PostgreSQL/MySQL。本文介绍了PolarDB的安装方法(Docker部署或源码编译)、基本使用(连接数据库、创建表等)及高级特性(计算节点扩展、存储自动扩容、并行查询等)。同时提供了性能优化建议和监控维护方法,帮助用户在生产环境中高效使用PolarDB。
3363 21

热门文章

最新文章