.\" Automatically generated by Pod::Man 2.28 (Pod::Simple 3.28) .\" .\" 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 turned on, 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 "rt-importer 8" .TH rt-importer 8 "2017-01-05" "perl v5.20.2" "Request Tracker Reference" .\" 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" rt\-importer \- Import a serialized RT database on top of the current one .SH "SYNOPSIS" .IX Header "SYNOPSIS" .Vb 1 \& rt\-importer path/to/export/directory .Ve .PP This script is used to import the contents of a dump created by \&\f(CW\*(C`rt\-serializer\*(C'\fR. It will create all of the objects in the dump in the current database; this may include users, queues, and tickets. .PP It is possible to stop the import process with ^C; it can be later resumed by re-running the importer. .SS "\s-1OPTIONS\s0" .IX Subsection "OPTIONS" .IP "\fB\-\-list\fR" 4 .IX Item "--list" Print a summary of the data contained in the dump. .IP "\fB\-\-originalid\fR \fIcfname\fR" 4 .IX Item "--originalid cfname" Places the original ticket organization and \s-1ID\s0 into a global custom field with the given name. If no global ticket custom field with that name is found in the current database, it will create one. .IP "\fB\-\-ask\fR" 4 .IX Item "--ask" Prompt for action when an error occurs inserting a record into the database. This can often happen when importing data from very old RTs where some attachments (usually spam) contain invalid \s-1UTF\-8.\s0 .Sp The importer will pause and ask if you want to ignore the error and continue on or abort (potentially to restart later). Ignoring errors will result in missing records in the database, which may cause database integrity problems later. If you ignored any errors, you should run \&\f(CW\*(C`rt\-validator\*(C'\fR after import. .IP "\fB\-\-ignore\-errors\fR" 4 .IX Item "--ignore-errors" Ignore all record creation errors and continue on when importing. This is equivalent to running with \f(CW\*(C`\-\-ask\*(C'\fR and manually typing \*(L"ignore\*(R" at every prompt. You should always run \f(CW\*(C`rt\-validator\*(C'\fR after importing with errors ignored. .Sp \&\fBThis option can be dangerous and leave you with a broken \s-1RT\s0!\fR .IP "\fB\-\-dump\fR \fIclass\fR[,\fIclass\fR]" 4 .IX Item "--dump class[,class]" Prints Data::Dumper representations of the objects of type \fIclass\fR in the serialized data. This is mostly useful for debugging. .Sp Works only in conjunction with \f(CW\*(C`\-\-list\*(C'\fR. .SH "CLONED DATA" .IX Header "CLONED DATA" Some dumps may have been taken as complete clones of the \s-1RT\s0 system, which are only suitable for inserting into a schema with no data in it. You can setup the required database state for the receiving \s-1RT\s0 instance by running: .PP .Vb 1 \& /usr/sbin/rt\-setup\-database \-\-action create,schema,acl \-\-prompt\-for\-dba\-password .Ve .PP The normal \f(CW\*(C`make initdb\*(C'\fR step will \fBnot\fR work because it also inserts core system data.