annotate mayachemtools/docs/scripts/txt/DBSchemaTablesToTextFiles.txt @ 9:ab29fa5c8c1f draft default tip

Uploaded
author deepakjadmin
date Thu, 15 Dec 2016 14:18:03 -0500
parents 73ae111cf86f
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
0
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
1 NAME
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
2 DBSchemaTablesToTextFiles.pl - Export table data from database
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
3 SchemaName(s) into CSV/TSV text files
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
4
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
5 SYNOPSIS
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
6 DBSchemaTablesToTextFiles.pl SchemaName(s)...
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
7
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
8 DBSchemaTablesToTextFiles.pl [-d, --dbdriver mysql | Oracle| Postgres or
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
9 Pg] [--dbhost hostname] [--dbname databasename] [--dbpassword password]
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
10 [--dbusername username] [--exportdatalabels yes | no] [--exportlobs yes
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
11 | no] [-h, --help] [-m, --mode exportdata | describetable] [-n,
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
12 --numoutfilesmode single | multiple] [-o, --overwrite] [--outdelim comma
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
13 | tab | semicolon] [-q, --quote yes | no] [-r, --root rootname]
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
14 [--replacenullstr string] [-w --workingdir dirname] SchemaName(s)...
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
15
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
16 DESCRIPTION
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
17 Export table data from database SchemaName(s) into CSV/TSV text files.
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
18 Use -n --numoutfiles option to control the number of text files
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
19 generated for a database schema.
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
20
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
21 OPTIONS
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
22 -d, --dbdriver *mysql | Oracle | Postgres or Pg*
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
23 Database driver name. Possible values: *mysql, Oracle, Postgres or
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
24 Pg*. Default: *MySQL* or value of environment variable DBI_DRIVER.
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
25 This script has only been tested with MySQL, Oracle and PostgreSQL
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
26 drivers.
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
27
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
28 --dbhost *hostname*
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
29 Database host name. Default: *127.0.0.1* for both MySQL and Oracle.
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
30 For remote databases, specify complete remote host domain:
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
31 *dbhostname.org* or something like it.
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
32
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
33 --dbname *databasename*
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
34 Database name. Default: mysql for MySQL, postgres for PostgreSQL and
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
35 none for Oracle. For connecting to local/remote Oracle databases,
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
36 this value can be left undefined assuming --dbhost is correctly
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
37 specified.
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
38
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
39 --dbpassword *password*
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
40 Database user password. Default: *none* and value of environment
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
41 variable DBI_PASS is used for connecting to database.
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
42
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
43 --dbusername *username*
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
44 Database user name. Default: *none* and value of environment
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
45 variable DBI_USER is used for connecting to database.
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
46
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
47 --exportdatalabels *yes | no*
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
48 This option is mode specific and controls exporting of column data
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
49 labels during exportdata mode. Possible values: *yes or no*.
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
50 Default: *yes*.
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
51
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
52 --exportlobs *yes | no*
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
53 This option is mode specific and controls exporting of CLOB/BLOB or
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
54 BYTEA data columns during exportdata mode. Possible values: *yes or
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
55 no*. Default: *no*.
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
56
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
57 -h, --help
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
58 Print this help message.
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
59
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
60 -m, --mode *exportdata | describetable*
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
61 Data selection criterion from database. Possible values: *exportdata
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
62 or describetable*. Default value: *exportdata*.
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
63
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
64 -n, --numoutfilesmode *single | multiple*
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
65 Number of CSV/TSV output files to generate: combine output into one
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
66 file or generate a different file for each table in a schema.
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
67 Possible values: *single or multiple*. Default: *single*.
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
68
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
69 In a single output file, data for different tables is separated by a
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
70 blank line.
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
71
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
72 Single outfile option in *exportdata* mode is quite useful for
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
73 exporting data from all tables in specifed schemas to one file which
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
74 can be used for migrating data to another database or simply provide
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
75 a backup of data; during *describetable* mode, it provides a means
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
76 to collect information about columns of all schema tables which can
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
77 help in creation of these tables on a different database server.
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
78
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
79 -o, --overwrite
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
80 Overwrite existing files.
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
81
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
82 --outdelim *comma | tab | semicolon*
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
83 Output text file delimiter. Possible values: *comma, tab, or
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
84 semicolon*. Default value: *comma*
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
85
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
86 -q, --quote *yes | no*
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
87 Put quotes around column values in output text file. Possible
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
88 values: *yes or no*. Default value: *yes*.
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
89
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
90 -r, --root *rootname*
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
91 New file name is generated using the root:<Root>.<Ext> and
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
92 <Root><TableName>.<Ext> for *single* and *multiple* -n --numoutfiles
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
93 option values. Default file name for *single* -n --numoutfiles
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
94 option value: <Mode>SchemaTables.<Ext>. Default file names for
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
95 *multiple* -n --numoutfiles value:
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
96 <Mode><SchemaName><TableName>.<Ext>. Based on -m --mode option,
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
97 *Export* or *Describe* <Mode> value is used. The csv and tsv <Ext>
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
98 values are used for comma/semicolon, and tab delimited text files
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
99 respectively. This option is ignored for multiple input schema
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
100 names.
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
101
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
102 --replacenullstr *string*
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
103 Replace NULL or undefined row values with specified value. Default:
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
104 *none*.
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
105
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
106 For importing output text files into MySQL database using "load data
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
107 local infile '<tablename>.tsv' into table <tablename>" command, use
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
108 *--raplacenullstr "NULL"* in conjunction with *--exportdatalabels
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
109 no*, *--quote no*, and *--outdelim tab* options: it'll generate
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
110 files for direct import into MySQL assuming tables already exists.
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
111
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
112 -w --workingdir *dirname*
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
113 Location of working directory. Default: current directory.
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
114
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
115 EXAMPLES
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
116 To export data in all tables from mysql schema on a MySQL server running
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
117 on a local machine using username/password from DBI_USER and DBI_PASS
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
118 environmental variables, type:
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
119
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
120 % DBSchemaTablesToTextFiles.pl mysql
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
121
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
122 To describe all tables in mysql and test schemas on a MySQL server
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
123 running on a remote machine using explicit username/password and
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
124 capturing the ouput into a DescribeTables.csv file, type:
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
125
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
126 % DBSchemaTablesToTextFiles.pl --dbdriver mysql --dbuser <name>
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
127 --dbpassword <pasword> --dbname mysql --dbhost
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
128 <mysqlhostname.org> -r DescribeTable -m describetable
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
129 -o mysql test
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
130
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
131 To describe all tables in SCOTT schema in Oracle running on a remote
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
132 machine using explicit username/password and capturing the ouput into a
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
133 DescribeAllTable.tsv file, type:
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
134
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
135 % DBSchemaTablesToTextFiles.pl --dbdriver Oracle --dbuser <name>
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
136 --dbpassword <pasword> --dbhost <oraclehostname.com>
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
137 -r DescribeAllTable -m describetable --outdelim tab --quote no
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
138 -o SCOTT
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
139
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
140 To export data in all tables in mysql and test schemas on a MySQL server
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
141 running at a local machine using explicit username/password and
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
142 capturing the data in TSV file for each table with empty values
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
143 substitued with NULL and clob/blob data, type:
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
144
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
145 % DBSchemaTablesToTextFiles.pl --dbdriver Oracle --dbuser <name>
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
146 --dbpassword <pasword> -r ExportTables --outdelim tab --quote no
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
147 --replacenullstr "NULL" -m exportdata --exportlobs no --numoutfiles
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
148 multiple -o user user_info
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
149
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
150 AUTHOR
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
151 Manish Sud <msud@san.rr.com>
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
152
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
153 SEE ALSO
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
154 DBSQLToTextFiles.pl, DBTablesToTextFiles.pl
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
155
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
156 COPYRIGHT
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
157 Copyright (C) 2015 Manish Sud. All rights reserved.
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
158
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
159 This file is part of MayaChemTools.
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
160
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
161 MayaChemTools is free software; you can redistribute it and/or modify it
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
162 under the terms of the GNU Lesser General Public License as published by
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
163 the Free Software Foundation; either version 3 of the License, or (at
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
164 your option) any later version.
73ae111cf86f Uploaded
deepakjadmin
parents:
diff changeset
165