Greenplum 数据库按照指定 schema 恢复脚本

前言 Greenplum 作为OLAP 系统,通过在多个服务器或主机逐渐分配负载来存储和处理大规模业务数据。组成 Greenplum 数据库集群中的每一个计算节点是由独立的 PostgreSQL 实例构成。节点之间的通过 interconnect 相互通信来流转数据。Greenplum 数据库可以运行在多种 X86 架构的平台上,性能取决于安装平台的硬件。由于数据库数据分布在每一个 PostgreSQL 实例中,因此,单个 PostgreSQL … [Read more...]

Mysql 8.0 OGG21C 安装使用

OGG安装 环境介绍,为了节省资源OGG我选择和原库安装在了同一台服务器 1.1 解压ogg的安装包 上传并解压mysql ogg安装包,无需安装解压即可使用 # mkdir /ogg # unzip 213000_ggs_Linux_x64_MySQL_64bit.zip # tar -xvf ggs_Linux_x64_MySQL_64bit.tar 1.2 Mysql数据库配置 源库配置 OGG21C可以使用基于日志的DDL复制,要求添binlog_row_metadata为full模式才可以实现   # vi /etc/my.cnf [mysqld] datadir=/usr/local/mysql/data basedir=/usr/local/mysql socket=/tmp/mysql.sock user=mysql port=3306 character-set-server=utf8mb4 symbolic-links=0 server_id = 1 log_bin = mysql-bin expire_logs_days = 1 binlog_format = … [Read more...]

PostgreSQL 之慢 SQL 语句

一 导读 优化在硬件和非系统故障的情况下,对于提升数据库本身的性能非常重要。每一种类型的数据库都有自己不同的方式去跟踪优化数据库,这些方式中不仅仅包含了数据库系统本身参数层面的优化,而且也包括对 SQL 语句的优化。其中,对于 SQL 语句的优化是 DBA 经常需要接触的工作。因此需要经常关住慢 SQL 语句,以对其进行追踪优化。 二 数据库参数 PostgreSQL 中的慢 SQL 追踪是通过以记录日志的方式进行分析,追踪的,因此,需要优化 SQL 需要启动日志收集功能。以 RPM 方式安装的数据库日志收集功能默认是打开的,以源码编译的方式安装的数据库日志收集功能是关闭的。 启动日志收集功能 postgres=# show logging_collector ; logging_collector ------------------- off (1 row) postgres=# alter system set logging_collector = on; ALTER … [Read more...]

详解Oracle 21c 中的只读Oracle主⽬录特性 (ROOH)

1. 只读Oracle主⽬录特性(ROOH)介绍 当我们安装完成Oracle Database 21c 数据库软件后,发现ORACLE_BASE⽬录中出现了dbs和 homes⽬录,其实这是只读Oracle主⽬录特性(ROOH)特性所带来的变化。如下所示 只读Oracle主⽬录特性(ROOH)是在 Oracle Database 18c 中引⼊的,从 Oracle Database21c 开始,该特性是安装Oracle数据库软件后的唯⼀默认配置。在只读 Oracle 主⽬录配置模式下,数据库运⾏时所有需要写⼊的⽂件都会移出ORACLE_HOME,如:实例相关⽂件,⽹络配置⽂件,运⾏时⽣成的⽇志⽂件等。留在ORACLE_HOME ⽬录中的Oracle软件部分在运⾏时是只读的。简单来说,通过只读Oracle主⽬录的特性,可以将数据库运⾏⽂件和数据库配置⽂件分开,这样我们就可以很轻松的替换数据库运⾏⽂件了。⽐如使⽤“Golden … [Read more...]

PostgreSQL 常见时间日期处理

前言 在实际业务开发过程中,通常会遇到对时间日期相关的处理,这里列出一些常见的时间日期处理方法。 1. 时间戳带时区和不带时区 创建表字段时,指定带时区时间日期数据类型 postgres=# CREATE TABLE tab_test(id serial,app_name varchar,app_release_date timestamp with time zone default now()); CREATE TABLE postgres=# INSERT INTO tab_test VALUES(1,'app'); INSERT 0 1 postgres=# select * from tab_test; id | app_name | app_release_date ----+----------+------------------------------- 1 | app | 2021-10-11 15:24:05.730805+08 (1 row) 修改表字段为不带时区的数据类型 postgres=# alter table tab_test alter column app_release_date set data type timestamp without time zone; ALTER TABLE postgres=# alter table tab_test alter column app_release_date set default now(); ALTER TABLE postgres=# insert into tab_test values(2,'app2'); INSERT 0 1 postgres=# select * from tab_test; id | app_name | … [Read more...]

掌握TiUP工具 之 离线部署TiDB集群

