F.1. adminpack â Ð½Ð°Ð±Ð¾Ñ Ð¸Ð½ÑÑÑÑменÑов поддеÑжки pgAdmin #
ÐодÑÐ»Ñ adminpack пÑедоÑÑавлÑÐµÑ Ð½ÐµÑколÑко вÑпомогаÑелÑнÑÑ
ÑÑнкÑий, коÑоÑÑми могÑÑ Ð¿Ð¾Ð»ÑзоваÑÑÑÑ pgAdmin и дÑÑгие ÑÑедÑÑва админиÑÑÑиÑÐ¾Ð²Ð°Ð½Ð¸Ñ Ð¸ ÑпÑÐ°Ð²Ð»ÐµÐ½Ð¸Ñ Ð±Ð°Ð·Ð°Ð¼Ð¸ даннÑÑ
, напÑÐ¸Ð¼ÐµÑ Ð´Ð»Ñ ÑдалÑнного ÑпÑÐ°Ð²Ð»ÐµÐ½Ð¸Ñ Ñайлами жÑÑналов ÑеÑвеÑа. Ðо ÑмолÑÐ°Ð½Ð¸Ñ Ð¸ÑполÑзоваÑÑ Ð²Ñе ÑÑи ÑÑнкÑии ÑазÑеÑено ÑолÑко ÑÑпеÑполÑзоваÑелÑм баз даннÑÑ
, но Ñакое пÑаво можно даÑÑ Ð¸ дÑÑгим полÑзоваÑелÑм Ñ Ð¿Ð¾Ð¼Ð¾ÑÑÑ ÐºÐ¾Ð¼Ð°Ð½Ð´Ñ GRANT.
ФÑнкÑии, пÑиведÑннÑе в ТаблиÑе F.1, пÑедоÑÑавлÑÑÑ Ð²Ð¾Ð·Ð¼Ð¾Ð¶Ð½Ð¾ÑÑÑ Ð·Ð°Ð¿Ð¸Ñи в ÑÐ°Ð¹Ð»Ñ Ð½Ð° компÑÑÑеÑе, где ÑабоÑÐ°ÐµÑ ÑеÑвеÑ. (См. Ñакже ÑÑнкÑии в ТаблиÑе 9.101, коÑоÑÑе оÑкÑÑваÑÑ Ð´Ð¾ÑÑÑп ÑолÑко на ÑÑение.) Ðни позволÑÑÑ Ð¾Ð±ÑÑнÑм полÑзоваÑелÑм обÑаÑаÑÑÑÑ ÑолÑко к Ñайлам в каÑалоге клаÑÑеÑа баз даннÑÑ
, но не огÑаниÑиваÑÑ ÑÑпеÑполÑзоваÑелей и полÑзоваÑелей Ñ Ð¿Ñавами Ñолей pg_read_server_files или pg_write_server_files (в завиÑимоÑÑи Ð¾Ñ Ñода ÑÑнкÑии). ÐÑи ÑÑом пÑÑÑ Ð¼Ð¾Ð¶ÐµÑ Ð·Ð°Ð´Ð°Ð²Ð°ÑÑÑÑ Ð¸ как абÑолÑÑнÑй, и как оÑноÑиÑелÑнÑй.
ТаблиÑа F.1. ФÑнкÑии модÑÐ»Ñ adminpack
ФÑнкÑÐ¸Ñ ÐпиÑание |
|---|
ÐапиÑÑÐ²Ð°ÐµÑ Ð¸Ð»Ð¸ допиÑÑÐ²Ð°ÐµÑ Ð´Ð°Ð½Ð½Ñе в ÑекÑÑовÑй Ñайл. |
СбÑаÑÑÐ²Ð°ÐµÑ Ñайл или каÑалог на диÑк. |
ÐеÑеименовÑÐ²Ð°ÐµÑ Ñайл. |
УдалÑÐµÑ Ñайл. |
ÐÑдаÑÑ ÑпиÑок Ñайлов жÑÑналов в каÑалоге |
ФÑнкÑÐ¸Ñ pg_file_write запиÑÑÐ²Ð°ÐµÑ Ð´Ð°Ð½Ð½Ñе (data) в Ñайл Ñ Ð¸Ð¼ÐµÐ½ÐµÐ¼ filename. ÐÑли Ñлаг append ÑбÑоÑен, ÑÑÐ¾Ñ Ñайл не должен ÑÑÑеÑÑвоваÑÑ. ÐÑли же Ñлаг append ÑÑÑановлен, ÑÑÑеÑÑвование Ñайла допÑÑкаеÑÑÑ Ð¸ в ÑÑом ÑлÑÑае даннÑе бÑдÑÑ Ð´Ð¾Ð¿Ð¸ÑÐ°Ð½Ñ Ð² него. ÐозвÑаÑÐ°ÐµÑ ÑиÑло запиÑаннÑÑ
байÑ.
ФÑнкÑÐ¸Ñ pg_file_sync ÑинÑ
ÑонизиÑÑÐµÑ Ñ Ñайловой ÑиÑÑемой Ñайл или каÑалог Ñ Ð¸Ð¼ÐµÐ½ÐµÐ¼ filename. Ð ÑлÑÑае неÑдаÑи (напÑимеÑ, еÑли ÑказаннÑй Ñайл не ÑÑÑеÑÑвÑеÑ) вÑдаÑÑÑÑ Ð¾Ñибка. ÐамеÑÑÑе, ÑÑо знаÑение data_sync_retry на ÑÑÑ ÑÑнкÑÐ¸Ñ Ð½Ðµ влиÑеÑ, и поÑÑÐ¾Ð¼Ñ Ð´Ð°Ð¶Ðµ в ÑлÑÑае оÑказа пÑи ÑбÑоÑе Ñайлов Ð±Ð°Ð·Ñ Ð½Ðµ бÑÐ´ÐµÑ Ð²Ñдана оÑибка ÑÑÐ¾Ð²Ð½Ñ PANIC.
ФÑнкÑÐ¸Ñ 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).