自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(46)
  • 收藏
  • 关注

转载 postgresql 查看锁的sql

SELECT locker.pid,          pc.relname,          locker.mode,          locker_act.application_name,          least(query_start,xact_start) start_time,          locker_act.state,          C

2017-11-30 10:38:56 6154

转载 PostgreSQL 只读模式 , hot standby recovery 模式

背景有些时候,我们可能需要将数据库变成只读模式,或者提供一些只读账号。比如需要给开发人员一些自由查询功能的账号,或者当数据库用了多少空间后,将其锁定为只读模式。让数据库进入只读有几种方法,弱只读的方法,设置默认事务为只读,这种方法只能实现弱只读,因为用户可以在会话中改成写模式。进入recovery模式,并开启hot_standby。如果要让某个用户只读,建议使用权限控制的方法,比如只赋予sel

2017-11-28 15:39:30 5402

转载 PostgreSQL pg_dump&psql 数据的备份与恢复

Usage: pg_dump [OPTION]… [DBNAME] 数据库名放最后,不指定默认是系统变量PGDATABASE指定的数据库。General options:(一般选项)-f, –file=FILENAME output file or directory name导出后保存的文件名-F, –format=c|d|t|p output file f

2017-11-09 16:36:20 1497

转载 “软链接”和“硬链接”的区别

什么是链接?链接简单说实际上是一种文件共享的方式,是 POSIX 中的概念,主流文件系统都支持链接文件。它是用来干什么的?你可以将链接简单地理解为 Windows 中常见的快捷方式(或是 OS X 中的替身),Linux 中常用它来解决一些库版本的问题,通常也会将一些目录层次较深的文件链接到一个更易访问的目录中。在这些用途上,我们通常会使用到软链接(也称符号链接)。软链接和硬链接的区别是?下面我们进

2017-10-30 17:29:13 506

转载 PostgreSQL:什么情况会触发 WAL 日志归档?

方法一:手动切换 WAL 日志PostgreSQL 提供 pg_switch_xlog() 函数可以手工切换 WAL 日志,如下:–手动归档 [pg93@redhatB ~]$ psql shpsql (9.3.0) Type “help” for help. postgres=# select pg_switch_xlog(); pg_switch_xlog

2017-10-25 09:59:10 1265

转载 PostgreSQL流复制参数max_wal_senders详解

环境:PostgreSQL 9.2.4 主机:192.25.10.76 从机:192.25.10.71 做postgresql的流复制主从时,会遇到调整max_wal_sengers这个参数,官方文档对这个参数做了一个简要的说明(9.2.4比早先版本多了几句话并做了一些微调),但没有实际的例子。1.参数说明: Specifies the maximum number of concurr

2017-10-16 11:00:37 3745

转载 postgresql参数wal_level

wal_level中有三个主要的参数:minimal、archive和hot_standby 1.minimal是默认的值,它仅写入崩溃或者突发关机时所需要的信息(不建议使用)。 2.archive是增加wal归档所需的日志(最常用)。 3.hot_standby是在备用服务器上增加了运行只读查询所需的信息,一般实在流复制的时候使用到。

2017-10-13 12:01:19 3774

转载 postgresql wal日志部分参数

fsyncfsync :控制wal日志刷新是否开启刷新到磁盘,此参数控制wal_sync_method参数的刷新方法,如果fsync为off,则wal_sync_method的方法是没有意义的, 如果没开启这个参数,则可能由于wal日志块没有刷新到磁盘永久存储而导致故障发生后实例出现块折断(oracle称其为block curruption)wal_sync_methodwal_sync_meth

2017-10-13 11:56:18 2414

转载 postgresql参数full_page_writes详解

full_page_writes作用:是否开启全页写入,此参数是为了防止块折断(块损坏)的一种策略。造成块折断的原因:linux操作系统文件系统一个块一般是4k,而数据库则一般是一个块8k,当数据库的脏块刷新到磁盘上时,由于底层是两个块组成的,比如刷第一个操作系统块到磁盘上了,而当刷第二个操作系统块的时候发生了停电等突然停机事故,则就发生了块折断(数据块是否折断是根据块的checksum值来检查的)

2017-10-13 11:47:31 2061

转载 postgresql参数synchronous_commit详解

synchronous_commit:同步提交参数, 控制事务提交后返回客户端是否成功的策略 可选值为:on, remote_write, local, offon 1 为on且没有开启同步备库的时候,会当wal日志真正刷新到磁盘永久存储后才会返回客户端事务已提交成功, 2 当为on且开启了同步备库的时候(设置了synchronous_standby_names),必须要等事务日志刷新到

2017-10-13 11:31:52 8009

转载 postgresql日志补充

log基础参数:log_destination = ‘stderr’ logging_collector = on log_directory = ‘pg_log’ —可自定义路径 log_filename = ‘postgresql-%Y-%m-%d_%H%M%S.log’ —日志文件名 log_line_prefix = ‘%t-%d-%h-%a

2017-10-12 17:31:08 539

转载 postgresql事物隔离级别以及MVCC

