NAME

SYNOPSIS

DESCRIPTION

creates tables and populates them with database metadata. It uses
SHOW DATABASES,
SHOW TABLES,
SHOW TABLE STATUS,
SHOW COLUMNS, and
SHOW INDEX
to obtain the metadata.

In MySQL 5.0 and up, the
INFORMATION_SCHEMA
database contains the same kind of information in the
SCHEMATA,
TABLES,
COLUMNS, and
STATISTICS
tables. See
Chapter 21, INFORMATION_SCHEMA Tables.

Invoke
mysql_tableinfo
like this:

shell> mysql_tableinfo [options] db_name [db_like [tbl_like]]

The
db_name
argument indicates which database
mysql_tableinfo
should use as the location for the metadata tables. The database will be created if it does not exist. The tables will be named
db,
tbl
(or
tbl_status),
col, and
idx.

If the
db_like
or
tbl_like
arguments are given, they are used as patterns and metadata is generated only for databases or tables that match the patterns. These arguments default to
%
if not given.

Each of the commands stores information into tables in the
info
database. The first stores information for all databases and tables. The second stores information for all tables in the
world
database. The third stores information for tables in the
mydb
database that have names matching the pattern
tmp%.

mysql_tableinfo
supports the following options:

*

--help

Display a help message and exit.

*

--clear

Before populating each metadata table, drop it if it exists.

*

--clear-only

Similar to
--clear, but exits after dropping the metadata tables to be populated.

*

--col

Generate column metadata into the
col
table.

*

--host=host_name,
-h host_name

Connect to the MySQL server on the given host.

*

--idx

Generate index metadata into the
idx
table.

*

--password=password,
-ppassword

The password to use when connecting to the server. Note that the password value is not optional for this option, unlike for other MySQL programs. You can use an option file to avoid giving the password on the command line.

Specifying a password on the command line should be considered insecure. See
Section 6.6, lqKeeping Your Password Securerq.

*

--port=port_num,
-P port_num

The TCP/IP port number to use for the connection.

*

--prefix=prefix_str

Add
prefix_str
at the beginning of each metadata table name.

*

--quiet,
-q

Be silent except for errors.

*

--socket=path,
-S path

The Unix socket file to use for the connection.

*

--tbl-status

Use
SHOW TABLE STATUS
instead of
SHOW TABLES. This provides more complete information, but is slower.

*

--user=user_name,
-u user_name

The MySQL username to use when connecting to the server.

COPYRIGHT

Copyright 2007 MySQL AB

This documentation is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; version 2 of the License.

This documentation is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with the program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA or see http://www.gnu.org/licenses/.

Please email
<docs@mysql.com>
for more information or if you are interested in doing a translation.

SEE ALSO

For more information, please refer to the MySQL Reference Manual,
which may already be installed locally and which is also available
online at http://dev.mysql.com/doc/.