A Collection of assorted Teradata Tools
tdtools is a collection of command-line tools and utilities to explore various Teradata related information that normallt would write custom SQL queries. Although these tools are primarily targeted towards Teradata power users and DBAs, casual users may find them useful.
NOTES:
Latest version of Python3 series is recommended, however Python 3.6 and above should work.
tdtools depends on tdtypes (for Teradata metadata information) and yappt (for formatting output). These packages and their dependencies will be downloaded and installed automatically if you use the standard python installer pip
to install tdtools.
Use Python's pip
utility to install tdtools
.
$ pip install -U tdtools
Or
C:\>python -m pip install -U tdtools
No configuration is required except setting up the needed ODBC connections. All tools (listed below) from this package rely on tdtypes
package for establishing connection to Teradata. Thus, the simplest way to invoke any tool is by supplying a valid ODBC
connection string to --tdconn
option. Look at tdtypes
documentation if more flexibility is needed; for example, using Teradata REST interface instead of ODBC.
All tools are command-line utilities that are generated automatically and installed (if installed using pip).
Following is a brief description of each tool. Use --help
command-line option to show detailed description of all supported options.
Command | Purpose |
---|---|
dbtree |
View Teradata database hierarchy. |
vwtree |
View (or save) Teradata View hierarchy. |
tptload |
Generate (and optionally run) TPT load script. |
helpstats |
View current statistics for any Teradata objects. |
tdrights |
View Teradata permissions on objects or to users. |
All show* utilities generate DDLs for different types of Teradata objects.
Command | Objects |
---|---|
showdb |
Database or user |
showgrant |
Grants to user/role |
showprof |
Profile |
showrole |
Role |
showstats |
Statistics definition |
showtvm |
Wrapper for Teradata SHOW <object> command |
showzone |
Zone |
All ls* utilities print Teradata object information from DBC tables. Currently supported commands are:
Command | Objects |
---|---|
lstb |
Tables |
lsvw |
Views |
lsmc |
Macros |
lspr |
Stored Procedures |
lsfn |
Functions |
lsji |
Join Indexes |
lsdb |
Databases |
lsus |
Users |
lspf |
Profiles |
If you encounter an issue, report it using issue tracker. I'll try to provide a fix as soon as I can. If you already have a fix, send me a pull request.
Feel free to fork this repository and enhance it in a way you see fit. If you feel your changes will benefit more people, send me a pull request.