PostgreSQL中的ACID特性介绍

任何关系型数据库中,ACID 是组成数据库的重要部分,是数据库事务的一组属性,该特性目的主要确保数据库在异常情况下保证数据的有效性。 数据库ACID特性 A(Atomicity) 原子性: 事务通常由多个语句组成。原子性保证将每个事务视为单个单元,该事务要么完全成功,要么完全失败。换句话说,如果在一个事务中,任何语句都未能完成,整个事务都会失败,未完成事务中的数据条目在数据库中保持不变。一个原子系统必须保证在任何情况下都具有原子性,包括电源故障,数据库错误和实例奔溃。同时,原子性可以防止在数据库中发生部分数据更新的情况。举一个例子,假设用户USER1 和 USER2 之间进行转账。这之间会进行两个动作,第一个动作,从USER1 账户中划钱;第二个动作,将从USER1账户中划拨的钱保存到 USER2 … [Read more...]

PostgreSQL之SQL函数介绍及实践(二)

RDBMS作为管理数据安全,共享,可靠的软件管理系统,需要按照不同的数据模型组织和存储数据,为了方便用户处理数据,任何数据库为了简化业务开发复杂度,提供了丰富的不同数据类型的处理函数。而PostgreSQL除了支持 SQL 标准所支持的函数外,也可以使用不同的服务器编程接口来实现自定义函数,以针对不同的业务需要进行针对性开发。今天来给大家介绍一下PostgreSQL中的字符串处理函数。 一、字符串处理函数 1.1字符串操作符 PostgreSQL对于字符串的操作符,支持关系型数据库中通用的符号 ||,用来多个字符串之间或者空字符和多个字符串之间的连接。 示例: <strong style="font-family: Verdana, Arial, Helvetica, sans-serif;">[cce_js] <pre class="ql-syntax" spellcheck="false">hrdb=# -- || 为字符串连接操作符 hrdb=# SELECT 'Postgre' || 'SQL' AS result;   result … [Read more...]

重磅重磅,IT类证书能退税啦!!!

[Read more...]

PostgreSQL之SQL操作符介绍及实践

操作符是数据库具有的运算特性,对文本字符和一些标签字符的处理,使用操作符可以简化SQL代码,同时也可以节省开发时间和提高开发效率。比较操作符 在PostgreSQL中,所有的数据类型都可以使用比较操作符,比较操作符运算结果返回一个布尔值。即 TRUE 或者 FALSE。比较操作符为双目操作符,因此被比较的两个值的数据类型必须是相同的数据类型或者在彼此之间可以进行隐式类型转换。在PostgreSQL中,提供的比较操作符有 > 、< 、<= 、>= 、= 、<> 或者 != 。在 PostgreSQL中,类似 a > b > c的操作是非法的,因为布尔值和数值之间无法做比较。示例: <code><span class="code-snippet_outer">hrdb=<span class="code-snippet__comment"># SELECT 1 > 2 AS result;</span></span><span class="code-snippet_outer"> result </span><span … [Read more...]

12c OMS 日志&目录结构

以下是在 OMS 上安装的一些重要的目录:1、Middleware Weblogic home:也称为<MW_HOME>,这是安装10.3.5 Weblogic 软件的目录。2、Oracle Management Service Instance Base:也称为<EM_INSTANCE_BASE>或<EM_CONFIG_HOME>,这是一个目录,默认情况下名为gc_inst,位于<MW_HOME>下。3、Oracle Management Service home:也称为<OMS_HOME>,这是安装12c OMS 软件的位置,是 <MW_HOME> 下的目录4、Oracle Management Service Instance home directory:也称为<EM_INSTANCE_HOME>,是EM实例创建的位置,是 gc_inst 目录下的一个目录5、Middleware Common home directory:该目录包含一些常用工具,如 Opatch、local inventory 等。6、Middleware WebTier Home:包含OPMN和HTTP服务器软件,安装在Middleware Home下的位置。7、Middleware WebTier Instance … [Read more...]

plpgsql系列教程—函数

