.\" Automatically generated by Pod::Man 4.10 (Pod::Simple 3.35) .\" .\" Standard preamble: .\" ======================================================================== .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" Set up some character translations and predefined strings. \*(-- will .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left .\" double quote, and \*(R" will give a right double quote. \*(C+ will .\" give a nicer C++. Capital omega is used to do unbreakable dashes and .\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, .\" nothing in troff, for use with C<>. .tr \(*W- .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' .ie n \{\ . ds -- \(*W- . ds PI pi . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch . ds L" "" . ds R" "" . ds C` "" . ds C' "" 'br\} .el\{\ . ds -- \|\(em\| . ds PI \(*p . ds L" `` . ds R" '' . ds C` . ds C' 'br\} .\" .\" Escape single quotes in literal strings from groff's Unicode transform. .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" .\" If the F register is >0, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .\" .\" Avoid warning from groff about undefined register 'F'. .de IX .. .nr rF 0 .if \n(.g .if rF .nr rF 1 .if (\n(rF:(\n(.g==0)) \{\ . if \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . if !\nF==2 \{\ . nr % 0 . nr F 2 . \} . \} .\} .rr rF .\" .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2). .\" Fear. Run. Save yourself. No user-serviceable parts. . \" fudge factors for nroff and troff .if n \{\ . ds #H 0 . ds #V .8m . ds #F .3m . ds #[ \f1 . ds #] \fP .\} .if t \{\ . ds #H ((1u-(\\\\n(.fu%2u))*.13m) . ds #V .6m . ds #F 0 . ds #[ \& . ds #] \& .\} . \" simple accents for nroff and troff .if n \{\ . ds ' \& . ds ` \& . ds ^ \& . ds , \& . ds ~ ~ . ds / .\} .if t \{\ . ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" . ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' . ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' . ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' . ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' . ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' .\} . \" troff and (daisy-wheel) nroff accents .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V' .ds 8 \h'\*(#H'\(*b\h'-\*(#H' .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#] .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H' .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u' .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#] .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#] .ds ae a\h'-(\w'a'u*4/10)'e .ds Ae A\h'-(\w'A'u*4/10)'E . \" corrections for vroff .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u' .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u' . \" for low resolution devices (crt and lpr) .if \n(.H>23 .if \n(.V>19 \ \{\ . ds : e . ds 8 ss . ds o a . ds d- d\h'-1'\(ga . ds D- D\h'-1'\(hy . ds th \o'bp' . ds Th \o'LP' . ds ae ae . ds Ae AE .\} .rm #[ #] #H #V #F C .\" ======================================================================== .\" .IX Title "GFIX 1" .TH GFIX 1 "2019-02-08" "Firebird 3.0" "Firebird documentation" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l .nh .SH "NAME" gfix \-\- miscelenous Firebird database maintenance .SH "SYNOPSIS" .IX Header "SYNOPSIS" \&\fBgfix\fR \fIcommand\fR [\fIoption\fR...] \fIdatabase\fR .SH "DESCRIPTION" .IX Header "DESCRIPTION" \&\fBgfix\fR is a program that allows the Firebird administrator or database owner to perform various maintenance tasks. .SH "COMMANDS" .IX Header "COMMANDS" .IP "\fB\-ac\fR" 4 .IX Item "-ac" .PD 0 .IP "\fB\-activate_shadow\fR" 4 .IX Item "-activate_shadow" .PD Activate database shadow file. .IP "\fB\-b\fR \fInumber\fR" 4 .IX Item "-b number" .PD 0 .IP "\fB\-buffers\fR \fInumber\fR" 4 .IX Item "-buffers number" .PD Set database buffer size, in pages. .ie n .IP "\fB\-co\fR \fInumber\fR|""all""" 4 .el .IP "\fB\-co\fR \fInumber\fR|\f(CWall\fR" 4 .IX Item "-co number|all" .PD 0 .ie n .IP "\fB\-commit\fR \fInumber\fR|""all""" 4 .el .IP "\fB\-commit\fR \fInumber\fR|\f(CWall\fR" 4 .IX Item "-commit number|all" .PD Commit a limbo transaction with a given number or all limbo transactions. .IP "\fB\-h\fR \fInumber\fR" 4 .IX Item "-h number" .PD 0 .IP "\fB\-housekeeping\fR \fInumber\fR" 4 .IX Item "-housekeeping number" .PD Set the housekeeping interval. When the difference between the oldest interesting transaction and the current transaction exceeds \fInumber\fR, an automatic garbage collection (sweep) process is started to make possible increasing of the oldest interesting transaction number. .Sp When \fInumber\fR is \f(CW0\fR, there is no automatic sweep and \s-1OIT\s0 advancement should be arranged by other means, e.g. \fBgfix \-sweep\fR via \fBcron\fR\|(1). .IP "\fB\-icu\fR" 4 .IX Item "-icu" Fix the database to be usable with the available \s-1ICU\s0 version. .Sp Some collations in Firebird are bound the the version of the \s-1ICU\s0 library. When such a collation needs to be used in an environment with a different version of \&\s-1ICU,\s0 an error occurs. \fBgfix \-icu\fR is the remedy. .IP "\fB\-k\fR" 4 .IX Item "-k" .PD 0 .IP "\fB\-kill_shadow\fR" 4 .IX Item "-kill_shadow" .PD Kill unavailable database shadow files. .IP "\fB\-l\fR" 4 .IX Item "-l" .PD 0 .IP "\fB\-list\fR" 4 .IX Item "-list" .PD List limbo transactions. .RS 4 .IP "\fB\-pr\fR" 4 .IX Item "-pr" .PD 0 .IP "\fB\-prompt\fR" 4 .IX Item "-prompt" .PD Prompt for commit/rollback for each transaction in limbo. .RE .RS 4 .RE .IP "\fB\-me\fR" 4 .IX Item "-me" .PD 0 .IP "\fB\-mend\fR" 4 .IX Item "-mend" .PD Prepare corrupt database for backup. .IP "\fB\-mo\fR \fIaccess\fR" 4 .IX Item "-mo access" .PD 0 .IP "\fB\-mode\fR \fIaccess\fR" 4 .IX Item "-mode access" .PD Set database access mode. Possibla values are \f(CW\*(C`read_only\*(C'\fR and \f(CW\*(C`read_write\*(C'\fR. .IP "\fB\-nol\fR" 4 .IX Item "-nol" .PD 0 .IP "\fB\-nolinger\fR" 4 .IX Item "-nolinger" .PD Temporary remove linger setting of the database. .Sp Similar to the following \s-1SQL\s0 statement: .Sp .Vb 1 \& alter database drop linger; .Ve .Sp but the next attachment to the database will restore the linger setting. .Sp See \fIsql.extensions/README.linger\fR. .IP "\fB\-o\fR [\fImode\fR]" 4 .IX Item "-o [mode]" .PD 0 .IP "\fB\-online\fR [\fImode\fR]" 4 .IX Item "-online [mode]" .PD Brings the database online. The reverse of \fB\-shut\fR. .Sp \&\fImode\fR can be: .RS 4 .IP "\fBnormal\fR" 4 .IX Item "normal" This is the default. Brings the database fully online, all normal connections are permitted. .IP "\fBmulti\fR" 4 .IX Item "multi" Permits multiple connections from \s-1SYSDBA\s0 and the database owner. .IP "\fBsingle\fR" 4 .IX Item "single" Permins only one connection from \s-1SYSDBA\s0 or the database owner. .RE .RS 4 .RE .IP "\fB\-v\fR" 4 .IX Item "-v" .PD 0 .IP "\fB\-validate\fR" 4 .IX Item "-validate" .PD Perform database validation. .Sp Validation options: .RS 4 .IP "\fB\-fu\fR" 4 .IX Item "-fu" .PD 0 .IP "\fB\-full\fR" 4 .IX Item "-full" .PD Full validation. Record fragments are verified. .IP "\fB\-i\fR" 4 .IX Item "-i" .PD 0 .IP "\fB\-ignore\fR" 4 .IX Item "-ignore" .PD Ignore record checksum errors. .IP "\fB\-n\fR" 4 .IX Item "-n" .PD 0 .IP "\fB\-no_update\fR" 4 .IX Item "-no_update" .PD Peform read-only validation. .RE .RS 4 .RE .ie n .IP "\fB\-r\fR \fInumber\fR|""all""" 4 .el .IP "\fB\-r\fR \fInumber\fR|\f(CWall\fR" 4 .IX Item "-r number|all" .PD 0 .ie n .IP "\fB\-rollback\fR \fInumber\fR|""all""" 4 .el .IP "\fB\-rollback\fR \fInumber\fR|\f(CWall\fR" 4 .IX Item "-rollback number|all" .PD Rollback given limbo transaction or all limbo transactions. .IP "\fB\-sq\fR \fInumber\fR" 4 .IX Item "-sq number" .PD 0 .IP "\fB\-sql_dialect\fR \fInumber\fR" 4 .IX Item "-sql_dialect number" .PD Change the \s-1SQL\s0 dialect of the database. .IP "\fB\-sw\fR" 4 .IX Item "-sw" .PD 0 .IP "\fB\-sweep\fR" 4 .IX Item "-sweep" .PD Perform immediate garbage collection on the database. .IP "\fB\-sh\fR [\fImode\fR] \fIoption\fR \fItimeout\fR" 4 .IX Item "-sh [mode] option timeout" .PD 0 .IP "\fB\-shutdown\fR [\fImode\fR] \fIoption\fR \fItimeout\fR" 4 .IX Item "-shutdown [mode] option timeout" .PD Shuts the database down. \fImode\fR is either of .RS 4 .IP "\fBmulti\fR" 4 .IX Item "multi" Multiple connections from \s-1SYSDBA\s0 and the database owner are allowed. Ordinary osers are denied any requests to the database. This is the default \fImode\fR. .IP "\fBsingle\fR" 4 .IX Item "single" Only a single connection from \s-1SYSDBA\s0 or the database owner is allowed. .IP "\fBfull\fR" 4 .IX Item "full" No connections to the database are allowed. .IP "\fB\-ca\fR" 4 .IX Item "-ca" .PD 0 .IP "\fB\-cache\fR" 4 .IX Item "-cache" .PD Ignored. Equivalent to \-multi. .RE .RS 4 .Sp \&\fIoption\fR is either of .IP "\fB\-at\fR" 4 .IX Item "-at" .PD 0 .IP "\fB\-attach\fR" 4 .IX Item "-attach" .PD Prevents new attachments (connections). Active connections continue to work. .IP "\fB\-tra\fR" 4 .IX Item "-tra" .PD 0 .IP "\fB\-transaction\fR" 4 .IX Item "-transaction" .PD Prevents new transactions. Open transactions continue to work. .IP "\fB\-fo\fR" 4 .IX Item "-fo" .PD 0 .IP "\fB\-force_shutdown\fR" 4 .IX Item "-force_shutdown" .PD Force immediate database shutdown. All running statements, transactions and connections are aborted. .RE .RS 4 .RE .IP "\fB\-tw\fR" 4 .IX Item "-tw" .PD 0 .IP "\fB\-two_phase\fR" 4 .IX Item "-two_phase" .PD Perform two-phase recovery of limbo transactions. .IP "\fB\-u\fR \fImode\fR" 4 .IX Item "-u mode" .PD 0 .IP "\fB\-use\fR \fImode\fR" 4 .IX Item "-use mode" .PD Set the page allocation preference. When \fImode\fR is \f(CW\*(C`reserve\*(C'\fR a certain amount of the page is kept aside for record versions. When \fImode\fR is \f(CW\*(C`full\*(C'\fR database pages are used fully without such reservarions. .Sp Corresponds to the \fB\-use_all\fR option of \fBgbak\fR\|(1). .IP "\fB\-w\fR \fImode\fR" 4 .IX Item "-w mode" .PD 0 .IP "\fB\-write\fR \fImode\fR" 4 .IX Item "-write mode" .PD Sets the synchronous writes flag. \f(CW\*(C`sync\*(C'\fR sets the synchronous mode flag (also known as \f(CW\*(C`forced writes\*(C'\fR). \f(CW\*(C`async\*(C'\fR clears the flag. .Sp When the flag is on, all writes to the database are synchronised via a call to the operating system to ensure that the data has reached stable storage. .SH "OPTIONS" .IX Header "OPTIONS" .IP "\fB\-fe\fR \fIfile\fR" 4 .IX Item "-fe file" .PD 0 .IP "\fB\-fetch_password\fR \fIfile\fR" 4 .IX Item "-fetch_password file" .PD Read password from \fIfile\fR. .IP "\fB\-pas\fR \fIstring\fR" 4 .IX Item "-pas string" .PD 0 .IP "\fB\-password\fR \fIstring\fR" 4 .IX Item "-password string" .PD Password for the connection. .IP "\fB\-ro\fR \fIstring\fR" 4 .IX Item "-ro string" .PD 0 .IP "\fB\-role\fR \fIstring\fR" 4 .IX Item "-role string" .PD Use supplied \s-1SQL\s0 role for the connection. .IP "\fB\-user\fR \fIstring\fR" 4 .IX Item "-user string" Use supplied user name for the connection. .IP "\fB\-z\fR" 4 .IX Item "-z" Prints the \fBgfix\fR version number before anything else. .SH "ENVIRONMENT" .IX Header "ENVIRONMENT" .IP "\fB\s-1ISC_USER\s0\fR" 4 .IX Item "ISC_USER" Default value for the \-user option. .IP "\fB\s-1ISC_ROLE\s0\fR" 4 .IX Item "ISC_ROLE" Default value for the \-role option. .IP "\fB\s-1ISC_PASSWORD\s0\fR" 4 .IX Item "ISC_PASSWORD" Default value for the \-password option. .SH "SEE ALSO" .IX Header "SEE ALSO" \&\fBfbstat\fR\|(1). .PP Additional documentation about Firebird can be found on the Firebird Project website, . .SH "AUTHOR" .IX Header "AUTHOR" This manual page was written by Damyan Ivanov dmn@debian.org for the Debian project. Permission is granted to use this document, with or without modifications, provided that this notice is retained. If we meet some day, and you think this stuff is worth it, you can buy me a beer in return.