TiDB数据库    传统的单机数据库在移动互联网、云计算、大数据和人工智能等场景下表现的力不从心,为了解决数据平台的扩展性的问题,TiDB 分布式数据库应运而生。TiDB 是当今开源 NewSQL 数据库领域的代表产品之一。TiDB采用分布式数据库架构,因此服务器数量比较多。在部署TiDB集群时,我们使用TiUP工具来安装整个TiDB集群环境。 从 TiDB 4.0 版本开始,TiUP 作为新的工具,承担着包管理器的角色,管理着 TiDB 生态下众多的组件,如 TiDB、PD、TiKV 等。用户想要运行 TiDB 生态中任何组件时,只需要执行 TiUP 一行命令即可,相比以前,极大地降低了管理难度。   默认情况下TiUP工具会联网进行工具包的下载和安装,但生产环境往往都是内网环境,无法连接外网进行下载。这种情况下,我们可以选择离线的部署方法。本文以 TiDB 5.0 … [Read more...]

掌握TiUP工具 之 启停TiDB集群节点

TiUP工具简介 从 TiDB 4.0 版本开始,TiUP 作为新的工具,承担着包管理器的角色,管理着 TiDB 生态下众多的组件,如 TiDB、PD、TiKV 等。用户想要运行 TiDB 生态中任何组件时,只需要执行 TiUP 一行命令即可,相比以前,极大地降低了管理难度。 使用TiUP工具可以很轻松的对TiDB集群进行日常运维工作,如果我们想启停TiDB集群中的某一台服务器,可以使用文章中的操作流程。 停止TiDB集群节点 首先使用 "tiup cluster display "命令查看TiDB集群信息,ID列显示的 IP:PORT 可以作为节点名称使用,执行过程如下: 接下来,可以参考停止集群命令 “tiup cluster stop -h"的帮忙信息,来得到停止某一台服务器的命令语法,从帮助中可以看到使用 -N 选项就是我们需要的功能,执行过程如下: 了解了命令后,接下来停止"192.168.2.81:2379"这台PD节点服务器,命令为:“tiup … [Read more...]

MySQL 有关用户密码

MySQL 介绍 MySQL 是由Oracle Corporation 开发和发行的最流行的数据库管理系统。MySQL 网站地址为: www.mysql.com,提供最新的MySQL软件包及相关工具的下载。MySQL 是一个数据库管理系统,数据库是由数据的集合构成。MySQL 是关系型数据库,关系型数据库存储数据在单独的一系列表中,而不是将数据存储在一个大的存储空间中。数据库的结构是被组织在快速的优化后的物理文件中。逻辑模型和对象如数据库、表、视图、行和列,提供了灵活的编程环境。MySQL 的 SQL 部分是标准的 "Structured Query Language"。SQL 是用来访问数据库的最标准的语言。当然,取决于你的编程环境。 安装 MySQL 使用 rpm 或者 yum 方式安装将会自动创建一个 mysql 普通操作系统用户。在当前 redhat 家族操作系统中,已经不再提供 mysql 安装包了,如果使用 yum … [Read more...]

记一次oracle HAIP引发的数据库问题

一、客户背景 前不久客户找到我跟我说他们新实施的两套oracle 12CRAC数据库补丁不能成功打上让我帮忙解决一下前往客户现场,客户系统为IBM AIX7.2,数据库为oracle12.2.0.1补丁是2021年4月份的补丁,采用了双心跳,客户已经将一节点GI补丁安装,二节点装不上,我尝试使用opatch auto二节点可以正常安装该补丁当时并没有注意集群的状态,第二天客户又找到我说集群状态不正常。 二、问题处理分析过程 1、登录数据库服务器查看集群状态发现只有一个节点ASM磁盘是在线状态 2、经过多次尝试关闭一边另一边ASM可以正常启动,只有一边能启动的情况两节点ASM实例无法同时启动,排查ASM日志发现ASM最后报错为 No connectivity to other instances in the cluster during startup. Hence, LMON is terminating the instance. Please check the LMON trace file for details. Also, please check the … [Read more...]

使用TIDB BR工具进行数据库备份

下载tidb工具包 注意下载的版本,我选择现装到tidb节点 [root@tidb ~]# wget https://download.pingcap.org/tidb-toolkit-v5.0.2-linux-amd64.tar.gz   创建备份目录 注意:请在执行备份命令的节点及所有KV节点创建备份目录,本地节点会存放备份产生的锁文件, tidb是多副本结构,所以每一个存放数据的kv节点都会产生备份。 [root@kv1 /]# mkdir /bakcup [root@kv1 /]# chmod 777 /bakcup/     全库备份 注意:PD节点IP和目录根据自己实际情况填写 [root@tidb bin]# ./br backup full --pd "10.0.0.201:2379" --storage "local:///backup" --ratelimit 120 --log-file backupfull.log   … [Read more...]