PSQ实践
- tk.mybatis
// 设置查询的最大结果数 // 可以通过追加sql语句的形式 如下添加。 // 类似的需求注意一下sql关键字的顺序 Example example = new Example(*.class); example.setOrderByClause("driver_code asc limit " + maxCount); - pg_dump
- 备份
-
# 授权target文件夹 postgres用户的操作权限 chown postgres:postgres /target # 切换postgres用户 su - postgres # 开始备份 cd /opt/fsepv13server64/bin # database 替换为要操作的数据库 # -s 备份数据结构 不备份数据 ./pg_dump -Fp -s database > /target/back.sql
-
- 还原
- 备份
- pg_ctl
- 重新加载postgres配置
pg_ctl reload -D [psql的数据目录:/inst/data]
- 重新加载postgres配置
- COPY
- 导入
- 导出
- 1. 二进制格式
# 导出结果集为二进制数据 # 在 PostgreSQL 7.4 中 COPY BINARY 的文件格式发生了变化。新格式由一个文件头、零或多条行、文件尾组成。文件头和数据现在是网络字节顺序。 # 文件头由 15 个字节的固定域组成,后面跟着一个变长的头扩展区。 # 文件头:11字节的序列 PGCOPY\n\377\r\n\0(请注意字节零是签名必须的一部分) \copy (select "template" from table where ...) to /target/a.data with (FORMAT binary) - 2.二进制格式
# 导出 psql -h 数据库IP地址 -p 端口 -d 数据库名称 -X -c "COPY ( SELECT xxx FROM xxxx where xxxx) TO STDOUT WITH BINARY" > filename.dat # 导入 copy binary table_name(字段名称,,,) from 'filename.dat'; # 官网定义: COPY table_name [ ( column_name [, ...] ) ] FROM { 'filename' | PROGRAM 'command' | STDIN } [ [ WITH ] ( option [, ...] ) ] [ WHERE condition ] COPY { table_name [ ( column_name [, ...] ) ] | ( query ) } TO { 'filename' | PROGRAM 'command' | STDOUT } [ [ WITH ] ( option [, ...] ) ] #where option can be one of: FORMAT format_name FREEZE [ boolean ] DELIMITER 'delimiter_character' NULL 'null_string' HEADER [ boolean | MATCH ] QUOTE 'quote_character' ESCAPE 'escape_character' FORCE_QUOTE { ( column_name [, ...] ) | * } FORCE_NOT_NULL ( column_name [, ...] ) FORCE_NULL ( column_name [, ...] ) ENCODING 'encoding_name'
- 1. 二进制格式
- 异常解决
- JIT相关
Cause: org.postgresql.util.PSQLException: ERROR: could not load library "/opt/fsepv13server64/lib/llvmjit.so": libLLVM-10.so: cannot open shared object file: No such file or directory
原因:没有llvmjit,而jit是on
解决:设置psql数据目录下的postgresql.conf
jit=off
- JIT相关

浙公网安备 33010602011771号