自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Silence Ray的博客

不忘初心,方得始终

  • 博客(100)
  • 资源 (1)
  • 收藏
  • 关注

原创 postgresql数据库缺少排序规则

pg数据库的排序规则是依赖于操作系统的,数据库缺少排序规则的时候会影响导入表的创建。数据库需要重新初始化data目录才生效 --initdb。数据库中可以通过查看pg_collation表来查看。操作系统可以通过locale -a命令来查看。操作系统缺少需要的排序方式时,安装依赖包。如下图表中使用了aa_DJ的排序方式。

2023-12-01 10:06:34 255

原创 pacemaker+corosync+pg13

pacemaker+corosync+pg13的搭建大体内容可以参考上一篇的pacemaker+corosync+pg11的搭建,对于pg13的或者说是pg12以及以上版本,需要更新resource-agents。查看/usr/lib/ocf/resource.d/heartbeat/psql中的地1918行,看版本是否支持pg12以上。如果使用pg12以上的版本的话,需要把resource-agents升级一下,安装一个支持pg12以上的版本。安装resource-agents-4-11。

2022-12-23 14:16:03 955

原创 pacemaker+corosync 搭建一主两从PG集群

pacemaker+corosync 搭建一主两从PG集群

2022-09-29 17:53:29 1909

原创 postgresql版本升级方式:利用逻辑复制

数据库版本pg10升级到pg11.51.修改旧版本数据库的参数(需要重启数据库)wal_level = logical ​max_replication_slots = 8 ​max_wal_senders = 10 2.导出旧版本的表结构pg_dump -d test -s >/data/test.sql3.查询迁移的数据库中没有主键的表--检查同步的数据库是否有主键(pg10及以下版本)​SELECT nspname || '.' ||reln..

2021-10-29 17:33:19 507

原创 postgresql插件之mysql_fdw

1.安装mysql和pg数据略过2.安装mysql_fdw[root@slt032qws38 dbadmin]# unzip mysql_fdw-master.zip[root@slt032qws38 dbadmin]# cd mysql_fdw-master/[root@slt032qws38 mysql_fdw-master]# export PATH=/data/postgres/bin/:$PATH[root@slt032qws38 mysql_fdw-master]# ex

2021-10-19 15:14:26 741

原创 postgresql兼容oracle插件orafce

orafce插件是postgresql兼容oracle的插件,安装了以后,pg能够兼容oracle的一些数据类型和表。下载地址:https://pgxn.org/dist/orafce环境:centos7.4数据库:pg12.3orafce:3.13安装[postgres@node1 ~]$ unzip orafce-3.13.4.zip [postgres@node1 ~]$ cd orafce-3.13.4/[postgres@node1 orafce-3.13.4]$ ma

2021-08-02 14:47:23 1371

原创 基于patroni+etcd的postgresql高可用搭建

1.环境centos 7.4postgresql 10.5物理ip192.168.199.240 (node1)192.168.199.241 (node2)192.168.199.242 (node3)vip192.168.199.248192.168.199.2492.安装patroni和ectdyum install -y gcc python-devel epel-releaseyum install -y etcdyum instal

2021-04-26 10:21:53 568

原创 postgresql利用事件触发器记录表的创建和删除时间

postgresql数据库在创建表的时候不会像oracle一样,会有地方表的创建时间,pg并不会记录表的创建时间,只会在log日志中记录,如果是好久之前的日志,刚好已经被清理掉,那么要审计或者通过表的创建时间来排查问题会变的很困难然而在postgresql中有一种触发器,叫做事件触发器,可以通过这个来记录表的创建和删除时间等。1.创建一个事件触发器,记录所有的drop table操作用于事后审计记录删除的事件触发器,利用到了一个系统函数pg_event_trigger_dropped_objec

2021-03-29 11:26:15 713 1

原创 pg_repack安装及使用

[postgres@node2 ~]$ lltotal 248drwxrwxr-x 8 postgres postgres 184 Oct 4 2019 pg_repack-1.4.5-rwxr--r-- 1 postgres postgres 125523 May 28 15:23 pg_repack-1.4.5.zip[postgres@node2 ~]$ cd pg_repack-1.4.5/[postgres@node2 pg_repack-1.4.5]$ lltotal 1...

2021-01-18 21:31:50 2206 1

原创 postgresql中DROP OWNED BY user_name对普通用户和只读用户的区别

