2021
01-26
01-26
postgresql 计算距离的实例(单位直接生成米)
之前用的是ST_Distance函数,但是貌似需要进行一次单位的转换,而且网上有说那种转换不是特别准确,现在暂时将该算法记录在此:selectst_distance(ST_GeomFromText('POINT(120.45173736.520975)',900913),ST_GeomFromText('POINT(120.45563636.520885)',900913))*60*1.852;这里的计算方式倒是可以换坐标系,但是,测试了两个坐标系都没有起作用。而且该种方式转换过单位后跟arcgis计算出的结果相差甚远,最终决定使用下面的方...
继续阅读 >
大家好!我是只谈技术不剪发的Tony老师。今天我们来聊聊PostgreSQL的性能优化;数据库优化是一个系统的工程,本文只专注于服务器的参数配置优化。默认安装时,PostgreSQL的配置参数通常都偏小,不太适合作为生产服务器使用。所以,安装PostgreSQL数据库之后首先需要执行的操作就是对服务器的配置参数进行调整。查看/设置参数值我们使用PostgreSQL12,服务器的配置参数有300多个,运行时的参数值可以使用SHOW命令查看...
对于庞大的数据,检索sql的编写要格外小心,有很多平时不注意的sql可能就会变成瓶颈。比如,我们有个系统,其中t96_pd_log表,记录数8000w多,在开发阶段乃至用了那么多年都没问题,最近却发生频繁死锁的问题,查数据库后台发现问题出在一个select语句上,它耗时高达2.4-2.7s,这对于一个需要高并发的系统来说当然是致命的。数据表t96_pd_log有两条index,一条的字段组成是f96_mgtbarcd,另一条的字段组成是f96_result_type,检索...
今天遇到一个问题之前用TimescaleDB创建的超表是已7天为单位的由于7天的数据量过大影响查询效率需要把7天的分区改为一天一分区创建超表create_hypertable()1.创建普通版表CREATETABLE"超表名"("collect_time"timestamp(6)NOTNULL,"code"varchar(36)COLLATE"pg_catalog"."default"NOTNULL,"value"numeric(14,4)NOTNULL,"create_time"timestamp(6)NOTNULL);2.改为超表create_hypertable()SELECTcre...
今天我在用命令行登陆postgresql的时候,忽然忘记密码了,重试了N次还是不行,然后我就试着上网找解决之道,最后完美的解决了,可是后来我才发现还有个更简单的方法,该篇博客用来记录自己沙雕行为。工具已登陆这个就是最简单的方法,你有工具登陆过,完全可以通过工具来修改(可是我当时完全没想到这个。。。),我是通过Navicat来连接的,可以直接通过Navicat来修改步骤如下:1、连接数据库2、点击角色3、选择角色4、填入新密码5...
PostgreSQL登录1、可通过客户端pgAdminIII直接登录2、可通过命令行命令:psql-h10.10.10.10-Uuser-dpostgres-p5570-h:数据库IP-U:登录用户-d:登录的数据库-p:登录端口方法:进入postgreSQL的客户端安装目录(我的安装目录:C:\ProgramFiles\PostgreSQL\9.4\bin),执行psql命令,其中\q表示退出数据库修改密码直接执行以下sql即可修改密码alteruserpguserwithpassword'newpassword';补充:PostgreSQL修改密码...
近期测试了一下postgresql的加密扩展插件pgcrypto的aes加密安装加密扩展插件:pgcrypto在主节点上安装createextensionpgcrypto;aes加解密函数简单介绍encrypt(databytea,keybytea,typetext)--加密decrypt(databytea,keybytea,typetext)--解密data是需要加密的数据;type用于指定加密方法ASE方式加密:selectencrypt('postgres','abc','aes');解密:selectconvert_from(decrypt('\xd664687424b2806001d0744177284...