血泪史
每一次数据库出问题都让人头疼,特别是对于一个刚刚达到入门级别的postgresql的人。当然不是postgres不够稳定,或者不够优秀,每一次失败的教训都是提高路上的垫脚石。在此记录失败教训,以便后来人能绕行。
uuid使用
uuid使用时应尽量使用 uuid v1版,此版本是根据时间序列生成,有先后顺序,通过,可以通过比较uuid大小来判断插入先后. 血泪史: 自己选了v4这个随机数生成版本,导致记录都是无序的,自己给自己找难受呀.
截取uuid中时间戳,用于排序CREATE OR REPLACE FUNCTION myuuid(id uuid) RETURNS text AS$BODY$BEGIN return concat(split_part(id::text, '-', 3),split_part(id::text, '-', 2),split_part(id::text, '-', 1));END;$BODY$ LANGUAGE plpgsql VOLATILE COST 100;ALTER FUNCTION myuuid(uuid) OWNER TO top_v2;
查询时排序 select * from login_log order by myuuid(id) desc limit 100;
阿里云磁盘问题
postgresql 连续几次发出警告, no space left,我堂堂 300G数据盘难道这么快就full了。经过反复确认真的100%了,再反复确认,TMD原来数据盘没有挂载。 血泪史:买了阿里云买了数据盘,但是千万别忘记挂载,否则否则,你明白的