1.首先建立一个普通用户,普通用户建立schema,并在schema下建表DROP OWNED BY user_name;postgres=# create user test with password 'test@123';CREATE ROLEpostgres=# create schema test authorization test;CREATE SCHEMApostgres=# grant select,insert,update,delete on all tables in

2020-12-29 11:33:36 611

原创 postgresql的加密扩展插件pgcrypto

近期测试了一下postgresql的加密扩展插件pgcrypto的aes加密安装加密扩展插件:pgcrypto在主节点上安装create extension pgcrypto;aes加解密函数简单介绍encrypt(data bytea, key bytea, type text) --加密decrypt(data bytea, key bytea, type text) --解密data 是需要加密的数据;type 用于指定加密方法ASE方式加密:select encr

2020-12-02 14:45:30 2327

原创 Linux下mysql配置主从报错Last_IO_Error: Got fatal error 1236 from master when reading data from binary log:

mysql配置主从时,查看从库状态报错:Last_IO_Error: Got fatal error 1236 from master when reading data from binary log: 'log event entry exceeded max_allowed_packet; Increase max_allowed_packet on master; the first event 'binlog.000001' at 109, the last event read from '

2020-11-27 19:20:33 487

原创 Linux下mysql主从搭建

环境centos7.4mysql5.7.3node1:192.168.199.240node2:192.168.199.2411.安装依赖包(两个节点都需要安装)yum install -y gcc gcc-c++ cmake ncurses ncurses-devel bison2.安装mysql数据库(两个节点都需要安装)[root@node1 lxl]# mkdir -p /opt/mysql/data[root@node1 lxl]# groupadd my

2020-11-27 19:15:04 118 1

原创 mysql5.7配置二进制日志后数据库无法启动问题

在配置二进制日志的时候出现mysql无法启动报错信息如下[root@node1 mysql]# service mysqld restartERROR! MySQL server PID file could not be found!Starting MySQL. ERROR! The server quit without updating PID file (/opt/mysql/data/node1.pid).二进制配置信息/etc/my.cnf[mysqld]datadir.

2020-11-24 19:49:51 724 1

原创 TBase集群安装配置

1.较准机器的时间停止chronyd服务 :systemctl stop chronyd设置chronyd服务开机不自启: systemctl disable chronyd2.防火墙与selinux配置关闭seLinux:setenforce 0设置selinu开机不启动:vi /etc/sysconfig/selinux将其中的SELINUX= XXXXXX修改为SELINUX...

2020-11-12 19:55:27 1283

原创 pg_bigm与pg_trgm的安装、测试、对比

1.介绍PostgreSQL的模糊查询功能十分强大,可以通过pg_trgm或者pg_bigm插件来支持前模糊、后模糊和前后模糊场景的模糊查询的场景。主要的区别:pg_trgm是将对象进行切词,每3个字节为一组进行切割,所以单、双字节的就无法覆盖到。pg_bigm是将对象进行切词,每2个字节为一组进行切割,可以支持任意字数模糊查询2.安装pg_bigm的安装版本:pg_bigm 1.2$ tar zxf pg_bigm-1.2-20200228.tar.gz$ cd pg_bigm

2020-07-29 09:23:54 3950

原创 pg_squeeze安装及简单使用

环境:redhat 7.4 postgresql 12.3 pg_squeeze 1.2pg_squeeze下载地址:https://github.com/cybertec-postgresql/pg_squeeze/介绍:pg_squeeze是一个扩展,它从表中删除未使用的空间,并且可以选择根据特定索引对元组进行排序,一般当一个表膨胀时一般使用vacuum full或者cluster进行表重建,在这一过程中会加排他锁,导致该表无法进行读写,只有等整个过程完成后才可以进行正常使用。pg_sque..

2020-06-22 12:07:26 1160

原创 linux下nmon的安装及使用

1.下载nmon压缩包:http://nmon.sourceforge.net/pmwiki.php?n=Site.Download根据系统的发型版本及CPU位数选择相应的压缩包下载,如系统发行版本为:7.4[root@node1 ~]# cat /etc/redhat-releaseRed Hat Enterprise Linux Server release 7.4 (Maip...

2020-04-29 11:07:43 1231

原创 编译安装pgbouncer时libevent报错问题