函数声明 通过执行CREATE FUNCTION命令,以PL/pgSQL写成的函数可以被定义到服务器中。 CREATE or REPLACE FUNCTION somefunc(integer, text) RETURNS integer AS 'function body text' LANGUAGE plpgsql; PL/pgSQL是一种块结构的语言。一个块被定义为: [ ] [ DECLARE declarations BEGIN statements END [ label ]; 目前CREATE FUNCTION函数体就是简单的一个字符串。通常在写函数体时,使用美元符号引用通常比使用普通单引号语法更有帮助。如果没有美元引用,函数体中的任何单引号或者反斜线必须通过双写来转义。 推荐写法如下: CREATE FUNCTION somefunc(integer, text) RETURNS integer AS $$ DECLARE BEGIN END; $$ LANGUAGE … [Read more...]

基于Pgpool搭建PostgreSQL11的集群

基于Pgpool-II4.1.0搭建PostgreSQL11集群 Pgpool介绍 pgpool相关介绍不在该文章中,需要者可以参考我的另一篇文章。传送门:pgpool介绍 环境准备 本次使用三台CentOS7.3的服务器来搭建集群,首先在三台服务器上部署PostgreSQL11.6版本的数据库,部署教程大家可以网上自行查找。具体规划如下: 架构图参考官网: 搭建配置 01服务器配置 故障转移、在线恢复时需要ssh到其它服务器执行命令,故需要配置服务器之间无密码ssh登录(如服务器之间已经配置ssh可以跳过该节,但是需要修改failover.sh等脚本) [all servers]# cd ~/.ssh [all servers]# ssh-keygen -t rsa -f id_rsa_pgpool [all servers]# ssh-copy-id -i id_rsa_pgpool.pub postgres@server1 [all servers]# ssh-copy-id -i id_rsa_pgpool.pub postgres@server2 [all servers]# ssh-copy-id -i id_rsa_pgpool.pub postgres@server3 [all … [Read more...]

Oracle Linux 7使用syslog来管理Oracle ASM的审计文件

如果不对 Oracle ASM 实例的审计文件目录进行定期维护那么它将会包含大量的审计文件。如果存在大理审计文件可能会造成文件系统耗尽磁盘空间或 indoes,或者由于文件系统扩展限制而造成 Oracle 运行缓慢,还有可能造成Oracle ASM 实例在启动时 hang 住。 使用 Linux syslog 工具来管理 Oracle ASM 审计记录是一个很好的解决方案,通过使用操作系统的 syslog 工具来代替单独的 audit_dump_dest 目录来记录 Oracle ASM 审计记录。 1、对Oracle ASM实例设置audit_syslog_level与audit_sys_operations参数SQL>show parameter audit_sys_ NAME TYPE VALUE ---------------------------- -------------- ------------ audit_sys_operations boolean TRUE audit_syslog_level string SQL> alter system set AUDIT_SYSLOG_LEVEL='local0.info' scope=spfile sid='*'; System altered. SQL> 由于 audit_sys_operations 参数默认为 … [Read more...]

如何获得Oracle建议的Patch?

当Oracle 相关产品安装完成以后,我们会安装相应的修补程序,俗称为打Patch。而Oracle补丁的种类也是非常多,版本也是经常改变。及时的选择正确和适合的Patch也成为了一个非常有技术含量的工作。因此Oracle也为大家准备了一套 "推荐的补丁" 内容,该文档可以在MOS找到,名称为:Introduction to Oracle Recommended Patches (Doc ID 756388.1),通过此文章使客户可以更轻松地获取和部署针对目标环境和配置中遇到的已知关键问题的修复程序。   文档摘要 推荐的修补程序适用于下列产品。 有关详细信息,请查阅My Oracle Support说明。 当Oracle宣布其他Oracle产品的推荐补丁程序时,本说明将进行更新。 Product My Oracle Support Note Oracle Database Note:756671.1 Oracle Enterprise Manager Note:822485.1 Oracle Fusion Middleware Note:859115.1 Oracle Elastic Exalogic Cloud … [Read more...]

通过Real-Time SQL Monitoring来监视SQL语句

Oracle 11g数据库或更高版本具有一个新界面来监视长时间运行的SQL命令。该功能称为实时SQL监视。默认情况下,当SQL命令并行运行时,或者一次执行消耗了至少五秒钟的CPU或I / O时间时,将自动启动SQL监视。 MONITOR的SQL提示(hint)还可用于打开SQL语句的SQL监视。 SQL监视要求: 诊断和调整包许可证 STATISTICS_LEVEL参数将设置为 “TYPICAL” 或 “ALL” CONTROL_MANAGEMENT_PACK_ACCESS参数设置为 “DIAGNOSTIC + … [Read more...]