获取当前事物XID:SELECT txid_current();事务的操作命令BEGIN; –开启事务–事务隔离级别,定义多个事务时间的隔离级别 BEGIN TRANSACTION ISOLATION LEVEl [READ COMMITTED/REPEATABLE READ/SERIALIZABLE]; –一次启动事务并指定事务隔离级别 BEGIN; TRANSACTION I

2017-10-12 14:46:52 1123

转载 tar中的参数 cvf,xvf,cvzf,zxvf的区别

tar cvf etcbak.tar etc/  打包一个tartar xvf etcbak.tar         解开一个tartar cvzf etcbak.tar.gz etc/ 打包压缩一个 tartar zxvf etcbak.tar.gz  解压一个tar

2017-10-12 10:26:11 76876 5

转载 Postgres访问其他PostgresQL数据库的功能DBLINK

转自:http://blog.csdn.net/hantiannan/article/details/7553108有时候的业务需要参照其他数据库的数据。 我们可以在程序中分别从两个数据库中取值然后处理。但这样开发效率和性能都不是很好。 如果两个数据库都是PostgreSQL的话,用扩展的DBLINK功能非常简单。 比如一个数据db1,db2。首先需要把db1加入dblink扩展。示例1:取得

2017-10-11 18:05:02 1616

转载 Postgresql保存点(savepoint)功能

PG数据库保存点PG数据库支持保存点(savepoint)功能,在比较大的事务中,可以把执行过程分为几个步骤,每个步骤执行完成后创建一个保存点,后续步骤执行失败时,可回滚到之前的保存点,而不必回滚整个事务。示例如下: TEST=# select * from test; id | value1 | value2 —-+——–+——– 1 | 1 | 1

2017-10-11 17:47:32 3488

转载 postgresql修改表

转载自官方文档:5.5. 修改表如果你创建了一个表后发现自己犯了一个错误,或者是应用的需求发生了变化,那么你可以删除这个表然后重新创建它。但是如果这个表已经填充了许多数据,或者该表已经被其它数据库对象引用(比如一个外键约束),那这可不是一个方便的方法。因此 PostgreSQL 提供了一族命令用于修改现有表。请注意它在概念上和修改一个表中包含的数据是不一样的:这里我们感兴趣的是修改一个表的定义,或者

2017-10-11 17:02:09 989

转载 postgresql 的三种日志

pg_log该文件夹中的日志一般用来记录服务器与DB的状态,如各种Error信息,定位慢查询SQL,数据库的启动关闭信息,发生checkpoint过于频繁等的告警信息等。linux自带的路径一般在/var/log/postgres下面。该日志有.csv格式和.log。这种日志是可以被清理删除不影响DB的正常运行。 当我们有遇到DB无法启动或者更改参数没有生效时,第一个想到的就是查看这个日志。 pg

2017-10-11 15:45:57 869

原创 postgresql查看用户连接以及杀死连接的会话

连接数大小参数:max_connection查看连接总数: select count(*) from pg_stat_activity;查看所有连接的用户: select * from pg_stat_activity;结果集会显示当前连接的数据库名、用户、IP地址、开始时间、等待事件、查询语句等 pg_stat_activity其实是一个视图。结束连接的进程pg_terminate_

2017-10-11 15:21:18 38324

转载 PostgreSQL备份与恢复示例

一、简介Postgresql的备份分为三种: ·SQL转储 ·文件系统级别备份(冷备份) ·在线热备份(归档) 以下通过实例来讲解PostgreSQL的三种备份。二、 SQL转储pg_dump1,创建数据库 createdb pg 2,连入数据库pg psql pg 3,创建测试表,插入数据 pg=# create table pg_test(a int); pg=# in

2017-10-10 17:07:04 2322

转载 Postgresql数据库导入和导出CSV格式

Postgresql数据库导入和导出CSV格式1、生成csv格式文件样式2tank11313zhang11324tom10335gao11346tank12357zhang13

2017-10-10 16:54:59 17325 2

转载 PostgreSQL ALTER TABLE中改变数据类型时USING的用法

在修改表字段类型的时候使用Using来进行显示的转换类型。原文说明:SET DATA TYPE   This form changes the type of a column of a table. Indexes and simple table constraints involving the column willbe automatically converted to use th

2017-09-14 17:11:59 1585

转载 postgresql 常用命令

用户实用程序:createdb 创建一个新的PostgreSQL的数据库(和SQL语句:CREATE DATABASE 相同) createuser 创建一个新的PostgreSQL的用户(和SQL语句:CREATE USER 相同) dropdb 删除数据库 dropuser 删除用户 pg_dump 将PostgreSQL数据库导出到一个脚本文件 pg_dumpall 将所有

2017-09-12 16:52:12 559

原创 解决postgresql远程连接报错

下载使用第三方软件Navicat for PostgreSQL管理postgresql。 连接时navicat报错: could not connect to server:Connection refused (0x0000274D/10061)解决方法:1.关闭postgresql服务 [postgres@server2 data]$./pg_ctl -D /opt/pgsql/data

2017-09-12 14:55:46 4609

原创 PostgreSQL 二进制安装步骤

linux版本中使用自定义的二进制安装