编译安装pgbouncer时libevent报错checking for LIBEVENT... noconfigure: error: Package requirements (libevent ) were not met:No package 'libevent' foundConsider adjusting the PKG_CONFIG_PATH environment v...

2019-12-25 09:24:36 1752

原创 mysql学习笔记(六)

25性能优化优化原则:减少系统的瓶颈,减少资源的占用,增加系统的反应速度。使用show status语句查询mysql数据库的性能参数show status like ‘value’;value对应的参数Connection:连接mysql服务器的次数Uptime:mysql服务器的上线时间Slow_queries:慢查询的次数Com_select:查询操作的次数...

2019-04-17 21:24:25 214

原创 mysql学习笔记(五)

24mysql日志msyql的四种日志:错误日志、查询日志、二进制日志、慢查询日志。(1)二进制日志my.ini里关于二进制日志的设置[mysqld]log-bin [=path/ [filename] ]expire_logs_days=10 //清理过期日志的时间max_binlog_size=100M //定义单个日志文件的大小限制使用show vari...

2019-04-16 20:29:56 143

原创 mysql学习笔记(四)

23数据备份和恢复(1)备份①使用MYSQLdump命令备份mysqldump -u user -h localhost -p password dbname [table1,[table2 ]....]>filename.sql备份所有数据库mysqldump -u user -h localhost -p --all-databases>filename.sql...

2019-04-15 21:27:47 170

原创 mysql学习笔记(三)

19用户管理权限表存储账户权限信息表主要有:user、db、host、tables_priv、columns_priv、procs_priv20账户管理创建新用户create user user_name //create user创建的用户没有任何权限创建用户名Jeffery 主机名是localhost 密码为 mypasscreate user 'jeffrey'@...

2019-04-15 09:49:11 429

原创 mysql学习笔记(二)

15索引空间索引是对空间数据类型的字段建立的索引。mysql的空间数据类型:geometry、point、linestring、polygon创建空间索引的列,必须将其声明为not nullmysql 使用spatial关键字进行扩展mysql中只有myisam存储引擎支持空间索引。全文索引类型为fulltext ,在定义索引的列上支持值得全文查找,允许在这些索引列中插入重...

2019-04-12 21:22:15 223

原创 mysql学习笔记(一)

1.查看mysql默认的存储引擎mysql>show engines;mysql>show variables like 'storage_engine';2.查看数据表结构mysql>desc 表名mysql>describe 表名3.查看表详细的构造语句mysql>show create table 表名 \G (加上\G之后显示结果更...

2019-04-11 21:49:15 152

转载 linux下mysql 8.0忘记密码后重置密码

转自:https://www.cnblogs.com/yaowen/p/9486997.html1://免密码登陆找到mysql配置文件:my.cnf,在【mysqld】模块添加:skip-grant-tables 保存退出;2://使配置生效重启mysql服务: service mysqld restart;3://将旧密码置空mysql -u ro...

2019-03-20 09:12:08 1139

原创 Linux下mysql8.0用rpm安装

安装环境red hat 7.0 64位mysql 8.01.依赖包mysql-community-client-8.0.15-1.el7.x86_64.rpmmysql-community-common-8.0.15-1.el7.x86_64.rpmmysql-community-devel-8.0.15-1.el7.x86_64.rpmmysql-community-li...

2019-03-20 09:10:24 1592 1

原创 启动rabbitmq:ERROR: distribution port 25672 in use on localhost (by non-Erlang process?)

最近在安装使用rabbitmq,启动rabbitmq时rabbitmq-server –detached ,出现报错:ERROR: distribution port 25672 in use on localhost (by non-Erlang process?)查看了一下,25672这个端口,已经被我的Java的应用程序占用。解决方法:释放端口,重新执行rabbitmq-server...

2018-09-12 08:46:07 7533 1

原创 redhat7修改系统语言

redhat7安装的时候选择的是简体中文,想修改成英文,只需要修改一下配置文件即可找到/etc/下的locale.conf 文件。进去修改将图中的LANG="zh_CN.UTF-8"修改为:LANG="en_US.UTF-8"重启系统即可 ...

2018-07-31 15:23:45 9057

原创 在mysql中使用模糊查询时,使用中文查询结果不正确问题

今天朋友问了个问题,在使用mysql数据库进行模糊查询的时候,where条件中使用了中文,查出来的结果并不是正确的结果。SELECT * FROM table_name WHERE name LIKE '%乐%';   查询出的结果中包含没有“乐”的。解决方法:经测试发现是实际插入的数据对实际插入的数据和这个表中这个字段 所设置的collation(字符序)有关系,也和collation_conn...

2018-06-16 08:42:47 1607

原创 流复制中的问题max_connection

在实现流复制的时候,在修改了主端的max_connection的时候就会重启主端数据库的就会hang住。再去修改备端的max_connection的时候重启数据库就会显示备库的最大连接数也就是max_connection需要么比主端的大。导致主备端都不能用。解决方法hot standby情况下参数备端是必要>=主端,所以:1、如果主端有修改,备端stop然后hot standby = off...

2018-05-30 20:17:17 392

原创 oracle 查看库中每个表所占的空间大小

select Segment_Name,Sum(bytes)/1024/1024/1024 From User_Extents Group By Segment_Name 显示的单位的G

2017-12-23 11:27:07 9841 4

原创 plsql连接oracle出现ORA-12154: TNS: 无法解析指定的连接标识符

plsql连接oracle出现ORA-12154: TNS: 无法解析指定的连接标识符问题 plsql配置文件tnsnames.ora中的原配置文件中的内容为 orcl (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.13.89)(PORT = 1521)) )

