F.1. adminpack
ÐодÑÐ»Ñ adminpack пÑедоÑÑавлÑÐµÑ Ð½ÐµÑколÑко вÑпомогаÑелÑнÑÑ
ÑÑнкÑий, коÑоÑÑми могÑÑ Ð¿Ð¾Ð»ÑзоваÑÑÑÑ pgAdmin и дÑÑгие ÑÑедÑÑва админиÑÑÑиÑÐ¾Ð²Ð°Ð½Ð¸Ñ Ð¸ ÑпÑÐ°Ð²Ð»ÐµÐ½Ð¸Ñ Ð±Ð°Ð·Ð°Ð¼Ð¸ даннÑÑ
, напÑимеÑ, Ð´Ð»Ñ ÑдалÑнного ÑпÑÐ°Ð²Ð»ÐµÐ½Ð¸Ñ Ñайлами жÑÑналов ÑеÑвеÑа. ÐÑполÑзоваÑÑ Ð²Ñе ÑÑи ÑÑнкÑии ÑазÑеÑено ÑолÑко ÑÑпеÑполÑзоваÑелÑм.
ФÑнкÑии, пÑиведÑннÑе в ТаблиÑе F.1, даÑÑ Ð´Ð¾ÑÑÑп на запиÑÑ Ðº Ñайлам на компÑÑÑеÑе, где ÑабоÑÐ°ÐµÑ ÑеÑвеÑ. (См. Ñакже ÑÑнкÑии в ТаблиÑе 9.76, коÑоÑÑе даÑÑ Ð´Ð¾ÑÑÑп ÑолÑко на ÑÑение.) С Ð¸Ñ Ð¿Ð¾Ð¼Ð¾ÑÑÑ Ð¼Ð¾Ð¶Ð½Ð¾ обÑаÑаÑÑÑÑ ÑолÑко к Ñайлам в каÑалоге клаÑÑеÑа баз даннÑÑ , но пÑÑÑ Ð¼Ð¾Ð¶ÐµÑ Ð·Ð°Ð´Ð°Ð²Ð°ÑÑÑÑ Ð¸ как оÑноÑиÑелÑнÑй, и как абÑолÑÑнÑй.
ТаблиÑа F.1. ФÑнкÑии модÑÐ»Ñ adminpack
| ÐÐ¼Ñ | Тип ÑезÑлÑÑаÑа | ÐпиÑание |
|---|---|---|
pg_catalog.pg_file_write(filename text, data text, append boolean) | bigint | ÐапиÑаÑÑ Ð¸Ð»Ð¸ допиÑаÑÑ Ð² ÑекÑÑовÑй Ñайл |
pg_catalog.pg_file_rename(oldname text, newname text [, archivename text]) | boolean | ÐеÑеименоваÑÑ Ñайл |
pg_catalog.pg_file_unlink(filename text) | boolean | УдалиÑÑ Ñайл |
pg_catalog.pg_logdir_ls() | setof record | ÐолÑÑиÑÑ ÑпиÑок Ñайлов жÑÑналов в каÑалоге log_directory |
ФÑнкÑÐ¸Ñ pg_file_write запиÑÑÐ²Ð°ÐµÑ Ð´Ð°Ð½Ð½Ñе (data) в Ñайл Ñ Ð¸Ð¼ÐµÐ½ÐµÐ¼ filename. ÐÑли Ñлаг append ÑбÑоÑен, ÑÑÐ¾Ñ Ñайл не должен ÑÑÑеÑÑвоваÑÑ. ÐÑли же Ñлаг append ÑÑÑановлен, ÑÑÑеÑÑвование Ñайла допÑÑкаеÑÑÑ Ð¸ в ÑÑом ÑлÑÑае даннÑе бÑдÑÑ Ð´Ð¾Ð¿Ð¸ÑÐ°Ð½Ñ Ð² него. ÐозвÑаÑÐ°ÐµÑ ÑиÑло запиÑаннÑÑ
байÑ.
ФÑнкÑÐ¸Ñ pg_file_rename пеÑеименовÑÐ²Ð°ÐµÑ Ñайл. ÐÑли паÑамеÑÑ archivename опÑÑен или Ñавен NULL, она пÑоÑÑо пеÑеименовÑÐ²Ð°ÐµÑ Ñайл oldname в newname (Ñайл Ñ Ð½Ð¾Ð²Ñм именем не должен ÑÑÑеÑÑвоваÑÑ). ÐÑли паÑамеÑÑ archivename задан, она ÑнаÑала пеÑеименовÑÐ²Ð°ÐµÑ newname в archivename (Ñакой Ñайл не должен ÑÑÑеÑÑвоваÑÑ), а заÑем пеÑеименовÑÐ²Ð°ÐµÑ oldname в newname. Ð ÑлÑÑае оÑибки на вÑоÑом ÑÑапе пеÑÐµÐ¸Ð¼ÐµÐ½Ð¾Ð²Ð°Ð½Ð¸Ñ Ð¾Ð½Ð° попÑÑаеÑÑÑ Ð¿ÐµÑеименоваÑÑ archivename назад в newname, пÑежде Ñем вÑдаÑÑ Ð¾ÑибкÑ. ÐозвÑаÑÐ°ÐµÑ true в ÑлÑÑае ÑÑпеÑ
а и false, еÑли иÑÑ
однÑе ÑÐ°Ð¹Ð»Ñ Ð¾ÑÑÑÑÑÑвÑÑÑ Ð¸Ð»Ð¸ иÑ
невозможно измениÑÑ; в дÑÑгиÑ
ÑлÑÑаÑÑ
вÑдаÑÑÑÑ Ð¾Ñибки.
ФÑнкÑÐ¸Ñ pg_file_unlink ÑдалÑÐµÑ Ð·Ð°Ð´Ð°Ð½Ð½Ñй Ñайл. ÐозвÑаÑÐ°ÐµÑ true в ÑлÑÑае ÑÑпеÑ
а, false в ÑлÑÑае оÑÑÑÑÑÑÐ²Ð¸Ñ Ñказанного Ñайла либо пÑи Ñбое в вÑзове unlink(); в дÑÑгиÑ
ÑлÑÑаÑÑ
вÑдаÑÑÑÑ Ð¾Ñибки.
ФÑнкÑÐ¸Ñ pg_logdir_ls возвÑаÑÐ°ÐµÑ Ð²ÑÐµÐ¼Ñ ÑÐ¾Ð·Ð´Ð°Ð½Ð¸Ñ Ð¸ пÑÑи вÑеÑ
Ñайлов жÑÑналов в каÑалоге log_directory. ЧÑÐ¾Ð±Ñ ÑÑа ÑÑнкÑÐ¸Ñ ÑабоÑала, паÑамеÑÑ log_filename должен имеÑÑ Ð·Ð½Ð°Ñение по ÑмолÑÐ°Ð½Ð¸Ñ (postgresql-%Y-%m-%d_%H%M%S.log).
ФÑнкÑии, пеÑеÑиÑленнÑе в ТаблиÑе F.2, ÑвлÑÑÑÑÑ ÑÑÑаÑевÑими и не Ð´Ð¾Ð»Ð¶Ð½Ñ Ð¸ÑполÑзоваÑÑÑÑ Ð² новÑÑ
пÑиложениÑÑ
; вмеÑÑо ниÑ
ÑледÑÐµÑ Ð¸ÑполÑзоваÑÑ ÑÑнкÑии, опиÑаннÑе в ТаблиÑе 9.67 и ТаблиÑе 9.76. ÐÑи ÑÑнкÑии вклÑÑÐµÐ½Ñ Ð² adminpack ÑолÑко Ð´Ð»Ñ ÑовмеÑÑимоÑÑи Ñо ÑÑаÑÑми веÑÑиÑми pgAdmin.
ТаблиÑа F.2. УÑÑаÑевÑие ÑÑнкÑии модÑÐ»Ñ adminpack
| ÐÐ¼Ñ | Тип ÑезÑлÑÑаÑа | ÐпиÑание |
|---|---|---|
pg_catalog.pg_file_read(filename text, offset bigint, nbytes bigint) | text | ÐлÑÑеÑнаÑивнÑй ваÑÐ¸Ð°Ð½Ñ ÑÑнкÑии pg_read_file() |
pg_catalog.pg_file_length(filename text) | bigint | ÐÑдаÑÑ Ñо же знаÑение, ÑÑо ÑодеÑжиÑÑÑ Ð² ÑÑолбÑе size ÑезÑлÑÑаÑа pg_stat_file() |
pg_catalog.pg_logfile_rotate() | integer | ÐлÑÑеÑнаÑивнÑй ваÑÐ¸Ð°Ð½Ñ pg_rotate_logfile(), возвÑаÑÐ°ÐµÑ Ñелое (0 или 1), а не бÑлевÑкое знаÑение |