作者
digoal
日期
2021-05-25
标签
PostgreSQL , startup , 自动执行SQL或文件
背景
PostgreSQL 实例启动时的HOOK, 自动加载预定义SQL或文件
https://github.com/pierreforstmann/pg_start_sql
pg_start_sql
PostgreSQL extension to execute SQL statements at instance start.
Installation
Compiling
This module can be built using the standard PGXS infrastructure. For this to work, the pg_config program must be available in your $PATH:
git clone https://github.com/pierreforstmann/pg_start_sql.git
cd pg_start_sql
make
make install
PostgreSQL setup
Extension must be loaded:
At server level with shared_preload_libraries parameter:
shared_preload_libraries = 'pg_start_sql'
And following SQL statement should be run:
create extension pg_start_sql;
This extension is installed at instance level: it does not need to be installed in each database.
pg_start_sql has been successfully tested with PostgreSQL 9.5, 9.6, 10, 11, 12 and 13.
Usage
pg_start_sql has 3 GUC parameters:
pg_start_sql.dbname which is the database name where SQL statements must be run. This parameter is not mandatory : if not specified SQL statement is run in postgres database.
pg_start_sql.stmt which is the SQL statement to be run.
* pg_start_sql.file which is a file name whose SQL statements are to be run.
At least one of the parameterspg_start_sql.stmt or pg_start_sql.file must be specified.
Statements are run with superuser privileges. There is no way to specify another database user to run SQL statements.
PostgreSQL 许愿链接
您的愿望将传达给PG kernel hacker、数据库厂商等, 帮助提高数据库产品质量和功能, 说不定下一个PG版本就有您提出的功能点. 针对非常好的提议,奖励限量版PG文化衫、纪念品、贴纸、PG热门书籍等,奖品丰富,快来许愿。开不开森.
9.9元购买3个月阿里云RDS PostgreSQL实例
PostgreSQL 解决方案集合
德哥 / digoal's github - 公益是一辈子的事.