2017-10-16 10:24:47 1289 2

原创 linux下的mysql源码安装

第一次接触mysql,linux下的。以前都是Windows上的,今天有兴趣安装试试环境red hat 6.5 x64mysql5.6.121.下载mysql的源码包http://www.mysql.com/get/Downloads/MySQL-5.6/mysql-5.6.12.tar.gz/from/http://cdn.mysql.com/建立mysql用户、安装目录、数据目录[

2017-05-18 16:25:59 488

原创 postgresql initdb过程中大体做了什么

1.创建pg的data主目录,以及其所有子目录2.生成配置文件postgresql.conf3.创建template1数据库4.对template1数据库加载初始化数据5.复制template1到template0数据库6.复制template1到postgres数据库

2017-04-28 10:29:58 785

原创 postgresql使用RHCS套件搭建HA高可用集群

环境:数据库服务器 2台 服务器一 操作系统:CentOS 6.8 x86_64 IP(eth0):192.168.11.61 主机名:node1 服务器二 操作系统:CentOS 6.8 x86_64 IP_1(eth0):192.168.11.62 主机名:node2存储服务器 操作系统:CentOS 6.8 x86_64

2017-04-27 16:00:45 2928

转载 postgresql减少wal日志生成量的方法

1、在繁忙的系统中,如果需要降低checkpoint发生的频率,减少WAL日志的生成量,减轻对系统IO的压力,可以通过以下两种方法。1) 调整WAL segment大小,最高可以调整到64MB,不过只能通过编译来调整。对于已有系统不太方便;2) 增大checkpoint_segments设置,使得checkpoint不会过于频繁地被触发;2、在9.5中,checkpoint_segments

2017-04-25 10:40:52 4323

原创 使用yum安装postgresql 10 dev

环境centos 7 64位数据库:pg10dev参考网址:https://yum.postgresql.org/news10snapshot-ready-for-testing.phpyum installationhttps://wiki.postgresql.org/wiki/YUM_Installation创建用户[root@localhost ~]#useradd po

2017-04-24 11:27:32 6964

原创 benchmarksql在postgresql上的安装、使用

1.创建用户和数据库[postgres#localhost ~] $ psql postgrespsql (9.5.2)Type "help" for help.postgres=# CREATE USER benchmarksql WITH ENCRYPTED PASSWORD 'changeme';postgres=# CREATE DATABASE benchmarksql OW

2017-04-18 15:25:32 6039 1

原创 pgpool3.2.9中编译 pgpool-walrecrunning函数出错

在做pgpool的时候选择了一个相对较老的版本3.2.9在pg9.4上做实验出现以下错误[postgres@barman pgpool-walrecrunning]$ make gcc -Wall -Wmissing-prototypes -Wpointer-arith -Wdeclaration-after-statement -Wendif-labels -Wmissing-forma

2017-04-17 16:13:26 658

pg_bigm-1.2-20200228.gz

pg支持模糊查询的插件,使用场景为业务系统要进行大量的模糊查询的时候,使用此插件会加快查询的速度,比pg_trgm的优势在于支持任意字符的模糊查询

2020-07-29

空空如也

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

TA关注的人

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