2017-09-12 10:45:30 2522

转载 PostgreSQL Daily Maintenance - reindex

Reindex日志维护 随着DML的发生, 索引会出现碎片. 持续膨胀. 降低效率. 虽然PostgreSQL有vacuum机制, 但是索引不像heap表, vacuum后的dead tuple占用的空间可以被马上回收复用, 以b-tree索引为例, 一个b-tree page只有当所有的item全部变成不可用后这个page才能被复用. 所以索引膨胀的概率比表大很多. 例一 : digoal

2017-09-11 17:43:33 773 1

转载 【SSH项目实战】脚本密钥的批量分发与执行

–本教学笔记是本人学习和工作生涯中的摘记整理而成,此为初稿(尚有诸多不完善之处),为原创作品,允许转载,转载时请务必以超链接形式标明文章原始出处,作者信息和本声明。否则将追究法律责任。http://www.cnblogs.com/chensiqiqi/【企业案例】公司来了8台新服务器,计划组成一个小规模集群架构;其中有一台服务器作为批量管理服务器使用,其余7台则是业务架构所需。现在先由你来负责服务器

2017-08-30 23:31:04 1462

原创 python对日志按天分割

access 按天分割

2017-08-28 10:07:41 4244 2

转载 服务器性能优化的正确姿势

导言:运维工作中除了要维持平台的稳定运行以外,还得对服务器的性能进行优化,让服务器发挥出良好的工作性能是稳定运行的基础。腾讯互娱DBA团队的汪伟(simon)在这一领域里整理出了一套性能优化的资料为大家在性能优化提供充足的方向。概  述什么是性能?性能最通俗的衡量指标就是“时间”,CPU的使用率指的是CPU用于计算的时间占比,磁盘使用率指的是磁盘操作的时间占

2017-08-25 09:03:08 5509

原创 mysql单表恢复--测试

mysql单表恢复

2017-08-17 14:41:58 1511

原创 使用ansible yum依赖包,报错No module named yum

全新测试机安装ansible,对其他测试机进行部署。 上一篇说了安装python时缺少依赖包决问题,本篇介绍yum和ansible对python版本的依赖关系。 安装python2.7以后,使用whereis python可以看到python有2.6 和2.7两个版本。 ~]# whereis python python: /usr/bin/python2.6 /usr/bin/

2017-08-16 10:48:12 2343

转载 Python build finished, but the necessary bits to build these modules were

缺少依赖包

2017-08-15 09:06:16 6392 2

转载 MySQL redo log及recover过程浅析

InnoDB redo log首先介绍下Innodb redo log是什么,为什么需要记录redo log,以及redo log的作用都有哪些。这些作为常识,只是为了本文完整。InnoDB有buffer pool(简称bp)。bp是数据库页面的缓存,对InnoDB的任何修改操作都会首先在bp的page上进行,然后这样的页面将被标记为dirty并被放到专门的flush list上,后续将由maste

2017-08-14 15:59:33 844

原创 sql中where 1=1

Q: 在查询线上数据的时,经常会遇见sql的where条件中含有1=1。1=1是永真条件,在sql中写不写都没有什么影响,那么为什么会经常遇见写的情况呢?A: 1=1一般用于构建动态sql语句,select … from … where 1=1 “+动态构造条件子句”保证where后不直接跟and,防止语法出错。

2017-08-14 14:36:55 668

原创 MySQL 清除表空间碎片

mysql清除表空间碎片

2017-08-14 10:16:49 550

转载 MySQL出现Waiting for table metadata lock的原因以及解决方法

metadate lock

2017-08-11 16:37:36 821

转载 MySQL存储过程和函数的区别与优缺点

什么是存储过程和函数:存储过程可以简单的理解为一条或者多条sql语句的集合。函数数通常是数据库已定义的方法。存储过程和函数事先进行过编译。存储过程和函数执行不是由程序调用,也不是手动启动。而是由事件触发、激活从而实现执行。存储过程和函数的区别1.一般来说存储过程实现的功能要复杂一些,函数实现的功能针对性较强。存储过程功能强大,可以执行包括修改表等一系列数据库操作;用户定义函数不能用于执行一组修改全局

2017-08-10 15:24:00 1931

原创 varcahr、char、int、decimal、double、round()、floor()、ceiling()

round(),floor(),ceiling()函数的区别....

2017-08-10 11:10:56 707

原创 python行列转换脚本编写

python行列转换脚本编写

2017-08-10 09:27:35 1568

转载 TPS和QPS的区别

TPS和QPS的区别一、TPS:Transactions Per Second(每秒传输的事物处理个数),即服务器每秒处理的事务数。TPS包括一条消息入和一条消息出,加上一次用户数据库访问。(业务TPS = CAPS × 每个呼叫平均TPS) TPS是软件测试结果的测量单位。一个事务是指一个客户机向服务器发送请求然后服务器做出反应的过程。客户机在发送请求时开始计时,收到服务器响应后结束计时,以此来

2017-08-10 08:39:18 672

转载 LRU在MySQL缓存池的实现

LRU

2017-08-10 08:31:08 1189

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除